Skip to contentSkip to conversation

ARM: SAMSUNG: move the mmc platdata header file to linux/mmc/

PATCH Superseded Jaehoon Chung 3 participants 3 messages Feb 14, 2012 – Feb 16, 2012

Subsystems (4)

v1 of 3 Superseded Latest is v3 →

lore
Share & tools
lore
#0 lore raw

PATCH 4/4 ARM: SAMSUNG: move the mmc platdata header file to linux/mmc/

---
 arch/arm/plat-samsung/include/plat/sdhci.h |   59 +-------------------
 include/linux/mmc/sdhci-s3c.h              |   84 ++++++++++++++++++++++++++++
 2 files changed, 85 insertions(+), 58 deletions(-)
 create mode 100644 include/linux/mmc/sdhci-s3c.h
arch/arm/plat-samsung/include/plat/sdhci.h +1 -58
index f82f888..ffefb9b 100644
@@ -18,64 +18,7 @@
 #ifndef __PLAT_S3C_SDHCI_H
 #define __PLAT_S3C_SDHCI_H __FILE__
 
-struct platform_device;
-struct mmc_host;
-struct mmc_card;
-struct mmc_ios;
-
-enum cd_types {
-	S3C_SDHCI_CD_INTERNAL,	/* use mmc internal CD line */
-	S3C_SDHCI_CD_EXTERNAL,	/* use external callback */
-	S3C_SDHCI_CD_GPIO,	/* use external gpio pin for CD line */
-	S3C_SDHCI_CD_NONE,	/* no CD line, use polling to detect card */
-	S3C_SDHCI_CD_PERMANENT,	/* no CD line, card permanently wired to host */
-};
-
-enum clk_types {
-	S3C_SDHCI_CLK_DIV_INTERNAL,	/* use mmc internal clock divider */
-	S3C_SDHCI_CLK_DIV_EXTERNAL,	/* use external clock divider */
-};
-
-/**
- * struct s3c_sdhci_platdata() - Platform device data for Samsung SDHCI
- * @max_width: The maximum number of data bits supported.
- * @host_caps: Standard MMC host capabilities bit field.
- * @cd_type: Type of Card Detection method (see cd_types enum above)
- * @clk_type: Type of clock divider method (see clk_types enum above)
- * @ext_cd_init: Initialize external card detect subsystem. Called on
- *		 sdhci-s3c driver probe when cd_type == S3C_SDHCI_CD_EXTERNAL.
- *		 notify_func argument is a callback to the sdhci-s3c driver
- *		 that triggers the card detection event. Callback arguments:
- *		 dev is pointer to platform device of the host controller,
- *		 state is new state of the card (0 - removed, 1 - inserted).
- * @ext_cd_cleanup: Cleanup external card detect subsystem. Called on
- *		 sdhci-s3c driver remove when cd_type == S3C_SDHCI_CD_EXTERNAL.
- *		 notify_func argument is the same callback as for ext_cd_init.
- * @ext_cd_gpio: gpio pin used for external CD line, valid only if
- *		 cd_type == S3C_SDHCI_CD_GPIO
- * @ext_cd_gpio_invert: invert values for external CD gpio line
- * @cfg_gpio: Configure the GPIO for a specific card bit-width
- *
- * Initialisation data specific to either the machine or the platform
- * for the device driver to use or call-back when configuring gpio or
- * card speed information.
-*/
-struct s3c_sdhci_platdata {
-	unsigned int	max_width;
-	unsigned int	host_caps;
-	unsigned int	pm_caps;
-	enum cd_types	cd_type;
-	enum clk_types	clk_type;
-
-	int		ext_cd_gpio;
-	bool		ext_cd_gpio_invert;
-	int	(*ext_cd_init)(void (*notify_func)(struct platform_device *,
-						   int state));
-	int	(*ext_cd_cleanup)(void (*notify_func)(struct platform_device *,
-						      int state));
-
-	void	(*cfg_gpio)(struct platform_device *dev, int width);
-};
+#include <linux/mmc/sdhci-s3c.h>
 
 /* s3c_sdhci_set_platdata() - common helper for setting SDHCI platform data
  * @pd: The default platform data for this device.
include/linux/mmc/sdhci-s3c.h new file +84 -0

84 lines not on this page · raw message

#1 lore raw
Quoted 9 lines · Jaehoon Chung
---
  arch/arm/plat-samsung/include/plat/sdhci.h |   59 +-------------------
  include/linux/mmc/sdhci-s3c.h              |   84 ++++++++++++++++++++++++++++
  2 files changed, 85 insertions(+), 58 deletions(-)

create mode 100644 include/linux/mmc/sdhci-s3c.h

Hi,

I don't agree with this.
Basically, the components(struct s3c_sdhci_platdata and some enums) you moved here are just for platform data on each board in arch/arm/.

Thanks.

Best regards,
Kgene.
--
Kukjin Kim <[email protected]>, Senior Engineer, SW Solution Development Team, Samsung Electronics Co., Ltd.

#2 lore raw

2012/2/16 Kukjin Kim <[email protected]>:

Quoted 12 lines · Jaehoon Chung
Quoted 11 lines

---
 arch/arm/plat-samsung/include/plat/sdhci.h |   59 +------------------- include/linux/mmc/sdhci-s3c.h              |   84
++++++++++++++++++++++++++++

 2 files changed, 85 insertions(+), 58 deletions(-)

 create mode 100644 include/linux/mmc/sdhci-s3c.h

Quoted 5 lines

Hi,

I don't agree with this.
Basically, the components(struct s3c_sdhci_platdata and some enums) you moved here are just for platform data on each board in arch/arm/.

Hi Mr. Kukjin.

I didn't think so. That components are the board specific. right? For example, dw_mmc.h and sdhci-spear.h are included the board-data. But that didn't locate in arch/arm/. there are linux/mmc/.

I think no problem that move to linux/mmc/.

But that's right that s3cxxx_setup_sdhci0_cfg_gpio() or exynos_setup_sdhciX_cfg_gpio
located in arch/arm/.

That's platdata but that is also generic platdata. That platdata structure didn't change whatever.

What's problem?

Best Regards,
Jaehoon Chung

Quoted 13 lines

Thanks.

Best regards,
Kgene.
--
Kukjin Kim <[email protected]>, Senior Engineer, SW Solution Development Team, Samsung Electronics Co., Ltd.

--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html