[PATCH 3/6] sunxi: SPL SPI: Introduce is_new_gen_spi()

André Przywara andre.przywara at arm.com
Mon Jan 27 02:29:23 CET 2020


On 21/01/2020 08:20, Jagan Teki wrote:

Hi Jagan,

first: many thanks for merging those other patches of mine, much
appreciated!

> On Mon, Jan 6, 2020 at 6:59 AM Andre Przywara <andre.przywara at arm.com> wrote:
>>
>> So far we were using the CONFIG_SUNXI_GEN_SUN6I symbol to select between
>> the two SPI controller generations used on Allwinner SoCs. This is a
>> convenience symbol to roughly differentiate between "older" and "newer"
>> generation of SoCs.
>>
>> The H6 SoCs is the newest SoC so far, but is sufficiently different to
>> not define this symbol. However it is using a SPI controller compatible
>> to the "new gen" SoCs.
>>
>> To prepare for H6 support, we replace the check for this single symbol
>> with an explicit function, which can later be extended.
>> For now we just return CONFIG_SUNXI_GEN_SUN6I in there, so this does not
>> create a functional change.
>>
>> Signed-off-by: Andre Przywara <andre.przywara at arm.com>
>> ---
>>  arch/arm/mach-sunxi/spl_spi_sunxi.c | 22 ++++++++++++++--------
>>  1 file changed, 14 insertions(+), 8 deletions(-)
>>
>> diff --git a/arch/arm/mach-sunxi/spl_spi_sunxi.c b/arch/arm/mach-sunxi/spl_spi_sunxi.c
>> index 5b4598a25b..b19f1bf4af 100644
>> --- a/arch/arm/mach-sunxi/spl_spi_sunxi.c
>> +++ b/arch/arm/mach-sunxi/spl_spi_sunxi.c
>> @@ -100,9 +100,14 @@ static void spi0_pinmux_setup(unsigned int pin_function)
>>                 sunxi_gpio_set_cfgpin(SUNXI_GPC(3), pin_function);
>>  }
>>
>> +static bool is_new_gen_spi(void)
>> +{
>> +       return IS_ENABLED(CONFIG_SUNXI_GEN_SUN6I);
>> +}
> 
> Doesn't it confusing? new gen is H6, but it returns 6I?

Well, naming ...
For the purpose of U-Boot there are two generations of SPI controller
*register interfaces*, the "old" one used in the older SoCs like the
A20, and the "newer" one used in everything halfway recent. The H6 uses
the same "new" generation, just at a different address. Yes, it adds
quad-SPI, but this is not relevant for this driver.
I have seen this old/new terminology at different places, so just went
with it.
I could rename it to is_spi_sun6i_gen() or something if that makes you
happy...

Cheers,
Andre


More information about the U-Boot mailing list