diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2014-11-12 08:18:00 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2014-11-20 14:57:18 +0100 |
commit | a56dcaa9d4bfe8e3e9e38ee153e488266d8bffaa (patch) | |
tree | bca5f4b05cdd2670472cd2c91b42631c40fd19af /arch | |
parent | f1b3619759c457f0323e999d0aa7874c2887d172 (diff) | |
download | barebox-a56dcaa9d4bfe8e3e9e38ee153e488266d8bffaa.tar.gz barebox-a56dcaa9d4bfe8e3e9e38ee153e488266d8bffaa.tar.xz |
ARM: i.MX51 efikasb: register init callback for PMIC init
So that the PMIC initialisation is called once it's available.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/boards/efika-mx-smartbook/board.c | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/arch/arm/boards/efika-mx-smartbook/board.c b/arch/arm/boards/efika-mx-smartbook/board.c index 02fce4b1c0..99efd666f9 100644 --- a/arch/arm/boards/efika-mx-smartbook/board.c +++ b/arch/arm/boards/efika-mx-smartbook/board.c @@ -64,16 +64,9 @@ static inline int machine_is_efikasb(void) return 1; } -static int efikamx_power_init(void) +static void efikamx_power_init(struct mc13xxx *mc) { unsigned int val; - struct mc13xxx *mc; - - mc = mc13xxx_get(); - if (!mc) { - printf("could not get mc13892\n"); - return -ENODEV; - } /* Write needed to Power Gate 2 register */ mc13xxx_reg_read(mc, MC13892_REG_POWER_MISC, &val); @@ -178,8 +171,6 @@ static int efikamx_power_init(void) mc13xxx_reg_write(mc, MC13892_REG_POWER_CTL2, val); udelay(2500); - - return 0; } static int efikamx_usb_init(void) @@ -189,6 +180,8 @@ static int efikamx_usb_init(void) barebox_set_hostname("efikasb"); + mc13xxx_register_init_callback(efikamx_power_init); + gpio_direction_output(GPIO_BLUETOOTH, 0); gpio_direction_output(GPIO_WIFI_ENABLE, 1); gpio_direction_output(GPIO_WIFI_RESET, 0); @@ -246,8 +239,6 @@ static int efikamx_late_init(void) if (!of_machine_is_compatible("genesi,imx51-sb")) return 0; - efikamx_power_init(); - defaultenv_append_directory(defaultenv_efikasb); gpio_direction_output(GPIO_BACKLIGHT_POWER, 1); |