The H6 BSP provides some clues:
#if defined(CONFIG_ARCH_SUN8IW12) \
|| defined(CONFIG_ARCH_SUN8IW15) \
|| defined(CONFIG_ARCH_SUN50IW3) \
|| defined(CONFIG_ARCH_SUN50IW6)
#define SUNXI_UART_FIFO_SIZE256
#elif defined(CONFIG_ARCH_SUN3IW1)
#define SUNXI_UART_FIFO_SIZE32
#else
#define SUNXI_UART_FIFO_SIZE64
#endif
sun8iw12 = V5/V100
sun8iw15 = R311/A50
sun50iw3 = A63
sun50iw6 = H6
sun3iw1 = handful of ARM926EJ-S things we don’t support
Take care,
Jared
> On Jul 31, 2021, at 7:17 AM, Tobias Nygren wrote:
>
> On Fri, 30 Jul 2021 22:36:45 +0200
> Tobias Nygren wrote:
>
>> On Fri, 30 Jul 2021 17:25:46 -0300 (ADT)
>> Jared McNeill wrote:
>>
>>> Why only A20?
>>
>> It is the hardware I have on hand. If you know specifically which
>> SoCs need this, the compat_data array can be extended.
>> I guess maybe these also?
>> allwinner,sun4i-a10
>> allwinner,sun6i-a31
>
> Apparently it can be an issue on relatively speaking newer SoCs too.
> For example the H6 does not have DesignWare specific register,
> and comes with 256-byte FIFO instead of 64-byte.
>
> It's not possible to deduce from the manual what DesignWare revision
> is used but I guess I can go over the data sheets of currently
> released SoCs and build a matrix of the proper values regardless
> of DesignWare revision.
>