On 7/23/2019 6:34 PM, Christoph Hellwig wrote:
>> +static int bcm2835_needs_bounce(struct device *dev, dma_addr_t dma_addr,
>> size_t size)
>
> Too long line..
>
>> +void __init bcm2835_init_early(void)
>> +{
>> + if(of_machine_is_compatible("brcm,bcm2711"))
>
> Odd formatting.
>
> Otherwise this looks good to me.
Is this really the right way to solve this problem? First this is ARM
32-bit specific, and second, should not we have a way to indicate via
device tree that all peripherals behind the "soc" simple-bus parent node
are limited to 32-bit of DMA masks, but the specific memory map of the
BCM283x/BCM2711 makes it that only the last 1GB (0xC000_0000 -
0xffff_ffff) (which dma-ranges conveys already) is suitable for DMA into
the VPU uncached alias?
--
Florian