2009-01-06 20:35:16

by David Brownell

[permalink] [raw]
Subject: [patch 2.6.28-git] mfd: dm355 evm MMC/SD card detection

From: David Brownell <[email protected]>

Support card detect and writeprotect switches on DM355 EVM.

Signed-off-by: David Brownell <[email protected]>
Signed-off-by: Kevin Hilman <[email protected]>
---
I'd actually not intended that this driver merge until the
DM355 platform (and EVM board) support merged ... but since
it's in mainline already, best that it match the latest
code in the DaVinci tree (simplifies merge-with-mainline).

--- a/drivers/mfd/dm355evm_msp.c
+++ b/drivers/mfd/dm355evm_msp.c
@@ -107,6 +107,9 @@ static const u8 msp_gpios[] = {
MSP_GPIO(0, SWITCH1), MSP_GPIO(1, SWITCH1),
MSP_GPIO(2, SWITCH1), MSP_GPIO(3, SWITCH1),
MSP_GPIO(4, SWITCH1),
+ /* switches on MMC/SD sockets */
+ MSP_GPIO(1, SDMMC), MSP_GPIO(2, SDMMC), /* mmc0 WP, nCD */
+ MSP_GPIO(3, SDMMC), MSP_GPIO(4, SDMMC), /* mmc1 WP, nCD */
};

#define MSP_GPIO_REG(offset) (msp_gpios[(offset)] >> 3)
@@ -304,6 +307,13 @@ static int add_children(struct i2c_client *client)
gpio_export(gpio, false);
}

+ /* MMC/SD inputs -- right after the last config input */
+ if (client->dev.platform_data) {
+ void (*mmcsd_setup)(unsigned) = client->dev.platform_data;
+
+ mmcsd_setup(dm355evm_msp_gpio.base + 8 + 5);
+ }
+
/* RTC is a 32 bit counter, no alarm */
if (msp_has_rtc()) {
child = add_child(client, "rtc-dm355evm",


2009-01-09 01:02:25

by Samuel Ortiz

[permalink] [raw]
Subject: Re: [patch 2.6.28-git] mfd: dm355 evm MMC/SD card detection

On Tue, Jan 06, 2009 at 12:34:55PM -0800, David Brownell wrote:
> From: David Brownell <[email protected]>
>
> Support card detect and writeprotect switches on DM355 EVM.
>
> Signed-off-by: David Brownell <[email protected]>
> Signed-off-by: Kevin Hilman <[email protected]>
> ---
> I'd actually not intended that this driver merge until the
> DM355 platform (and EVM board) support merged ... but since
> it's in mainline already, best that it match the latest
> code in the DaVinci tree (simplifies merge-with-mainline).
Thanks David, patch applied.
I didnt understand you were not expecting the 1st patch to be merged already,
sorry about that.

Cheers,
Samuel.


> --- a/drivers/mfd/dm355evm_msp.c
> +++ b/drivers/mfd/dm355evm_msp.c
> @@ -107,6 +107,9 @@ static const u8 msp_gpios[] = {
> MSP_GPIO(0, SWITCH1), MSP_GPIO(1, SWITCH1),
> MSP_GPIO(2, SWITCH1), MSP_GPIO(3, SWITCH1),
> MSP_GPIO(4, SWITCH1),
> + /* switches on MMC/SD sockets */
> + MSP_GPIO(1, SDMMC), MSP_GPIO(2, SDMMC), /* mmc0 WP, nCD */
> + MSP_GPIO(3, SDMMC), MSP_GPIO(4, SDMMC), /* mmc1 WP, nCD */
> };
>
> #define MSP_GPIO_REG(offset) (msp_gpios[(offset)] >> 3)
> @@ -304,6 +307,13 @@ static int add_children(struct i2c_client *client)
> gpio_export(gpio, false);
> }
>
> + /* MMC/SD inputs -- right after the last config input */
> + if (client->dev.platform_data) {
> + void (*mmcsd_setup)(unsigned) = client->dev.platform_data;
> +
> + mmcsd_setup(dm355evm_msp_gpio.base + 8 + 5);
> + }
> +
> /* RTC is a 32 bit counter, no alarm */
> if (msp_has_rtc()) {
> child = add_child(client, "rtc-dm355evm",

--
Intel Open Source Technology Centre
http://oss.intel.com/