What should I do with issues related to the Linux upstream device tree
files?

I noticed a few problems but I am not sure what normal protocol is - should
I report it as a bug to Linux directly?

For the record the issues I noticed are (comparing with U-boot and OpenWRTs
versions of the device tree files):
- mt7986a.dtsi is missing entry for the SNFI / SNAND interface to load
https://github.com/torvalds/linux/blob/83a7eefedc9b56fe7bfeff13b6c7356688ffa670/drivers/spi/spi-mtk-snfi.c
  this is not populated on the BPI-R3 but other boards might use this
- in OpenWRT device tree there are a lot more entries in the efuse map
related to the USB and PCIe ports - it seems the USB and PCIe device
entries then use these efuse values
- no hnat device - though maybe this is only usable with the proprietary
Mediatek driver code
- in OpenWRT device tree there is a different "compatible" string for spi0
(quad) and spi1 (single) - I am not sure if that matters with the upstream
driver, hopefully there is a way to check that the MTD device is using the
quad SPI / SPIM mode
- the BPI-R3 .dtso overlay files for the NAND and NOR flash options have
partition definitions that don't match the device tree in U-boot and
OpenWRT - ideally these should match the partitions on a factory fresh
board which comes OpenWRT preloaded

Additionally I managed to get Ubuntu 24.04 installed for testing and I will
recompile the kernel to add Ethernet device support. This will provide me
with a useful reference to test against a Debian install to make sure all
devices are showing up.

Thanks,
Leith Bade
le...@bade.nz


On Tue, 11 Jun 2024 at 17:01, Diederik de Haas <didi.deb...@cknow.org>
wrote:

> Hi,
>
> On Tuesday, 11 June 2024 08:02:41 CEST Leith Bade wrote:
> > I have a Bananapi BPI-R3 board which uses the Mediatek MT7986 ARM64 SoC
> for
> > its CPU. This is a router focussed board and currently has good support
> in
> > the OpenWRT distribution and in the upstream Linux for a few years. The
> > device tree for this board is
> >
> https://github.com/torvalds/linux/blob/master/arch/arm64/boot/dts/mediatek/m
> > t7986a-bananapi- bpi-r3.dts (as well as some .dtso files to enable
> specific
> > flash chip options).
>
> I already have a local branch to add preliminary support for the OpenWrt
> One
> router [1] [2] which uses the same SoC :-)
>
> [1]
> https://forum.openwrt.org/t/openwrt-one-celebrating-20-years-of-openwrt/183684
> [2]
> https://forum.openwrt.org/t/openwrt-one-celebrating-20-years-of-openwrt/183684/331
>
> > There is a relevant discussion in https://salsa.debian.org/kernel-
> > team/linux/-/merge_requests/906#note_483427 which was the code change
> that
> > added the MT8xxx support about the various MT6xxx and MT7xxx modules
> being
> > disabled. This is a shame as it seems that without explicitly disabling
> them
> > then this code change would have added the modules I need.
> >
> > I am happy to do any testing required to get this board supported.
>
> And that was precisely about adding support for the OpenWrt One ;-)
>
> Happy to update my local branch and add support for the BPi R-3.
> I'm waiting for some (unrelated) other changes, but when that's posted
> I intend to build a 6.10-rcX based kernel with it and I can 'merge' my
> router branch into that. With that you could verify if it indeed works.
>
> HTH,
>   Diederik

Reply via email to