Skip to contentSkip to conversation

ARM: pxa: raumfeld: follow upcoming hardware change

PATCH New Daniel Mack 2 participants 8 messages May 24, 2011 – May 26, 2011

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH 1/2 ARM: pxa: raumfeld: follow upcoming hardware change

From: Sven Neumann <[email protected]>

The backlight control is going to change back to PWM in the upcoming Raumfeld Controller hardware revision.

---
 arch/arm/mach-pxa/raumfeld.c |   25 ++++++++++++++-----------
 1 files changed, 14 insertions(+), 11 deletions(-)
arch/arm/mach-pxa/raumfeld.c +14 -11
index 15bca98..b18b486 100644
@@ -574,10 +574,10 @@ static struct pxafb_mode_info sharp_lq043t3dx02_mode = {
 	.xres		= 480,
 	.yres		= 272,
 	.bpp		= 16,
-	.hsync_len	= 4,
+	.hsync_len	= 41,
 	.left_margin	= 2,
 	.right_margin	= 1,
-	.vsync_len	= 1,
+	.vsync_len	= 10,
 	.upper_margin	= 3,
 	.lower_margin	= 1,
 	.sync		= 0,
@@ -599,27 +599,30 @@ static void __init raumfeld_lcd_init(void)
 
 	pxa_set_fb_info(NULL, &raumfeld_sharp_lcd_info);
 
-	/* Earlier devices had the backlight regulator controlled
-	 * via PWM, later versions use another controller for that */
-	if ((system_rev & 0xff) < 2) {
-		mfp_cfg_t raumfeld_pwm_pin_config = GPIO17_PWM0_OUT;
-		pxa3xx_mfp_config(&raumfeld_pwm_pin_config, 1);
-		platform_device_register(&raumfeld_pwm_backlight_device);
-	} else
-		platform_device_register(&raumfeld_lt3593_device);
-
 	ret = gpio_request(GPIO_TFT_VA_EN, "display VA enable");
 	if (ret < 0)
 		pr_warning("Unable to request GPIO_TFT_VA_EN\n");
 	else
 		gpio_direction_output(GPIO_TFT_VA_EN, 1);
 
+	msleep(100);
+
 	ret = gpio_request(GPIO_DISPLAY_ENABLE, "display enable");
 	if (ret < 0)
 		pr_warning("Unable to request GPIO_DISPLAY_ENABLE\n");
 	else
 		gpio_direction_output(GPIO_DISPLAY_ENABLE, 1);
 
+	/* Hardware revision 2 has the backlight regulator controlled
+	 * by an LT3593, earlier and later devices use PWM for that. */
+	if ((system_rev & 0xff) == 2) {
+		platform_device_register(&raumfeld_lt3593_device);
+	} else {
+		mfp_cfg_t raumfeld_pwm_pin_config = GPIO17_PWM0_OUT;
+		pxa3xx_mfp_config(&raumfeld_pwm_pin_config, 1);
+		platform_device_register(&raumfeld_pwm_backlight_device);
+	}
+
 	platform_device_register(&pxa3xx_device_gcu);
 }
 
Signature · 1 line
1.7.5.1
#1 lore raw

PATCH 2/2 ARM: pxa: raumfeld: fix device name for codec ak4104

In commit f0fba2ad (ASoC: multi-component - ASoC Multi-Component Support), the name of the ak4104 codec driver was changed without amending the platform code which uses it as well.

---
 arch/arm/mach-pxa/raumfeld.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)
arch/arm/mach-pxa/raumfeld.c +4 -4
index b18b486..909f5df 100644
@@ -661,10 +661,10 @@ static struct lis3lv02d_platform_data lis3_pdata = {
 
 #define SPI_AK4104	\
 {			\
-	.modalias	= "ak4104",	\
-	.max_speed_hz	= 10000,	\
-	.bus_num	= 0,		\
-	.chip_select	= 0,		\
+	.modalias	= "ak4104-codec",	\
+	.max_speed_hz	= 10000,		\
+	.bus_num	= 0,			\
+	.chip_select	= 0,			\
 	.controller_data = (void *) GPIO_SPDIF_CS,	\
 }
 
Signature · 1 line
1.7.5.1
#2 lore raw

PATCH 1/2 ARM: pxa: raumfeld: follow upcoming hardware change

In reply to Daniel Mack
Quoted 2 lines · Daniel Mack

The backlight control is going to change back to PWM in the upcoming Raumfeld Controller hardware revision.

The commit comments doesn't say why the LCD timings have changed:

Quoted 13 lines
arch/arm/mach-pxa/raumfeld.c +2 -2
@@ -574,10 +574,10 @@ static struct pxafb_mode_info sharp_lq043t3dx02_mode = {
 	.xres		= 480,
 	.yres		= 272,
 	.bpp		= 16,
-	.hsync_len	= 4,
+	.hsync_len	= 41,
 	.left_margin	= 2,
 	.right_margin	= 1,
-	.vsync_len	= 1,
+	.vsync_len	= 10,
 	.upper_margin	= 3,
 	.lower_margin	= 1,
 	.sync		= 0,
#3 lore raw

PATCH 1/2 ARM: pxa: raumfeld: follow upcoming hardware change

Quoted 5 lines · Russell King - ARM Linux
Quoted 2 lines · Daniel Mack

The backlight control is going to change back to PWM in the upcoming Raumfeld Controller hardware revision.

The commit comments doesn't say why the LCD timings have changed:

Oh, yes. Seem something went wrong in the rebase process. I'll fix this and resubmit.

Thanks,
Daniel

#4 lore raw

PATCH 1/3 ARM: pxa: raumfeld: adapt to upcoming hardware change

From: Sven Neumann <[email protected]>

The backlight control is going to change back to PWM in the upcoming Raumfeld Controller hardware revision.

---
 arch/arm/mach-pxa/raumfeld.c |   11 ++++++-----
 1 files changed, 6 insertions(+), 5 deletions(-)
arch/arm/mach-pxa/raumfeld.c +6 -5
index 15bca98..8b2ace5 100644
@@ -599,14 +599,15 @@ static void __init raumfeld_lcd_init(void)
 
 	pxa_set_fb_info(NULL, &raumfeld_sharp_lcd_info);
 
-	/* Earlier devices had the backlight regulator controlled
-	 * via PWM, later versions use another controller for that */
-	if ((system_rev & 0xff) < 2) {
+	/* Hardware revision 2 has the backlight regulator controlled
+	 * by an LT3593, earlier and later devices use PWM for that. */
+	if ((system_rev & 0xff) == 2) {
+		platform_device_register(&raumfeld_lt3593_device);
+	} else {
 		mfp_cfg_t raumfeld_pwm_pin_config = GPIO17_PWM0_OUT;
 		pxa3xx_mfp_config(&raumfeld_pwm_pin_config, 1);
 		platform_device_register(&raumfeld_pwm_backlight_device);
-	} else
-		platform_device_register(&raumfeld_lt3593_device);
+	}
 
 	ret = gpio_request(GPIO_TFT_VA_EN, "display VA enable");
 	if (ret < 0)
Signature · 1 line
1.7.5.1
#5 lore raw

PATCH 1/3 ARM: pxa: raumfeld: adapt to upcoming hardware change

Hi Eric,

In case there aren't any objections, can you queue up these three patches?

It doesn't matter whether they make it into the next release, I just to make sure they're not forgotten.

Thanks,
Daniel

Quoted 45 lines · Daniel Mack

From: Sven Neumann <[email protected]>

The backlight control is going to change back to PWM in the upcoming Raumfeld Controller hardware revision.

---
?arch/arm/mach-pxa/raumfeld.c | ? 11 ++++++-----
?1 files changed, 6 insertions(+), 5 deletions(-)

arch/arm/mach-pxa/raumfeld.c +6 -6
index 15bca98..8b2ace5 100644
@@ -599,14 +599,15 @@ static void __init raumfeld_lcd_init(void)
 
 ? ? ? ?pxa_set_fb_info(NULL, &raumfeld_sharp_lcd_info);
 
- ? ? ? /* Earlier devices had the backlight regulator controlled
- ? ? ? ?* via PWM, later versions use another controller for that */
- ? ? ? if ((system_rev & 0xff) < 2) {
+ ? ? ? /* Hardware revision 2 has the backlight regulator controlled
+ ? ? ? ?* by an LT3593, earlier and later devices use PWM for that. */
+ ? ? ? if ((system_rev & 0xff) == 2) {
+ ? ? ? ? ? ? ? platform_device_register(&raumfeld_lt3593_device);
+ ? ? ? } else {
 ? ? ? ? ? ? ? ?mfp_cfg_t raumfeld_pwm_pin_config = GPIO17_PWM0_OUT;
 ? ? ? ? ? ? ? ?pxa3xx_mfp_config(&raumfeld_pwm_pin_config, 1);
 ? ? ? ? ? ? ? ?platform_device_register(&raumfeld_pwm_backlight_device);
- ? ? ? } else
- ? ? ? ? ? ? ? platform_device_register(&raumfeld_lt3593_device);
+ ? ? ? }
 
 ? ? ? ?ret = gpio_request(GPIO_TFT_VA_EN, "display VA enable");
 ? ? ? ?if (ret < 0)
--

1.7.5.1

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel at lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

#6 lore raw

PATCH 2/3 ARM: pxa: raumfeld: display initialisation fixes

In reply to Daniel Mack

From: Sven Neumann <[email protected]>

The display requires some milliseconds between GPIO_TFT_VA_EN and GPIO_DISPLAY_ENABLE. Reorder initialisation to comply with the display spec.

Also tune timings for better compliance with the spec.

---
 arch/arm/mach-pxa/raumfeld.c |   29 +++++++++++++++--------------
 1 files changed, 15 insertions(+), 14 deletions(-)
arch/arm/mach-pxa/raumfeld.c +15 -14
index 8b2ace5..cdec616 100644
@@ -574,10 +574,10 @@ static struct pxafb_mode_info sharp_lq043t3dx02_mode = {
 	.xres		= 480,
 	.yres		= 272,
 	.bpp		= 16,
-	.hsync_len	= 4,
+	.hsync_len	= 41,
 	.left_margin	= 2,
 	.right_margin	= 1,
-	.vsync_len	= 1,
+	.vsync_len	= 10,
 	.upper_margin	= 3,
 	.lower_margin	= 1,
 	.sync		= 0,
@@ -597,30 +597,31 @@ static void __init raumfeld_lcd_init(void)
 {
 	int ret;
 
-	pxa_set_fb_info(NULL, &raumfeld_sharp_lcd_info);
-
-	/* Hardware revision 2 has the backlight regulator controlled
-	 * by an LT3593, earlier and later devices use PWM for that. */
-	if ((system_rev & 0xff) == 2) {
-		platform_device_register(&raumfeld_lt3593_device);
-	} else {
-		mfp_cfg_t raumfeld_pwm_pin_config = GPIO17_PWM0_OUT;
-		pxa3xx_mfp_config(&raumfeld_pwm_pin_config, 1);
-		platform_device_register(&raumfeld_pwm_backlight_device);
-	}
-
 	ret = gpio_request(GPIO_TFT_VA_EN, "display VA enable");
 	if (ret < 0)
 		pr_warning("Unable to request GPIO_TFT_VA_EN\n");
 	else
 		gpio_direction_output(GPIO_TFT_VA_EN, 1);
 
+	msleep(100);
+
 	ret = gpio_request(GPIO_DISPLAY_ENABLE, "display enable");
 	if (ret < 0)
 		pr_warning("Unable to request GPIO_DISPLAY_ENABLE\n");
 	else
 		gpio_direction_output(GPIO_DISPLAY_ENABLE, 1);
 
+	/* Hardware revision 2 has the backlight regulator controlled
+	 * by an LT3593, earlier and later devices use PWM for that. */
+	if ((system_rev & 0xff) == 2) {
+		platform_device_register(&raumfeld_lt3593_device);
+	} else {
+		mfp_cfg_t raumfeld_pwm_pin_config = GPIO17_PWM0_OUT;
+		pxa3xx_mfp_config(&raumfeld_pwm_pin_config, 1);
+		platform_device_register(&raumfeld_pwm_backlight_device);
+	}
+
+	pxa_set_fb_info(NULL, &raumfeld_sharp_lcd_info);
 	platform_device_register(&pxa3xx_device_gcu);
 }
 
Signature · 1 line
1.7.5.1
#7 lore raw

PATCH 3/3 ARM: pxa: raumfeld: fix device name for codec ak4104

In reply to Daniel Mack

In commit f0fba2ad (ASoC: multi-component - ASoC Multi-Component Support), the name of the ak4104 codec driver was changed without amending the platform code which uses it as well.

---
 arch/arm/mach-pxa/raumfeld.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)
arch/arm/mach-pxa/raumfeld.c +4 -4
index cdec616..c17883b 100644
@@ -660,10 +660,10 @@ static struct lis3lv02d_platform_data lis3_pdata = {
 
 #define SPI_AK4104	\
 {			\
-	.modalias	= "ak4104",	\
-	.max_speed_hz	= 10000,	\
-	.bus_num	= 0,		\
-	.chip_select	= 0,		\
+	.modalias	= "ak4104-codec",	\
+	.max_speed_hz	= 10000,		\
+	.bus_num	= 0,			\
+	.chip_select	= 0,			\
 	.controller_data = (void *) GPIO_SPDIF_CS,	\
 }
 
Signature · 1 line
1.7.5.1