diff options
author | Mian Yousaf Kaukab <mian.yousaf.kaukab@stericsson.com> | 2012-01-27 11:35:41 +0100 |
---|---|---|
committer | Lee Jones <lee.jones@linaro.org> | 2013-02-04 08:31:46 +0000 |
commit | 1d843a6c8c2067615fea0ff8cb62d4a5c4a6f8ae (patch) | |
tree | 1675f7b8f36d8703cac6086d49b81ab9cfc542f6 /drivers/mfd | |
parent | 42002c6de9ee1916a118d6a732c533bfe138ed6f (diff) | |
download | blackbird-op-linux-1d843a6c8c2067615fea0ff8cb62d4a5c4a6f8ae.tar.gz blackbird-op-linux-1d843a6c8c2067615fea0ff8cb62d4a5c4a6f8ae.zip |
mfd: ab8500-core: Allow the possibility to dump all AB8500 registers
Implement an API so that a user may dump all AB8500 registers
via debugfs file access.
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Mian Yousaf Kaukab <mian.yousaf.kaukab@stericsson.com>
Reviewed-by: Linus WALLEIJ <linus.walleij@stericsson.com>
Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com>
Diffstat (limited to 'drivers/mfd')
-rw-r--r-- | drivers/mfd/ab8500-core.c | 1 | ||||
-rw-r--r-- | drivers/mfd/ab8500-debugfs.c | 13 |
2 files changed, 14 insertions, 0 deletions
diff --git a/drivers/mfd/ab8500-core.c b/drivers/mfd/ab8500-core.c index e1650badd106..d228697f5d9b 100644 --- a/drivers/mfd/ab8500-core.c +++ b/drivers/mfd/ab8500-core.c @@ -319,6 +319,7 @@ static struct abx500_ops ab8500_ops = { .mask_and_set_register = ab8500_mask_and_set_register, .event_registers_startup_state_get = NULL, .startup_irq_enabled = NULL, + .dump_all_banks = ab8500_dump_all_banks, }; static void ab8500_irq_lock(struct irq_data *data) diff --git a/drivers/mfd/ab8500-debugfs.c b/drivers/mfd/ab8500-debugfs.c index cd3cee814fb7..af6f774e658a 100644 --- a/drivers/mfd/ab8500-debugfs.c +++ b/drivers/mfd/ab8500-debugfs.c @@ -581,6 +581,19 @@ static int ab8500_print_all_banks(struct seq_file *s, void *p) return 0; } +/* Dump registers to kernel log */ +void ab8500_dump_all_banks(struct device *dev) +{ + unsigned int i; + + printk(KERN_INFO"ab8500 register values:\n"); + + for (i = 1; i < AB8500_NUM_BANKS; i++) { + printk(KERN_INFO" bank %u:\n", i); + ab8500_registers_print(dev, i, NULL); + } +} + static int ab8500_all_banks_open(struct inode *inode, struct file *file) { struct seq_file *s; |