[PATCH RESEND 06/12] mmc: sdhci-pxav3: Move I/O clock to private data

Sebastian Hesselbarth sebastian.hesselbarth at gmail.com
Mon Oct 27 11:15:40 PDT 2014


On 10/27/2014 02:28 PM, Ulf Hansson wrote:
> On 21 October 2014 11:22, Sebastian Hesselbarth
> <sebastian.hesselbarth at gmail.com> wrote:
>> As we are using references to the I/O clock throughout the driver,
>> move it to the private data. Also, in preparation for core clock,
>> rename it to clk_io.
>>
>> Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth at gmail.com>
>> ---
>> Cc: Chris Ball <chris at printf.net>
>> Cc: Ulf Hansson <ulf.hansson at linaro.org>
>> Cc: "Antoine Ténart" <antoine.tenart at free-electrons.com>
>> Cc: linux-mmc at vger.kernel.org
>> Cc: devicetree at vger.kernel.org
>> Cc: linux-arm-kernel at lists.infradead.org
>> Cc: linux-kernel at vger.kernel.org
>> ---
>>   drivers/mmc/host/sdhci-pxav3.c | 24 +++++++++++++-----------
>>   1 file changed, 13 insertions(+), 11 deletions(-)
>>
>> diff --git a/drivers/mmc/host/sdhci-pxav3.c b/drivers/mmc/host/sdhci-pxav3.c
>> index e52bbbb09d88..a34a589670e6 100644
>> --- a/drivers/mmc/host/sdhci-pxav3.c
>> +++ b/drivers/mmc/host/sdhci-pxav3.c
>> @@ -59,6 +59,7 @@
>>   #define SDCE_MISC_INT_EN       (1<<1)
>>
>>   struct sdhci_pxa {
>> +       struct clk *clk_io;
>>          u8      power_mode;
>>   };
>>
>> @@ -288,9 +289,7 @@ static int sdhci_pxav3_probe(struct platform_device *pdev)
>>          struct sdhci_host *host = NULL;
>>          struct sdhci_pxa *pxa = NULL;
>>          const struct of_device_id *match;
>> -
>>          int ret;
>> -       struct clk *clk;
>>
>>          pxa = devm_kzalloc(&pdev->dev, sizeof(struct sdhci_pxa), GFP_KERNEL);
>>          if (!pxa)
>> @@ -310,14 +309,14 @@ static int sdhci_pxav3_probe(struct platform_device *pdev)
>>          pltfm_host = sdhci_priv(host);
>>          pltfm_host->priv = pxa;
>>
>> -       clk = devm_clk_get(dev, NULL);
>> -       if (IS_ERR(clk)) {
>> +       pxa->clk_io = devm_clk_get(dev, NULL);
>> +       if (IS_ERR(pxa->clk_io)) {
>>                  dev_err(dev, "failed to get io clock\n");
>> -               ret = PTR_ERR(clk);
>> +               ret = PTR_ERR(pxa->clk_io);
>>                  goto err_clk_get;
>>          }
>> -       pltfm_host->clk = clk;
>> -       clk_prepare_enable(clk);
>> +       pltfm_host->clk = pxa->clk_io;
>
> Is the above still needed?
>
>> +       clk_prepare_enable(pxa->clk_io);

Ulf,

I guess it is. It sets sdhci_pltfm_host's clk field which is used
by sdhci-pltfm.c to e.g. determine sdhci clock rate.

Sebastian



More information about the linux-arm-kernel mailing list