Re: [PATCH] mmc: sdhci-s3c: let device core setup the default pin configuration

2013-03-22 Thread Chris Ball
Hi,

On Thu, Mar 07 2013, Linus Walleij wrote:
 On Wed, Mar 6, 2013 at 12:36 PM, Thomas Abraham
 thomas.abra...@linaro.org wrote:

 With device core now able to setup the default pin configuration,
 the call to devm_pinctrl_get_select_default can be removed. And
 the pin configuration code based on the deprecated Samsung specific
 gpio bindings is also removed.

 Signed-off-by: Thomas Abraham thomas.abra...@linaro.org

 Acked-by: Linus Walleij linus.wall...@linaro.org

Thanks, pushed to mmc-next for 3.10.

- Chris.
-- 
Chris Ball   c...@laptop.org   http://printf.net/
One Laptop Per Child
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH] mmc: sdhci-s3c: let device core setup the default pin configuration

2013-03-07 Thread Linus Walleij
On Wed, Mar 6, 2013 at 12:36 PM, Thomas Abraham
thomas.abra...@linaro.org wrote:

 With device core now able to setup the default pin configuration,
 the call to devm_pinctrl_get_select_default can be removed. And
 the pin configuration code based on the deprecated Samsung specific
 gpio bindings is also removed.

 Signed-off-by: Thomas Abraham thomas.abra...@linaro.org

Acked-by: Linus Walleij linus.wall...@linaro.org

Yours,
Linus Walleij
--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH] mmc: sdhci-s3c: let device core setup the default pin configuration

2013-03-06 Thread Thomas Abraham
With device core now able to setup the default pin configuration,
the call to devm_pinctrl_get_select_default can be removed. And
the pin configuration code based on the deprecated Samsung specific
gpio bindings is also removed.

Signed-off-by: Thomas Abraham thomas.abra...@linaro.org
---
 .../devicetree/bindings/mmc/samsung-sdhci.txt  |   35 +-
 drivers/mmc/host/sdhci-s3c.c   |   71 ++-
 2 files changed, 12 insertions(+), 94 deletions(-)

diff --git a/Documentation/devicetree/bindings/mmc/samsung-sdhci.txt 
b/Documentation/devicetree/bindings/mmc/samsung-sdhci.txt
index 3b3a1ee..328e990 100644
--- a/Documentation/devicetree/bindings/mmc/samsung-sdhci.txt
+++ b/Documentation/devicetree/bindings/mmc/samsung-sdhci.txt
@@ -5,13 +5,6 @@ MMC, SD and eMMC storage mediums. This file documents 
differences between the
 core mmc properties described by mmc.txt and the properties used by the
 Samsung implmentation of the SDHCI controller.
 
-Note: The mmc core bindings documentation states that if none of the core
-card-detect bindings are used, then the standard sdhci card detect mechanism
-is used. The Samsung's SDHCI controller bindings extends this as listed below.
-
-[A] The property samsung,cd-pinmux-gpio can be used as stated in the
-Optional Board Specific Properties section below.
-
 Required SoC Specific Properties:
 - compatible: should be one of the following
   - samsung,s3c6410-sdhci: For controllers compatible with s3c6410 sdhci
@@ -20,18 +13,8 @@ Required SoC Specific Properties:
 controller.
 
 Required Board Specific Properties:
-- Samsung GPIO variant (will be completely replaced by pinctrl):
-  - gpios: Should specify the gpios used for clock, command and data lines. The
-gpio specifier format depends on the gpio controller.
-- Pinctrl variant (preferred if available):
-  - pinctrl-0: Should specify pin control groups used for this controller.
-  - pinctrl-names: Should contain only one value - default.
-
-Optional Board Specific Properties:
-- samsung,cd-pinmux-gpio: Specifies the card detect line that is routed
-  through a pinmux to the card-detect pin of the card slot. This property
-  should be used only if none of the mmc core card-detect properties are
-  used. Only for Samsung GPIO variant.
+- pinctrl-0: Should specify pin control groups used for this controller.
+- pinctrl-names: Should contain only one value - default.
 
 Example:
sdhci@1253 {
@@ -39,19 +22,9 @@ Example:
reg = 0x1253 0x100;
interrupts = 0 75 0;
bus-width = 4;
-   cd-gpios = gpk2 2 2 3 3;
-
-   /* Samsung GPIO variant */
-   gpios = gpk2 0 2 0 3,  /* clock line */
-   gpk2 1 2 0 3,  /* command line */
-   gpk2 3 2 3 3,  /* data line 0 */
-   gpk2 4 2 3 3,  /* data line 1 */
-   gpk2 5 2 3 3,  /* data line 2 */
-   gpk2 6 2 3 3;  /* data line 3 */
-
-   /* Pinctrl variant */
-   pinctrl-0 = sd0_clk sd0_cmd sd0_bus4;
+   cd-gpios = gpk2 2 0;
pinctrl-names = default;
+   pinctrl-0 = sd0_clk sd0_cmd sd0_bus4;
};
 
Note: This example shows both SoC specific and board specific properties
diff --git a/drivers/mmc/host/sdhci-s3c.c b/drivers/mmc/host/sdhci-s3c.c
index 7363efe..86e0bd7 100644
--- a/drivers/mmc/host/sdhci-s3c.c
+++ b/drivers/mmc/host/sdhci-s3c.c
@@ -24,7 +24,6 @@
 #include linux/of_gpio.h
 #include linux/pm.h
 #include linux/pm_runtime.h
-#include linux/pinctrl/consumer.h
 
 #include linux/mmc/host.h
 
@@ -45,7 +44,6 @@
  * @ioarea: The resource created when we claimed the IO area.
  * @pdata: The platform data for this controller.
  * @cur_clk: The index of the current bus clock.
- * @gpios: List of gpio numbers parsed from device tree.
  * @clk_io: The clock for the internal bus interface.
  * @clk_bus: The clocks that are available for the SD/MMC bus clock.
  */
@@ -57,8 +55,6 @@ struct sdhci_s3c {
unsigned intcur_clk;
int ext_cd_irq;
int ext_cd_gpio;
-   int *gpios;
-   struct pinctrl  *pctrl;
 
struct clk  *clk_io;
struct clk  *clk_bus[MAX_BUS_CLK];
@@ -447,88 +443,39 @@ static int sdhci_s3c_parse_dt(struct device *dev,
struct device_node *node = dev-of_node;
struct sdhci_s3c *ourhost = to_s3c(host);
u32 max_width;
-   int gpio, cnt, ret;
+   int gpio;
 
/* if the bus-width property is not specified, assume width as 1 */
if (of_property_read_u32(node, bus-width, max_width))
max_width = 1;
pdata-max_width = max_width;
 
-   ourhost-gpios = devm_kzalloc(dev, NUM_GPIOS(pdata-max_width) *
-   sizeof(int), GFP_KERNEL);
-   if