[U-Boot] [PATCH 5/7] ARM: sunxi-mmc: Add mmc support for sun6i / A31
Chen-Yu Tsai
wens at csie.org
Tue Sep 23 13:50:47 CEST 2014
On Mon, Sep 22, 2014 at 10:11 AM, Chen-Yu Tsai <wens at csie.org> wrote:
> On Mon, Sep 22, 2014 at 2:44 AM, Ian Campbell <ijc at hellion.org.uk> wrote:
>> On Mon, 2014-09-08 at 21:28 +0800, Chen-Yu Tsai wrote:
>>> From: Hans de Goede <hdegoede at redhat.com>
>>>
>>> Signed-off-by: Hans de Goede <hdegoede at redhat.com>
>>> [wens at csie.org: use setbits_le32 for reset control, drop obsolete changes,
>>> squash "sunxi-mmc: sun6i has its fifo at a different address"]
>>> Signed-off-by: Chen-Yu Tsai <wens at csie.org>
>>
>> Adding CC to Pantelis (MMC custodian).
>>
>> Pantelis, once you are happy with this I propose we take this via the
>> sunxi tree along with the rest of the series.
>>
>> For my part I only have nitpicks:
>>
>>> ---
>>> arch/arm/include/asm/arch-sunxi/mmc.h | 2 --
>>> drivers/mmc/sunxi_mmc.c | 9 +++++++++
>>> 2 files changed, 9 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/arch/arm/include/asm/arch-sunxi/mmc.h b/arch/arm/include/asm/arch-sunxi/mmc.h
>>> index 53196e3..bafde4b 100644
>>> --- a/arch/arm/include/asm/arch-sunxi/mmc.h
>>> +++ b/arch/arm/include/asm/arch-sunxi/mmc.h
>>> @@ -42,8 +42,6 @@ struct sunxi_mmc {
>>> u32 idie; /* 0x8c internal DMA interrupt enable */
>>> u32 chda; /* 0x90 */
>>> u32 cbda; /* 0x94 */
>>> - u32 res1[26];
>>> - u32 fifo; /* 0x100 FIFO access address */
>>
>> This seems unrelated to the stated purpose of the commit, should
>> probably be a separate cleanup.
>
> This was part of "sunxi-mmc: sun6i has its fifo at a different address",
> but yeah, it definitely looks like a separate cleanup now. I'll split it
> out.
>
>>> };
>>>
>>> #define SUNXI_MMC_CLK_POWERSAVE (0x1 << 17)
>>> diff --git a/drivers/mmc/sunxi_mmc.c b/drivers/mmc/sunxi_mmc.c
>>> index d4e574f..b035bba 100644
>>> --- a/drivers/mmc/sunxi_mmc.c
>>> +++ b/drivers/mmc/sunxi_mmc.c
>>> @@ -57,7 +57,11 @@ static int mmc_resource_init(int sdc_no)
>>> printf("Wrong mmc number %d\n", sdc_no);
>>> return -1;
>>> }
>>> +#ifdef CONFIG_SUN6I
>>> + mmchost->database = (unsigned int)mmchost->reg + 0x200;
>>> +#else
>>> mmchost->database = (unsigned int)mmchost->reg + 0x100;
>>> +#endif
>>
>> Adding a #define to ./include/configs/sun?i.h would be preferred, I
>> think.
>
> Sounds reasonable. I wonder what else (in other drivers) we should
> move over there.
Ian, include/configs/sun?i.h and sunxi-common.h only have config
related #defines. Are we sure this is the place for something
like register offsets?
For reference, drivers/i2c/mvtwsi.c has sunxi specific register
offsets wrapped in a #define in the file itself.
Cheers
ChenYu
More information about the U-Boot
mailing list