Hi Rajeshwari,
On Mon, Dec 3, 2012 at 4:12 AM, Rajeshwari Shinde
rajeshwar...@samsung.com wrote:
This patch adds fdt support to MAX77686.
Signed-off-by: Rajeshwari Shinde rajeshwar...@samsung.com
---
drivers/misc/pmic_max77686.c | 34 +-
1 files changed, 29 insertions(+), 5 deletions(-)
diff --git a/drivers/misc/pmic_max77686.c b/drivers/misc/pmic_max77686.c
index 36f7f4d..113d038 100644
--- a/drivers/misc/pmic_max77686.c
+++ b/drivers/misc/pmic_max77686.c
@@ -22,21 +22,45 @@
*/
#include common.h
+#include fdtdec.h
+#include i2c.h
#include pmic.h
#include max77686_pmic.h
+DECLARE_GLOBAL_DATA_PTR;
+
int pmic_init(void)
{
struct pmic *p = get_pmic();
static const char name[] = MAX77686_PMIC;
- puts(Board PMIC init\n);
+ #ifdef CONFIG_OF_CONTROL
Should outdent this I think.
+ const void *blob = gd-fdt_blob;
+ int node, parent;
+
+ node = fdtdec_next_compatible(blob, 0, COMPAT_MAXIM_MAX77686_PMIC);
+if (node = 0) {
0 is enough I think, although it isn't very important.
+debug(EXYNOS_SOUND: No node for codec in device tree\n);
+debug(node = %d\n, node);
+return -1;
+}
+ parent = fdt_parent_offset(blob, node);
+if (parent 0) {
+debug(%s: Cannot find node parent\n, __func__);
+return -1;
+}
+ p-bus = i2c_get_bus_num_fdt(parent);
+ p-hw.i2c.addr = fdtdec_get_int(blob, node,
+ reg, 0);
Could join on to previous line
+ #else
outdent, and #endif below
+ p-bus = I2C_PMIC;
+ p-hw.i2c.addr = MAX77686_I2C_ADDR;
+ #endif
+
p-name = name;
+ p-hw.i2c.tx_num = 1;
p-interface = PMIC_I2C;
p-number_of_regs = PMIC_NUM_OF_REGS;
- p-hw.i2c.addr = MAX77686_I2C_ADDR;
- p-hw.i2c.tx_num = 1;
- p-bus = I2C_PMIC;
-
+ puts(Board PMIC init MAX77686\n);
return 0;
}
--
1.7.4.4
I suggest if you don't already that you use patman to create patches.
Regards,
Simon
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot