public inbox for linux-omap@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] ARM: OMAP: HSMMC: General code cleanup and cosmetic fixes
@ 2008-04-16 15:32 Carlos Aguiar
  2008-04-18 18:39 ` Tony Lindgren
  0 siblings, 1 reply; 7+ messages in thread
From: Carlos Aguiar @ 2008-04-16 15:32 UTC (permalink / raw)
  To: Tony Lindgren; +Cc: linux-omap

From: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br>

This patch makes the following general code cleanup and cosmetic fixes:

- Use #include <linux/io.h> instead of <asm/io.h>, according to warning
reported by scripts/checkpatch.pl on arch/arm/mach-omap2/board-sdp-hsmmc.c

- Use if (power_on) instead of if (power_on == 1) and if (!power_on) instead
of if (power_on == 0).

- Use if (ret) instead of if (ret != 0).

- Add an extra-line to separate labels.

Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br>
Acked-by: Anderson Lizardo <anderson.lizardo@indt.org.br>
Acked-by: Eduardo Valentin <eduardo.valentin@indt.org.br>
---
 arch/arm/mach-omap2/board-sdp-hsmmc.c |   41 ++++++++++++++++-----------------
 1 files changed, 20 insertions(+), 21 deletions(-)

diff --git a/arch/arm/mach-omap2/board-sdp-hsmmc.c b/arch/arm/mach-omap2/board-sdp-hsmmc.c
index 3ae5b20..71b6a21 100644
--- a/arch/arm/mach-omap2/board-sdp-hsmmc.c
+++ b/arch/arm/mach-omap2/board-sdp-hsmmc.c
@@ -9,6 +9,7 @@
  * published by the Free Software Foundation.
  */
 #include <linux/err.h>
+#include <linux/io.h>
 #include <linux/module.h>
 #include <linux/platform_device.h>
 #include <linux/interrupt.h>
@@ -17,7 +18,6 @@
 #include <asm/hardware.h>
 #include <asm/arch/mmc.h>
 #include <asm/arch/board.h>
-#include <asm/io.h>
 
 #if defined(CONFIG_MMC_OMAP_HS) || defined(CONFIG_MMC_OMAP_HS_MODULE)
 
@@ -31,7 +31,7 @@
 #define TWL_GPIO_ISR1A		0x19
 #define LDO_CLR			0x00
 #define VSEL_S2_CLR		0x40
-#define GPIO_0_BIT_POS		1 << 0
+#define GPIO_0_BIT_POS		(1 << 0)
 #define MMC1_CD_IRQ		0
 #define MMC2_CD_IRQ		1
 
@@ -51,27 +51,27 @@ static int sdp_mmc_late_init(struct device *dev)
 	 * Configure TWL4030 GPIO parameters for MMC hotplug irq
 	 */
 	ret = twl4030_request_gpio(MMC1_CD_IRQ);
-	if (ret != 0)
+	if (ret)
 		goto err;
 
 	ret = twl4030_set_gpio_edge_ctrl(MMC1_CD_IRQ,
 			TWL4030_GPIO_EDGE_RISING | TWL4030_GPIO_EDGE_FALLING);
-	if (ret != 0)
+	if (ret)
 		goto err;
 
 	ret = twl4030_i2c_write_u8(TWL4030_MODULE_GPIO, 0x02,
 						TWL_GPIO_PUPDCTR1);
-	if (ret != 0)
+	if (ret)
 		goto err;
 
 	ret = twl4030_set_gpio_debounce(MMC1_CD_IRQ, TWL4030_GPIO_IS_ENABLE);
-	if (ret != 0)
+	if (ret)
 		goto err;
 
 	return ret;
+
 err:
 	dev_err(dev, "Failed to configure TWL4030 GPIO IRQ\n");
-
 	return ret;
 }
 
@@ -80,7 +80,7 @@ static void sdp_mmc_cleanup(struct device *dev)
 	int ret = 0;
 
 	ret = twl4030_free_gpio(MMC1_CD_IRQ);
-	if (ret != 0)
+	if (ret)
 		dev_err(dev, "Failed to configure TWL4030 GPIO IRQ\n");
 }
 
@@ -96,24 +96,25 @@ static int mask_cd_interrupt(int mask)
 	u8 reg = 0, ret = 0;
 
 	ret = twl4030_i2c_read_u8(TWL4030_MODULE_GPIO, &reg, TWL_GPIO_IMR1A);
-	if (ret != 0)
+	if (ret)
 		goto err;
 
 	reg = (mask == 1) ? (reg | GPIO_0_BIT_POS) : (reg & ~GPIO_0_BIT_POS);
 
 	ret = twl4030_i2c_write_u8(TWL4030_MODULE_GPIO, reg, TWL_GPIO_IMR1A);
-	if (ret != 0)
+	if (ret)
 		goto err;
 
 	ret = twl4030_i2c_read_u8(TWL4030_MODULE_GPIO, &reg, TWL_GPIO_ISR1A);
-	if (ret != 0)
+	if (ret)
 		goto err;
 
 	reg = (mask == 1) ? (reg | GPIO_0_BIT_POS) : (reg & ~GPIO_0_BIT_POS);
 
 	ret = twl4030_i2c_write_u8(TWL4030_MODULE_GPIO, reg, TWL_GPIO_ISR1A);
-	if (ret != 0)
+	if (ret)
 		goto err;
+
 err:
 	return ret;
 }
@@ -155,7 +156,7 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
 	#define OMAP2_CONTROL_PBIAS 0x48002520
 #endif
 
-	if (power_on == 1) {
+	if (power_on) {
 		if (cpu_is_omap24xx())
 			devconf = omap_readl(0x490022E8);
 		else
@@ -186,12 +187,12 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
 
 		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
 						P1_DEV_GRP, VMMC1_DEV_GRP);
-		if (ret != 0)
+		if (ret)
 			goto err;
 
 		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
 						vdd_sel, VMMC1_DEDICATED);
-		if (ret != 0)
+		if (ret)
 			goto err;
 
 		msleep(100);
@@ -202,7 +203,7 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
 
 		return ret;
 
-	} else if (power_on == 0) {
+	} else if (!power_on) {
 		/* Power OFF */
 
 		/* For MMC1, Toggle PBIAS before every power up sequence */
@@ -210,24 +211,22 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
 					OMAP2_CONTROL_PBIAS);
 		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
 						LDO_CLR, VMMC1_DEV_GRP);
-		if (ret != 0)
+		if (ret)
 			goto err;
 
 		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
 						VSEL_S2_CLR, VMMC1_DEDICATED);
-		if (ret != 0)
+		if (ret)
 			goto err;
 
 		/* 100ms delay required for PBIAS configuration */
 		msleep(100);
 		omap_writel(omap_readl(OMAP2_CONTROL_PBIAS) | 0x7,
 			OMAP2_CONTROL_PBIAS);
-	} else {
-		ret = -1;
-		goto err;
 	}
 
 	return 0;
+
 err:
 	return 1;
 }
-- 1.5.3.GIT


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH 1/2] ARM: OMAP: HSMMC: General code cleanup and cosmetic fixes
  2008-04-16 15:32 [PATCH 1/2] ARM: OMAP: HSMMC: General code cleanup and cosmetic fixes Carlos Aguiar
@ 2008-04-18 18:39 ` Tony Lindgren
  2008-04-18 19:43   ` Carlos Aguiar
                     ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Tony Lindgren @ 2008-04-18 18:39 UTC (permalink / raw)
  To: Carlos Aguiar; +Cc: linux-omap

* Carlos Aguiar <carlos.aguiar@indt.org.br> [080416 08:44]:
> From: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br>
> 
> This patch makes the following general code cleanup and cosmetic fixes:
> 
> - Use #include <linux/io.h> instead of <asm/io.h>, according to warning
> reported by scripts/checkpatch.pl on arch/arm/mach-omap2/board-sdp-hsmmc.c
> 
> - Use if (power_on) instead of if (power_on == 1) and if (!power_on) instead
> of if (power_on == 0).
> 
> - Use if (ret) instead of if (ret != 0).
> 
> - Add an extra-line to separate labels.
> 
> Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br>
> Acked-by: Anderson Lizardo <anderson.lizardo@indt.org.br>
> Acked-by: Eduardo Valentin <eduardo.valentin@indt.org.br>
> ---
>  arch/arm/mach-omap2/board-sdp-hsmmc.c |   41 ++++++++++++++++-----------------
>  1 files changed, 20 insertions(+), 21 deletions(-)
> 
> diff --git a/arch/arm/mach-omap2/board-sdp-hsmmc.c b/arch/arm/mach-omap2/board-sdp-hsmmc.c
> index 3ae5b20..71b6a21 100644
> --- a/arch/arm/mach-omap2/board-sdp-hsmmc.c
> +++ b/arch/arm/mach-omap2/board-sdp-hsmmc.c
> @@ -9,6 +9,7 @@
>   * published by the Free Software Foundation.
>   */
>  #include <linux/err.h>
> +#include <linux/io.h>
>  #include <linux/module.h>
>  #include <linux/platform_device.h>
>  #include <linux/interrupt.h>
> @@ -17,7 +18,6 @@
>  #include <asm/hardware.h>
>  #include <asm/arch/mmc.h>
>  #include <asm/arch/board.h>
> -#include <asm/io.h>
>  
>  #if defined(CONFIG_MMC_OMAP_HS) || defined(CONFIG_MMC_OMAP_HS_MODULE)
>  
> @@ -31,7 +31,7 @@
>  #define TWL_GPIO_ISR1A		0x19
>  #define LDO_CLR			0x00
>  #define VSEL_S2_CLR		0x40
> -#define GPIO_0_BIT_POS		1 << 0
> +#define GPIO_0_BIT_POS		(1 << 0)
>  #define MMC1_CD_IRQ		0
>  #define MMC2_CD_IRQ		1
>  
> @@ -51,27 +51,27 @@ static int sdp_mmc_late_init(struct device *dev)
>  	 * Configure TWL4030 GPIO parameters for MMC hotplug irq
>  	 */
>  	ret = twl4030_request_gpio(MMC1_CD_IRQ);
> -	if (ret != 0)
> +	if (ret)
>  		goto err;
>  
>  	ret = twl4030_set_gpio_edge_ctrl(MMC1_CD_IRQ,
>  			TWL4030_GPIO_EDGE_RISING | TWL4030_GPIO_EDGE_FALLING);
> -	if (ret != 0)
> +	if (ret)
>  		goto err;
>  
>  	ret = twl4030_i2c_write_u8(TWL4030_MODULE_GPIO, 0x02,
>  						TWL_GPIO_PUPDCTR1);
> -	if (ret != 0)
> +	if (ret)
>  		goto err;
>  
>  	ret = twl4030_set_gpio_debounce(MMC1_CD_IRQ, TWL4030_GPIO_IS_ENABLE);
> -	if (ret != 0)
> +	if (ret)
>  		goto err;
>  
>  	return ret;
> +
>  err:
>  	dev_err(dev, "Failed to configure TWL4030 GPIO IRQ\n");
> -
>  	return ret;
>  }
>  
> @@ -80,7 +80,7 @@ static void sdp_mmc_cleanup(struct device *dev)
>  	int ret = 0;
>  
>  	ret = twl4030_free_gpio(MMC1_CD_IRQ);
> -	if (ret != 0)
> +	if (ret)
>  		dev_err(dev, "Failed to configure TWL4030 GPIO IRQ\n");
>  }
>  
> @@ -96,24 +96,25 @@ static int mask_cd_interrupt(int mask)
>  	u8 reg = 0, ret = 0;
>  
>  	ret = twl4030_i2c_read_u8(TWL4030_MODULE_GPIO, &reg, TWL_GPIO_IMR1A);
> -	if (ret != 0)
> +	if (ret)
>  		goto err;
>  
>  	reg = (mask == 1) ? (reg | GPIO_0_BIT_POS) : (reg & ~GPIO_0_BIT_POS);
>  
>  	ret = twl4030_i2c_write_u8(TWL4030_MODULE_GPIO, reg, TWL_GPIO_IMR1A);
> -	if (ret != 0)
> +	if (ret)
>  		goto err;
>  
>  	ret = twl4030_i2c_read_u8(TWL4030_MODULE_GPIO, &reg, TWL_GPIO_ISR1A);
> -	if (ret != 0)
> +	if (ret)
>  		goto err;
>  
>  	reg = (mask == 1) ? (reg | GPIO_0_BIT_POS) : (reg & ~GPIO_0_BIT_POS);
>  
>  	ret = twl4030_i2c_write_u8(TWL4030_MODULE_GPIO, reg, TWL_GPIO_ISR1A);
> -	if (ret != 0)
> +	if (ret)
>  		goto err;
> +
>  err:
>  	return ret;
>  }
> @@ -155,7 +156,7 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
>  	#define OMAP2_CONTROL_PBIAS 0x48002520
>  #endif
>  
> -	if (power_on == 1) {
> +	if (power_on) {
>  		if (cpu_is_omap24xx())
>  			devconf = omap_readl(0x490022E8);
>  		else
> @@ -186,12 +187,12 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
>  
>  		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
>  						P1_DEV_GRP, VMMC1_DEV_GRP);
> -		if (ret != 0)
> +		if (ret)
>  			goto err;
>  
>  		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
>  						vdd_sel, VMMC1_DEDICATED);
> -		if (ret != 0)
> +		if (ret)
>  			goto err;
>  
>  		msleep(100);
> @@ -202,7 +203,7 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
>  
>  		return ret;
>  
> -	} else if (power_on == 0) {
> +	} else if (!power_on) {
>  		/* Power OFF */
>  
>  		/* For MMC1, Toggle PBIAS before every power up sequence */

I guess the above else if be just else with this patch?


> @@ -210,24 +211,22 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
>  					OMAP2_CONTROL_PBIAS);
>  		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
>  						LDO_CLR, VMMC1_DEV_GRP);
> -		if (ret != 0)
> +		if (ret)
>  			goto err;
>  
>  		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
>  						VSEL_S2_CLR, VMMC1_DEDICATED);
> -		if (ret != 0)
> +		if (ret)
>  			goto err;
>  
>  		/* 100ms delay required for PBIAS configuration */
>  		msleep(100);
>  		omap_writel(omap_readl(OMAP2_CONTROL_PBIAS) | 0x7,
>  			OMAP2_CONTROL_PBIAS);
> -	} else {
> -		ret = -1;
> -		goto err;
>  	}
>  
>  	return 0;
> +
>  err:
>  	return 1;
>  }
> -- 1.5.3.GIT
> 

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 1/2] ARM: OMAP: HSMMC: General code cleanup and cosmetic fixes
  2008-04-18 18:39 ` Tony Lindgren
@ 2008-04-18 19:43   ` Carlos Aguiar
  2008-04-18 20:29   ` Carlos Aguiar
  2008-04-18 20:29   ` [PATCH 2/2] ARM: OMAP: HSMMC: Use macros instead of some magic constants Carlos Aguiar
  2 siblings, 0 replies; 7+ messages in thread
From: Carlos Aguiar @ 2008-04-18 19:43 UTC (permalink / raw)
  To: ext Tony Lindgren; +Cc: linux-omap

ext Tony Lindgren wrote:
> * Carlos Aguiar <carlos.aguiar@indt.org.br> [080416 08:44]:
>   
>> From: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br>
>>
>> This patch makes the following general code cleanup and cosmetic fixes:
>>
>> - Use #include <linux/io.h> instead of <asm/io.h>, according to warning
>> reported by scripts/checkpatch.pl on arch/arm/mach-omap2/board-sdp-hsmmc.c
>>
>> - Use if (power_on) instead of if (power_on == 1) and if (!power_on) instead
>> of if (power_on == 0).
>>
>> - Use if (ret) instead of if (ret != 0).
>>
>> - Add an extra-line to separate labels.
>>
>> Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br>
>> Acked-by: Anderson Lizardo <anderson.lizardo@indt.org.br>
>> Acked-by: Eduardo Valentin <eduardo.valentin@indt.org.br>
>> ---
>>  arch/arm/mach-omap2/board-sdp-hsmmc.c |   41 ++++++++++++++++-----------------
>>  1 files changed, 20 insertions(+), 21 deletions(-)
>>
>> diff --git a/arch/arm/mach-omap2/board-sdp-hsmmc.c b/arch/arm/mach-omap2/board-sdp-hsmmc.c
>> index 3ae5b20..71b6a21 100644
>> --- a/arch/arm/mach-omap2/board-sdp-hsmmc.c
>> +++ b/arch/arm/mach-omap2/board-sdp-hsmmc.c
>> @@ -9,6 +9,7 @@
>>   * published by the Free Software Foundation.
>>   */
>>  #include <linux/err.h>
>> +#include <linux/io.h>
>>  #include <linux/module.h>
>>  #include <linux/platform_device.h>
>>  #include <linux/interrupt.h>
>> @@ -17,7 +18,6 @@
>>  #include <asm/hardware.h>
>>  #include <asm/arch/mmc.h>
>>  #include <asm/arch/board.h>
>> -#include <asm/io.h>
>>  
>>  #if defined(CONFIG_MMC_OMAP_HS) || defined(CONFIG_MMC_OMAP_HS_MODULE)
>>  
>> @@ -31,7 +31,7 @@
>>  #define TWL_GPIO_ISR1A		0x19
>>  #define LDO_CLR			0x00
>>  #define VSEL_S2_CLR		0x40
>> -#define GPIO_0_BIT_POS		1 << 0
>> +#define GPIO_0_BIT_POS		(1 << 0)
>>  #define MMC1_CD_IRQ		0
>>  #define MMC2_CD_IRQ		1
>>  
>> @@ -51,27 +51,27 @@ static int sdp_mmc_late_init(struct device *dev)
>>  	 * Configure TWL4030 GPIO parameters for MMC hotplug irq
>>  	 */
>>  	ret = twl4030_request_gpio(MMC1_CD_IRQ);
>> -	if (ret != 0)
>> +	if (ret)
>>  		goto err;
>>  
>>  	ret = twl4030_set_gpio_edge_ctrl(MMC1_CD_IRQ,
>>  			TWL4030_GPIO_EDGE_RISING | TWL4030_GPIO_EDGE_FALLING);
>> -	if (ret != 0)
>> +	if (ret)
>>  		goto err;
>>  
>>  	ret = twl4030_i2c_write_u8(TWL4030_MODULE_GPIO, 0x02,
>>  						TWL_GPIO_PUPDCTR1);
>> -	if (ret != 0)
>> +	if (ret)
>>  		goto err;
>>  
>>  	ret = twl4030_set_gpio_debounce(MMC1_CD_IRQ, TWL4030_GPIO_IS_ENABLE);
>> -	if (ret != 0)
>> +	if (ret)
>>  		goto err;
>>  
>>  	return ret;
>> +
>>  err:
>>  	dev_err(dev, "Failed to configure TWL4030 GPIO IRQ\n");
>> -
>>  	return ret;
>>  }
>>  
>> @@ -80,7 +80,7 @@ static void sdp_mmc_cleanup(struct device *dev)
>>  	int ret = 0;
>>  
>>  	ret = twl4030_free_gpio(MMC1_CD_IRQ);
>> -	if (ret != 0)
>> +	if (ret)
>>  		dev_err(dev, "Failed to configure TWL4030 GPIO IRQ\n");
>>  }
>>  
>> @@ -96,24 +96,25 @@ static int mask_cd_interrupt(int mask)
>>  	u8 reg = 0, ret = 0;
>>  
>>  	ret = twl4030_i2c_read_u8(TWL4030_MODULE_GPIO, &reg, TWL_GPIO_IMR1A);
>> -	if (ret != 0)
>> +	if (ret)
>>  		goto err;
>>  
>>  	reg = (mask == 1) ? (reg | GPIO_0_BIT_POS) : (reg & ~GPIO_0_BIT_POS);
>>  
>>  	ret = twl4030_i2c_write_u8(TWL4030_MODULE_GPIO, reg, TWL_GPIO_IMR1A);
>> -	if (ret != 0)
>> +	if (ret)
>>  		goto err;
>>  
>>  	ret = twl4030_i2c_read_u8(TWL4030_MODULE_GPIO, &reg, TWL_GPIO_ISR1A);
>> -	if (ret != 0)
>> +	if (ret)
>>  		goto err;
>>  
>>  	reg = (mask == 1) ? (reg | GPIO_0_BIT_POS) : (reg & ~GPIO_0_BIT_POS);
>>  
>>  	ret = twl4030_i2c_write_u8(TWL4030_MODULE_GPIO, reg, TWL_GPIO_ISR1A);
>> -	if (ret != 0)
>> +	if (ret)
>>  		goto err;
>> +
>>  err:
>>  	return ret;
>>  }
>> @@ -155,7 +156,7 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
>>  	#define OMAP2_CONTROL_PBIAS 0x48002520
>>  #endif
>>  
>> -	if (power_on == 1) {
>> +	if (power_on) {
>>  		if (cpu_is_omap24xx())
>>  			devconf = omap_readl(0x490022E8);
>>  		else
>> @@ -186,12 +187,12 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
>>  
>>  		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
>>  						P1_DEV_GRP, VMMC1_DEV_GRP);
>> -		if (ret != 0)
>> +		if (ret)
>>  			goto err;
>>  
>>  		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
>>  						vdd_sel, VMMC1_DEDICATED);
>> -		if (ret != 0)
>> +		if (ret)
>>  			goto err;
>>  
>>  		msleep(100);
>> @@ -202,7 +203,7 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
>>  
>>  		return ret;
>>  
>> -	} else if (power_on == 0) {
>> +	} else if (!power_on) {
>>  		/* Power OFF */
>>  
>>  		/* For MMC1, Toggle PBIAS before every power up sequence */
>>     
>
> I guess the above else if be just else with this patch?
>   

You're right! I'm just going to resending the patches with such correction.

Thanks Tony,

Carlos.
>
>   
>> @@ -210,24 +211,22 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
>>  					OMAP2_CONTROL_PBIAS);
>>  		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
>>  						LDO_CLR, VMMC1_DEV_GRP);
>> -		if (ret != 0)
>> +		if (ret)
>>  			goto err;
>>  
>>  		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
>>  						VSEL_S2_CLR, VMMC1_DEDICATED);
>> -		if (ret != 0)
>> +		if (ret)
>>  			goto err;
>>  
>>  		/* 100ms delay required for PBIAS configuration */
>>  		msleep(100);
>>  		omap_writel(omap_readl(OMAP2_CONTROL_PBIAS) | 0x7,
>>  			OMAP2_CONTROL_PBIAS);
>> -	} else {
>> -		ret = -1;
>> -		goto err;
>>  	}
>>  
>>  	return 0;
>> +
>>  err:
>>  	return 1;
>>  }
>> -- 1.5.3.GIT
>>
>>     
>
>   


-- 
Carlos Eduardo Aguiar
Nokia Institute of Technology - INdT
Open Source Mobile Research Center - OSMRC - Manaus
Core Team
Phone: +55 92 2126-1079
Mobile: +55 92 8127-1797
E-mail: carlos.aguiar@indt.org.br


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH 1/2] ARM: OMAP: HSMMC: General code cleanup and cosmetic fixes
  2008-04-18 18:39 ` Tony Lindgren
  2008-04-18 19:43   ` Carlos Aguiar
@ 2008-04-18 20:29   ` Carlos Aguiar
  2008-04-21 18:05     ` Tony Lindgren
  2008-04-18 20:29   ` [PATCH 2/2] ARM: OMAP: HSMMC: Use macros instead of some magic constants Carlos Aguiar
  2 siblings, 1 reply; 7+ messages in thread
From: Carlos Aguiar @ 2008-04-18 20:29 UTC (permalink / raw)
  To: ext Tony Lindgren; +Cc: linux-omap

From: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br>

This patch makes the following general code cleanup and cosmetic fixes:

- Use #include <linux/io.h> instead of <asm/io.h>, according to warning
reported by scripts/checkpatch.pl on arch/arm/mach-omap2/board-sdp-hsmmc.c

- Use if (power_on) instead of if (power_on == 1).

- Use if (ret) instead of if (ret != 0).

- Add an extra-line to separate labels.

Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br>
Acked-by: Anderson Lizardo <anderson.lizardo@indt.org.br>
Acked-by: Eduardo Valentin <eduardo.valentin@indt.org.br>
---
 arch/arm/mach-omap2/board-sdp-hsmmc.c |   41 ++++++++++++++++-----------------
 1 files changed, 20 insertions(+), 21 deletions(-)

diff --git a/arch/arm/mach-omap2/board-sdp-hsmmc.c b/arch/arm/mach-omap2/board-sdp-hsmmc.c
index 3ae5b20..355c1c0 100644
--- a/arch/arm/mach-omap2/board-sdp-hsmmc.c
+++ b/arch/arm/mach-omap2/board-sdp-hsmmc.c
@@ -9,6 +9,7 @@
  * published by the Free Software Foundation.
  */
 #include <linux/err.h>
+#include <linux/io.h>
 #include <linux/module.h>
 #include <linux/platform_device.h>
 #include <linux/interrupt.h>
@@ -17,7 +18,6 @@
 #include <asm/hardware.h>
 #include <asm/arch/mmc.h>
 #include <asm/arch/board.h>
-#include <asm/io.h>
 
 #if defined(CONFIG_MMC_OMAP_HS) || defined(CONFIG_MMC_OMAP_HS_MODULE)
 
@@ -31,7 +31,7 @@
 #define TWL_GPIO_ISR1A		0x19
 #define LDO_CLR			0x00
 #define VSEL_S2_CLR		0x40
-#define GPIO_0_BIT_POS		1 << 0
+#define GPIO_0_BIT_POS		(1 << 0)
 #define MMC1_CD_IRQ		0
 #define MMC2_CD_IRQ		1
 
@@ -51,27 +51,27 @@ static int sdp_mmc_late_init(struct device *dev)
 	 * Configure TWL4030 GPIO parameters for MMC hotplug irq
 	 */
 	ret = twl4030_request_gpio(MMC1_CD_IRQ);
-	if (ret != 0)
+	if (ret)
 		goto err;
 
 	ret = twl4030_set_gpio_edge_ctrl(MMC1_CD_IRQ,
 			TWL4030_GPIO_EDGE_RISING | TWL4030_GPIO_EDGE_FALLING);
-	if (ret != 0)
+	if (ret)
 		goto err;
 
 	ret = twl4030_i2c_write_u8(TWL4030_MODULE_GPIO, 0x02,
 						TWL_GPIO_PUPDCTR1);
-	if (ret != 0)
+	if (ret)
 		goto err;
 
 	ret = twl4030_set_gpio_debounce(MMC1_CD_IRQ, TWL4030_GPIO_IS_ENABLE);
-	if (ret != 0)
+	if (ret)
 		goto err;
 
 	return ret;
+
 err:
 	dev_err(dev, "Failed to configure TWL4030 GPIO IRQ\n");
-
 	return ret;
 }
 
@@ -80,7 +80,7 @@ static void sdp_mmc_cleanup(struct device *dev)
 	int ret = 0;
 
 	ret = twl4030_free_gpio(MMC1_CD_IRQ);
-	if (ret != 0)
+	if (ret)
 		dev_err(dev, "Failed to configure TWL4030 GPIO IRQ\n");
 }
 
@@ -96,24 +96,25 @@ static int mask_cd_interrupt(int mask)
 	u8 reg = 0, ret = 0;
 
 	ret = twl4030_i2c_read_u8(TWL4030_MODULE_GPIO, &reg, TWL_GPIO_IMR1A);
-	if (ret != 0)
+	if (ret)
 		goto err;
 
 	reg = (mask == 1) ? (reg | GPIO_0_BIT_POS) : (reg & ~GPIO_0_BIT_POS);
 
 	ret = twl4030_i2c_write_u8(TWL4030_MODULE_GPIO, reg, TWL_GPIO_IMR1A);
-	if (ret != 0)
+	if (ret)
 		goto err;
 
 	ret = twl4030_i2c_read_u8(TWL4030_MODULE_GPIO, &reg, TWL_GPIO_ISR1A);
-	if (ret != 0)
+	if (ret)
 		goto err;
 
 	reg = (mask == 1) ? (reg | GPIO_0_BIT_POS) : (reg & ~GPIO_0_BIT_POS);
 
 	ret = twl4030_i2c_write_u8(TWL4030_MODULE_GPIO, reg, TWL_GPIO_ISR1A);
-	if (ret != 0)
+	if (ret)
 		goto err;
+
 err:
 	return ret;
 }
@@ -155,7 +156,7 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
 	#define OMAP2_CONTROL_PBIAS 0x48002520
 #endif
 
-	if (power_on == 1) {
+	if (power_on) {
 		if (cpu_is_omap24xx())
 			devconf = omap_readl(0x490022E8);
 		else
@@ -186,12 +187,12 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
 
 		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
 						P1_DEV_GRP, VMMC1_DEV_GRP);
-		if (ret != 0)
+		if (ret)
 			goto err;
 
 		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
 						vdd_sel, VMMC1_DEDICATED);
-		if (ret != 0)
+		if (ret)
 			goto err;
 
 		msleep(100);
@@ -202,7 +203,7 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
 
 		return ret;
 
-	} else if (power_on == 0) {
+	} else {
 		/* Power OFF */
 
 		/* For MMC1, Toggle PBIAS before every power up sequence */
@@ -210,24 +211,22 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
 					OMAP2_CONTROL_PBIAS);
 		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
 						LDO_CLR, VMMC1_DEV_GRP);
-		if (ret != 0)
+		if (ret)
 			goto err;
 
 		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
 						VSEL_S2_CLR, VMMC1_DEDICATED);
-		if (ret != 0)
+		if (ret)
 			goto err;
 
 		/* 100ms delay required for PBIAS configuration */
 		msleep(100);
 		omap_writel(omap_readl(OMAP2_CONTROL_PBIAS) | 0x7,
 			OMAP2_CONTROL_PBIAS);
-	} else {
-		ret = -1;
-		goto err;
 	}
 
 	return 0;
+
 err:
 	return 1;
 }
-- 1.5.3.GIT


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 2/2] ARM: OMAP: HSMMC: Use macros instead of some magic constants.
  2008-04-18 18:39 ` Tony Lindgren
  2008-04-18 19:43   ` Carlos Aguiar
  2008-04-18 20:29   ` Carlos Aguiar
@ 2008-04-18 20:29   ` Carlos Aguiar
  2008-04-21 18:05     ` Tony Lindgren
  2 siblings, 1 reply; 7+ messages in thread
From: Carlos Aguiar @ 2008-04-18 20:29 UTC (permalink / raw)
  To: ext Tony Lindgren; +Cc: linux-omap

From: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br>

This patch makes arch/arm/mach-omap2/board-sdp-hsmmc.c file to use macros
instead of some magic constants.

Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br>
Signed-off-by: Francisco Alecrim <francisco.alecrim@indt.org.br>
Acked-by: Anderson Lizardo <anderson.lizardo@indt.org.br>
Acked-by: Eduardo Valentin <eduardo.valentin@indt.org.br>
---
 arch/arm/mach-omap2/board-sdp-hsmmc.c |   55 +++++++++++++++++++++++---------
 1 files changed, 39 insertions(+), 16 deletions(-)

diff --git a/arch/arm/mach-omap2/board-sdp-hsmmc.c b/arch/arm/mach-omap2/board-sdp-hsmmc.c
index 355c1c0..d21af87 100644
--- a/arch/arm/mach-omap2/board-sdp-hsmmc.c
+++ b/arch/arm/mach-omap2/board-sdp-hsmmc.c
@@ -35,6 +35,16 @@
 #define MMC1_CD_IRQ		0
 #define MMC2_CD_IRQ		1
 
+#define OMAP2_CONTROL_DEVCONF0	0x48002274
+#define OMAP2_CONTROL_DEVCONF1	0x490022E8
+
+#define OMAP2_CONTROL_DEVCONF0_LBCLK	(1 << 24)
+#define OMAP2_CONTROL_DEVCONF1_ACTOV	(1 << 31)
+
+#define OMAP2_CONTROL_PBIAS_VMODE	(1 << 0)
+#define OMAP2_CONTROL_PBIAS_PWRDNZ	(1 << 1)
+#define OMAP2_CONTROL_PBIAS_SCTRL	(1 << 2)
+
 static int sdp_mmc_card_detect(int irq)
 {
 	return twl4030_get_gpio_datain(irq - IH_TWL4030_GPIO_BASE);
@@ -158,32 +168,36 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
 
 	if (power_on) {
 		if (cpu_is_omap24xx())
-			devconf = omap_readl(0x490022E8);
+			devconf = omap_readl(OMAP2_CONTROL_DEVCONF1);
 		else
-			devconf = omap_readl(0x48002274);
+			devconf = omap_readl(OMAP2_CONTROL_DEVCONF0);
 
 		switch (1 << vdd) {
 		case MMC_VDD_33_34:
 		case MMC_VDD_32_33:
 			vdd_sel = VSEL_3V;
 			if (cpu_is_omap24xx())
-				devconf = (devconf | (1 << 31));
+				devconf |= OMAP2_CONTROL_DEVCONF1_ACTOV;
 			break;
 		case MMC_VDD_165_195:
 			vdd_sel = VSEL_18V;
 			if (cpu_is_omap24xx())
-				devconf = (devconf & ~(1 << 31));
+				devconf &= ~OMAP2_CONTROL_DEVCONF1_ACTOV;
 		}
 
 		if (cpu_is_omap24xx())
-			omap_writel(devconf, 0x490022E8);
+			omap_writel(devconf, OMAP2_CONTROL_DEVCONF1);
 		else
-			omap_writel(devconf | 1 << 24, 0x48002274);
+			omap_writel(devconf | OMAP2_CONTROL_DEVCONF0_LBCLK,
+				    OMAP2_CONTROL_DEVCONF0);
 
-		omap_writel(omap_readl(OMAP2_CONTROL_PBIAS) | 1 << 2,
-			OMAP2_CONTROL_PBIAS);
-		omap_writel(omap_readl(OMAP2_CONTROL_PBIAS) & ~(1 << 1),
-			OMAP2_CONTROL_PBIAS);
+		reg = omap_readl(OMAP2_CONTROL_PBIAS);
+		reg |= OMAP2_CONTROL_PBIAS_SCTRL;
+		omap_writel(reg, OMAP2_CONTROL_PBIAS);
+
+		reg = omap_readl(OMAP2_CONTROL_PBIAS);
+		reg &= ~OMAP2_CONTROL_PBIAS_PWRDNZ;
+		omap_writel(reg, OMAP2_CONTROL_PBIAS);
 
 		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
 						P1_DEV_GRP, VMMC1_DEV_GRP);
@@ -197,8 +211,12 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
 
 		msleep(100);
 		reg = omap_readl(OMAP2_CONTROL_PBIAS);
-		reg = (vdd_sel == VSEL_18V) ? ((reg | 0x6) & ~0x1)
-						: (reg | 0x7);
+		reg |= (OMAP2_CONTROL_PBIAS_SCTRL |
+			OMAP2_CONTROL_PBIAS_PWRDNZ);
+		if (vdd_sel == VSEL_18V)
+			reg &= ~OMAP2_CONTROL_PBIAS_VMODE;
+		else
+			reg |= OMAP2_CONTROL_PBIAS_VMODE;
 		omap_writel(reg, OMAP2_CONTROL_PBIAS);
 
 		return ret;
@@ -207,8 +225,10 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
 		/* Power OFF */
 
 		/* For MMC1, Toggle PBIAS before every power up sequence */
-		omap_writel(omap_readl(OMAP2_CONTROL_PBIAS) & ~(1 << 1),
-					OMAP2_CONTROL_PBIAS);
+		reg = omap_readl(OMAP2_CONTROL_PBIAS);
+		reg &= ~OMAP2_CONTROL_PBIAS_PWRDNZ;
+		omap_writel(reg, OMAP2_CONTROL_PBIAS);
+
 		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
 						LDO_CLR, VMMC1_DEV_GRP);
 		if (ret)
@@ -221,8 +241,11 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
 
 		/* 100ms delay required for PBIAS configuration */
 		msleep(100);
-		omap_writel(omap_readl(OMAP2_CONTROL_PBIAS) | 0x7,
-			OMAP2_CONTROL_PBIAS);
+		reg = omap_readl(OMAP2_CONTROL_PBIAS);
+		reg |= (OMAP2_CONTROL_PBIAS_VMODE |
+			OMAP2_CONTROL_PBIAS_PWRDNZ |
+			OMAP2_CONTROL_PBIAS_SCTRL);
+		omap_writel(reg, OMAP2_CONTROL_PBIAS);
 	}
 
 	return 0;
-- 1.5.3.GIT


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH 1/2] ARM: OMAP: HSMMC: General code cleanup and cosmetic fixes
  2008-04-18 20:29   ` Carlos Aguiar
@ 2008-04-21 18:05     ` Tony Lindgren
  0 siblings, 0 replies; 7+ messages in thread
From: Tony Lindgren @ 2008-04-21 18:05 UTC (permalink / raw)
  To: Carlos Aguiar; +Cc: linux-omap

* Carlos Aguiar <carlos.aguiar@indt.org.br> [080418 13:33]:
> From: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br>
> 
> This patch makes the following general code cleanup and cosmetic fixes:
> 
> - Use #include <linux/io.h> instead of <asm/io.h>, according to warning
> reported by scripts/checkpatch.pl on arch/arm/mach-omap2/board-sdp-hsmmc.c
> 
> - Use if (power_on) instead of if (power_on == 1).
> 
> - Use if (ret) instead of if (ret != 0).
> 
> - Add an extra-line to separate labels.

Pushing.

Tony


> Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br>
> Acked-by: Anderson Lizardo <anderson.lizardo@indt.org.br>
> Acked-by: Eduardo Valentin <eduardo.valentin@indt.org.br>
> ---
>  arch/arm/mach-omap2/board-sdp-hsmmc.c |   41 ++++++++++++++++-----------------
>  1 files changed, 20 insertions(+), 21 deletions(-)
> 
> diff --git a/arch/arm/mach-omap2/board-sdp-hsmmc.c b/arch/arm/mach-omap2/board-sdp-hsmmc.c
> index 3ae5b20..355c1c0 100644
> --- a/arch/arm/mach-omap2/board-sdp-hsmmc.c
> +++ b/arch/arm/mach-omap2/board-sdp-hsmmc.c
> @@ -9,6 +9,7 @@
>   * published by the Free Software Foundation.
>   */
>  #include <linux/err.h>
> +#include <linux/io.h>
>  #include <linux/module.h>
>  #include <linux/platform_device.h>
>  #include <linux/interrupt.h>
> @@ -17,7 +18,6 @@
>  #include <asm/hardware.h>
>  #include <asm/arch/mmc.h>
>  #include <asm/arch/board.h>
> -#include <asm/io.h>
>  
>  #if defined(CONFIG_MMC_OMAP_HS) || defined(CONFIG_MMC_OMAP_HS_MODULE)
>  
> @@ -31,7 +31,7 @@
>  #define TWL_GPIO_ISR1A		0x19
>  #define LDO_CLR			0x00
>  #define VSEL_S2_CLR		0x40
> -#define GPIO_0_BIT_POS		1 << 0
> +#define GPIO_0_BIT_POS		(1 << 0)
>  #define MMC1_CD_IRQ		0
>  #define MMC2_CD_IRQ		1
>  
> @@ -51,27 +51,27 @@ static int sdp_mmc_late_init(struct device *dev)
>  	 * Configure TWL4030 GPIO parameters for MMC hotplug irq
>  	 */
>  	ret = twl4030_request_gpio(MMC1_CD_IRQ);
> -	if (ret != 0)
> +	if (ret)
>  		goto err;
>  
>  	ret = twl4030_set_gpio_edge_ctrl(MMC1_CD_IRQ,
>  			TWL4030_GPIO_EDGE_RISING | TWL4030_GPIO_EDGE_FALLING);
> -	if (ret != 0)
> +	if (ret)
>  		goto err;
>  
>  	ret = twl4030_i2c_write_u8(TWL4030_MODULE_GPIO, 0x02,
>  						TWL_GPIO_PUPDCTR1);
> -	if (ret != 0)
> +	if (ret)
>  		goto err;
>  
>  	ret = twl4030_set_gpio_debounce(MMC1_CD_IRQ, TWL4030_GPIO_IS_ENABLE);
> -	if (ret != 0)
> +	if (ret)
>  		goto err;
>  
>  	return ret;
> +
>  err:
>  	dev_err(dev, "Failed to configure TWL4030 GPIO IRQ\n");
> -
>  	return ret;
>  }
>  
> @@ -80,7 +80,7 @@ static void sdp_mmc_cleanup(struct device *dev)
>  	int ret = 0;
>  
>  	ret = twl4030_free_gpio(MMC1_CD_IRQ);
> -	if (ret != 0)
> +	if (ret)
>  		dev_err(dev, "Failed to configure TWL4030 GPIO IRQ\n");
>  }
>  
> @@ -96,24 +96,25 @@ static int mask_cd_interrupt(int mask)
>  	u8 reg = 0, ret = 0;
>  
>  	ret = twl4030_i2c_read_u8(TWL4030_MODULE_GPIO, &reg, TWL_GPIO_IMR1A);
> -	if (ret != 0)
> +	if (ret)
>  		goto err;
>  
>  	reg = (mask == 1) ? (reg | GPIO_0_BIT_POS) : (reg & ~GPIO_0_BIT_POS);
>  
>  	ret = twl4030_i2c_write_u8(TWL4030_MODULE_GPIO, reg, TWL_GPIO_IMR1A);
> -	if (ret != 0)
> +	if (ret)
>  		goto err;
>  
>  	ret = twl4030_i2c_read_u8(TWL4030_MODULE_GPIO, &reg, TWL_GPIO_ISR1A);
> -	if (ret != 0)
> +	if (ret)
>  		goto err;
>  
>  	reg = (mask == 1) ? (reg | GPIO_0_BIT_POS) : (reg & ~GPIO_0_BIT_POS);
>  
>  	ret = twl4030_i2c_write_u8(TWL4030_MODULE_GPIO, reg, TWL_GPIO_ISR1A);
> -	if (ret != 0)
> +	if (ret)
>  		goto err;
> +
>  err:
>  	return ret;
>  }
> @@ -155,7 +156,7 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
>  	#define OMAP2_CONTROL_PBIAS 0x48002520
>  #endif
>  
> -	if (power_on == 1) {
> +	if (power_on) {
>  		if (cpu_is_omap24xx())
>  			devconf = omap_readl(0x490022E8);
>  		else
> @@ -186,12 +187,12 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
>  
>  		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
>  						P1_DEV_GRP, VMMC1_DEV_GRP);
> -		if (ret != 0)
> +		if (ret)
>  			goto err;
>  
>  		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
>  						vdd_sel, VMMC1_DEDICATED);
> -		if (ret != 0)
> +		if (ret)
>  			goto err;
>  
>  		msleep(100);
> @@ -202,7 +203,7 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
>  
>  		return ret;
>  
> -	} else if (power_on == 0) {
> +	} else {
>  		/* Power OFF */
>  
>  		/* For MMC1, Toggle PBIAS before every power up sequence */
> @@ -210,24 +211,22 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
>  					OMAP2_CONTROL_PBIAS);
>  		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
>  						LDO_CLR, VMMC1_DEV_GRP);
> -		if (ret != 0)
> +		if (ret)
>  			goto err;
>  
>  		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
>  						VSEL_S2_CLR, VMMC1_DEDICATED);
> -		if (ret != 0)
> +		if (ret)
>  			goto err;
>  
>  		/* 100ms delay required for PBIAS configuration */
>  		msleep(100);
>  		omap_writel(omap_readl(OMAP2_CONTROL_PBIAS) | 0x7,
>  			OMAP2_CONTROL_PBIAS);
> -	} else {
> -		ret = -1;
> -		goto err;
>  	}
>  
>  	return 0;
> +
>  err:
>  	return 1;
>  }
> -- 1.5.3.GIT
> 

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 2/2] ARM: OMAP: HSMMC: Use macros instead of some magic constants.
  2008-04-18 20:29   ` [PATCH 2/2] ARM: OMAP: HSMMC: Use macros instead of some magic constants Carlos Aguiar
@ 2008-04-21 18:05     ` Tony Lindgren
  0 siblings, 0 replies; 7+ messages in thread
From: Tony Lindgren @ 2008-04-21 18:05 UTC (permalink / raw)
  To: Carlos Aguiar; +Cc: linux-omap

* Carlos Aguiar <carlos.aguiar@indt.org.br> [080418 13:33]:
> From: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br>
> 
> This patch makes arch/arm/mach-omap2/board-sdp-hsmmc.c file to use macros
> instead of some magic constants.

Pushing.

Tony


> Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar@indt.org.br>
> Signed-off-by: Francisco Alecrim <francisco.alecrim@indt.org.br>
> Acked-by: Anderson Lizardo <anderson.lizardo@indt.org.br>
> Acked-by: Eduardo Valentin <eduardo.valentin@indt.org.br>
> ---
>  arch/arm/mach-omap2/board-sdp-hsmmc.c |   55 +++++++++++++++++++++++---------
>  1 files changed, 39 insertions(+), 16 deletions(-)
> 
> diff --git a/arch/arm/mach-omap2/board-sdp-hsmmc.c b/arch/arm/mach-omap2/board-sdp-hsmmc.c
> index 355c1c0..d21af87 100644
> --- a/arch/arm/mach-omap2/board-sdp-hsmmc.c
> +++ b/arch/arm/mach-omap2/board-sdp-hsmmc.c
> @@ -35,6 +35,16 @@
>  #define MMC1_CD_IRQ		0
>  #define MMC2_CD_IRQ		1
>  
> +#define OMAP2_CONTROL_DEVCONF0	0x48002274
> +#define OMAP2_CONTROL_DEVCONF1	0x490022E8
> +
> +#define OMAP2_CONTROL_DEVCONF0_LBCLK	(1 << 24)
> +#define OMAP2_CONTROL_DEVCONF1_ACTOV	(1 << 31)
> +
> +#define OMAP2_CONTROL_PBIAS_VMODE	(1 << 0)
> +#define OMAP2_CONTROL_PBIAS_PWRDNZ	(1 << 1)
> +#define OMAP2_CONTROL_PBIAS_SCTRL	(1 << 2)
> +
>  static int sdp_mmc_card_detect(int irq)
>  {
>  	return twl4030_get_gpio_datain(irq - IH_TWL4030_GPIO_BASE);
> @@ -158,32 +168,36 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
>  
>  	if (power_on) {
>  		if (cpu_is_omap24xx())
> -			devconf = omap_readl(0x490022E8);
> +			devconf = omap_readl(OMAP2_CONTROL_DEVCONF1);
>  		else
> -			devconf = omap_readl(0x48002274);
> +			devconf = omap_readl(OMAP2_CONTROL_DEVCONF0);
>  
>  		switch (1 << vdd) {
>  		case MMC_VDD_33_34:
>  		case MMC_VDD_32_33:
>  			vdd_sel = VSEL_3V;
>  			if (cpu_is_omap24xx())
> -				devconf = (devconf | (1 << 31));
> +				devconf |= OMAP2_CONTROL_DEVCONF1_ACTOV;
>  			break;
>  		case MMC_VDD_165_195:
>  			vdd_sel = VSEL_18V;
>  			if (cpu_is_omap24xx())
> -				devconf = (devconf & ~(1 << 31));
> +				devconf &= ~OMAP2_CONTROL_DEVCONF1_ACTOV;
>  		}
>  
>  		if (cpu_is_omap24xx())
> -			omap_writel(devconf, 0x490022E8);
> +			omap_writel(devconf, OMAP2_CONTROL_DEVCONF1);
>  		else
> -			omap_writel(devconf | 1 << 24, 0x48002274);
> +			omap_writel(devconf | OMAP2_CONTROL_DEVCONF0_LBCLK,
> +				    OMAP2_CONTROL_DEVCONF0);
>  
> -		omap_writel(omap_readl(OMAP2_CONTROL_PBIAS) | 1 << 2,
> -			OMAP2_CONTROL_PBIAS);
> -		omap_writel(omap_readl(OMAP2_CONTROL_PBIAS) & ~(1 << 1),
> -			OMAP2_CONTROL_PBIAS);
> +		reg = omap_readl(OMAP2_CONTROL_PBIAS);
> +		reg |= OMAP2_CONTROL_PBIAS_SCTRL;
> +		omap_writel(reg, OMAP2_CONTROL_PBIAS);
> +
> +		reg = omap_readl(OMAP2_CONTROL_PBIAS);
> +		reg &= ~OMAP2_CONTROL_PBIAS_PWRDNZ;
> +		omap_writel(reg, OMAP2_CONTROL_PBIAS);
>  
>  		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
>  						P1_DEV_GRP, VMMC1_DEV_GRP);
> @@ -197,8 +211,12 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
>  
>  		msleep(100);
>  		reg = omap_readl(OMAP2_CONTROL_PBIAS);
> -		reg = (vdd_sel == VSEL_18V) ? ((reg | 0x6) & ~0x1)
> -						: (reg | 0x7);
> +		reg |= (OMAP2_CONTROL_PBIAS_SCTRL |
> +			OMAP2_CONTROL_PBIAS_PWRDNZ);
> +		if (vdd_sel == VSEL_18V)
> +			reg &= ~OMAP2_CONTROL_PBIAS_VMODE;
> +		else
> +			reg |= OMAP2_CONTROL_PBIAS_VMODE;
>  		omap_writel(reg, OMAP2_CONTROL_PBIAS);
>  
>  		return ret;
> @@ -207,8 +225,10 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
>  		/* Power OFF */
>  
>  		/* For MMC1, Toggle PBIAS before every power up sequence */
> -		omap_writel(omap_readl(OMAP2_CONTROL_PBIAS) & ~(1 << 1),
> -					OMAP2_CONTROL_PBIAS);
> +		reg = omap_readl(OMAP2_CONTROL_PBIAS);
> +		reg &= ~OMAP2_CONTROL_PBIAS_PWRDNZ;
> +		omap_writel(reg, OMAP2_CONTROL_PBIAS);
> +
>  		ret = twl4030_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
>  						LDO_CLR, VMMC1_DEV_GRP);
>  		if (ret)
> @@ -221,8 +241,11 @@ static int sdp_mmc_set_power(struct device *dev, int slot, int power_on,
>  
>  		/* 100ms delay required for PBIAS configuration */
>  		msleep(100);
> -		omap_writel(omap_readl(OMAP2_CONTROL_PBIAS) | 0x7,
> -			OMAP2_CONTROL_PBIAS);
> +		reg = omap_readl(OMAP2_CONTROL_PBIAS);
> +		reg |= (OMAP2_CONTROL_PBIAS_VMODE |
> +			OMAP2_CONTROL_PBIAS_PWRDNZ |
> +			OMAP2_CONTROL_PBIAS_SCTRL);
> +		omap_writel(reg, OMAP2_CONTROL_PBIAS);
>  	}
>  
>  	return 0;
> -- 1.5.3.GIT
> 

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2008-04-21 18:06 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-04-16 15:32 [PATCH 1/2] ARM: OMAP: HSMMC: General code cleanup and cosmetic fixes Carlos Aguiar
2008-04-18 18:39 ` Tony Lindgren
2008-04-18 19:43   ` Carlos Aguiar
2008-04-18 20:29   ` Carlos Aguiar
2008-04-21 18:05     ` Tony Lindgren
2008-04-18 20:29   ` [PATCH 2/2] ARM: OMAP: HSMMC: Use macros instead of some magic constants Carlos Aguiar
2008-04-21 18:05     ` Tony Lindgren

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox