mx31ads: Convert 1133-EV1 to use dev_name to specify consumer devices
Subsystems (3)
PATCH 1/3 mx31ads: Convert 1133-EV1 to use dev_name to specify consumer devices
This means we don't need to go running round working out struct devices at runtime.
--- arch/arm/mach-mx3/mx31ads.c | 14 ++------------ 1 files changed, 2 insertions(+), 12 deletions(-)
arch/arm/mach-mx3/mx31ads.c +2 -12
@@ -307,12 +307,8 @@ static struct regulator_init_data ldo1_data = { };static struct regulator_consumer_supply ldo2_consumers[] = { - { - .supply ="AVDD" , - }, - { - .supply ="HPVDD" , - }, + { .supply ="AVDD" , .dev_name ="1-001a" }, + { .supply ="HPVDD" , .dev_name ="1-001a" }, };/* CODEC and SIM */
@@ -382,8 +378,6 @@ static struct wm8350_audio_platform_data imx32ads_wm8350_setup = {static int mx31_wm8350_init (struct wm8350 *wm8350) { -int i; - wm8350_gpio_config(wm8350, 0, WM8350_GPIO_DIR_IN, WM8350_GPIO0_PWR_ON_IN, WM8350_GPIO_ACTIVE_LOW, WM8350_GPIO_PULL_UP, WM8350_GPIO_INVERT_OFF,
@@ -419,10 +413,6 @@ static int mx31_wm8350_init(struct wm8350 *wm8350)WM8350_GPIO_PULL_NONE ,WM8350_GPIO_INVERT_OFF , WM8350_GPIO_DEBOUNCE_OFF); -/* Fix up for our own supplies. */ -for (i =0 ; i <ARRAY_SIZE (ldo2_consumers); i++) - ldo2_consumers[i].dev = wm8350->dev; -wm8350_register_regulator (wm8350,WM8350_DCDC_1 , &sw1a_data);wm8350_register_regulator (wm8350,WM8350_DCDC_3 , &viohi_data);wm8350_register_regulator (wm8350,WM8350_DCDC_4 , &violo_data);
Signature · 1 line
1.6.5.7
PATCH 2/3 mx31ads: Allow enable/disable of switchable supplies
They will be automatically powered off at startup so users will need to enable them for use.
--- arch/arm/mach-mx3/mx31ads.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-)
arch/arm/mach-mx3/mx31ads.c +2 -0
@@ -302,6 +302,7 @@ static struct regulator_init_data ldo1_data = { .min_uV = 2800000, .max_uV = 2800000, .valid_modes_mask = REGULATOR_MODE_NORMAL, + .valid_ops_mask = REGULATOR_CHANGE_STATUS, .apply_uV = 1, }, };
@@ -318,6 +319,7 @@ static struct regulator_init_data ldo2_data = { .min_uV = 3300000, .max_uV = 3300000, .valid_modes_mask = REGULATOR_MODE_NORMAL, + .valid_ops_mask = REGULATOR_CHANGE_STATUS, .apply_uV = 1, }, .num_consumer_supplies = ARRAY_SIZE(ldo2_consumers),
Signature · 1 line
1.6.5.7
Sascha Hauer
maintainerPATCH 2/3 mx31ads: Allow enable/disable of switchable supplies
Quoted 2 lines · Mark Brown
They will be automatically powered off at startup so users will need to enable them for use.
Ok, scheduled for -next. Or do you wish to have this earlier?
Sascha
Quoted 30 lines
Signed-off-by Mark Brown <[email protected]>--- arch/arm/mach-mx3/mx31ads.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-)arch/arm/mach-mx3/mx31ads.c +2
-0@@ -302,6 +302,7 @@ static struct regulator_init_data ldo1_data = { .min_uV = 2800000, .max_uV = 2800000, .valid_modes_mask = REGULATOR_MODE_NORMAL, + .valid_ops_mask = REGULATOR_CHANGE_STATUS, .apply_uV = 1, }, };@@ -318,6 +319,7 @@ static struct regulator_init_data ldo2_data = { .min_uV = 3300000, .max_uV = 3300000, .valid_modes_mask = REGULATOR_MODE_NORMAL, + .valid_ops_mask = REGULATOR_CHANGE_STATUS, .apply_uV = 1, }, .num_consumer_supplies = ARRAY_SIZE(ldo2_consumers),Signature · 1 line
1.6.5.7
Signature · 4 lines
Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
PATCH 2/3 mx31ads: Allow enable/disable of switchable supplies
Quoted 5 lines · Sascha Hauer
Quoted 2 lines · Mark Brown
They will be automatically powered off at startup so users will need to enable them for use.
Ok, scheduled for -next. Or do you wish to have this earlier?
It'd be nice to have it earlier if possible.
Sascha Hauer
maintainerPATCH 2/3 mx31ads: Allow enable/disable of switchable supplies
Quoted 9 lines · Mark Brown
Quoted 5 lines · Sascha Hauer
Quoted 2 lines · Mark Brown
They will be automatically powered off at startup so users will need to enable them for use.
Ok, scheduled for -next. Or do you wish to have this earlier?
It'd be nice to have it earlier if possible.
ok.
Signature · 4 lines
Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
PATCH 3/3 mx31ads: Provide an IRQ range to the WM835x on the 1133-EV1 module
In reply to Mark BrownThe WM8350 core won't actually use the range yet, but it will in future and the platform data to configure it is there now.
--- arch/arm/mach-mx3/mx31ads.c | 1 + arch/arm/plat-mxc/include/mach/irqs.h | 7 +++++++ 2 files changed, 8 insertions(+), 0 deletions(-)
arch/arm/mach-mx3/mx31ads.c +1 -0
@@ -451,6 +451,7 @@ static int mx31_wm8350_init(struct wm8350 *wm8350)static struct wm8350_platform_data __initdata mx31_wm8350_pdata = { .init = mx31_wm8350_init, + .irq_base =MXC_BOARD_IRQ_START , };#endif
arch/arm/plat-mxc/include/mach/irqs.h +7 -0
@@ -37,7 +37,14 @@* within sensible limits. */ #define MXC_BOARD_IRQ_START (MXC_INTERNAL_IRQS + MXC_GPIO_IRQS) + +#if defined(CONFIG_MACH_MX31ADS_WM1133_EV1 ) && !defined(MXC_BOARD_IRQS ) +#define MXC_BOARD_IRQS 64 +#endif + +#ifndef MXC_BOARD_IRQS #define MXC_BOARD_IRQS 16 +#endif #define MXC_IPU_IRQ_START (MXC_BOARD_IRQ_START + MXC_BOARD_IRQS)
Signature · 1 line
1.6.5.7
PATCH 3/3 mx31ads: Provide an IRQ range to the WM835x on the 1133-EV1 module
Quoted 4 lines · Mark Brown
The WM8350 core won't actually use the range yet, but it will in future and the platform data to configure it is there now.
Signed-off-by Mark Brown <[email protected]>
Please don't apply this one, there's already an IRQ expander on the board. I'll send a revised patch later.
Sascha Hauer
maintainerPATCH 1/3 mx31ads: Convert 1133-EV1 to use dev_name to specify consumer devices
In reply to Mark BrownQuoted 2 lines · Mark Brown
This means we don't need to go running round working out struct devices at runtime.
Ok, scheduled for -next.
Sascha
Quoted 49 lines
Signed-off-by Mark Brown <[email protected]>--- arch/arm/mach-mx3/mx31ads.c | 14 ++------------ 1 files changed, 2 insertions(+), 12 deletions(-)arch/arm/mach-mx3/mx31ads.c +2
-12@@ -307,12 +307,8 @@ static struct regulator_init_data ldo1_data = { };static struct regulator_consumer_supply ldo2_consumers[] = { - { - .supply ="AVDD" , - }, - { - .supply ="HPVDD" , - }, + { .supply ="AVDD" , .dev_name ="1-001a" }, + { .supply ="HPVDD" , .dev_name ="1-001a" }, };/* CODEC and SIM */ @@ -382,8 +378,6 @@ static struct wm8350_audio_platform_data imx32ads_wm8350_setup = {static int mx31_wm8350_init (struct wm8350 *wm8350) { -int i; - wm8350_gpio_config(wm8350, 0, WM8350_GPIO_DIR_IN, WM8350_GPIO0_PWR_ON_IN, WM8350_GPIO_ACTIVE_LOW, WM8350_GPIO_PULL_UP, WM8350_GPIO_INVERT_OFF,@@ -419,10 +413,6 @@ static int mx31_wm8350_init(struct wm8350 *wm8350)WM8350_GPIO_PULL_NONE ,WM8350_GPIO_INVERT_OFF , WM8350_GPIO_DEBOUNCE_OFF); -/* Fix up for our own supplies. */ -for (i =0 ; i <ARRAY_SIZE (ldo2_consumers); i++) - ldo2_consumers[i].dev = wm8350->dev; -wm8350_register_regulator (wm8350,WM8350_DCDC_1 , &sw1a_data);wm8350_register_regulator (wm8350,WM8350_DCDC_3 , &viohi_data);wm8350_register_regulator (wm8350,WM8350_DCDC_4 , &violo_data);Signature · 1 line
1.6.5.7
Signature · 4 lines
Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |