Armada 7k8k & U-Boot/Device Tree

Marcin Wojtas mw at semihalf.com
Thu Mar 4 17:49:24 UTC 2021


czw., 4 mar 2021 o 11:17 chinting <chinting.senao at gmail.com> napisał(a):
>
> On 2021/01/27 週三 上午 03:03, Marcin Wojtas wrote:
> > Hi,
> >
> > I struggled a bit with Armada 7k8k with FreeBSD and U-Boot (more
> > general - FreeBSD and device tree) - the experience is not pleasant,
> > but unfortunately in this activity switching to EDK2 firmware is not
> > an opiton.
> >
> > On top of HEAD I see following issues (checked on MacchiatoBin, Armada
> > 7040 DB, Armada 8040 DB and a custom board). Device tree used is
> > aligned with Linux v5.10's.
> > - PCIE init hang on MacchiatoBin (it has to be disabled to proceed)
> > - CP110 interfaces do cannot operate - the devices such as SD/MMC and
> > USB time out.
> > KDB shows that no IRQs are received in GIC via ICU-GICP secondary controllers.
> >
> > Does anyone use MacchiatoBin with U-Boot (and/or Device Tree) and see
> > similar issues?
>
> Yes, the same issues here. I use custom board based on Armada 7K.
> These is no Common PHY driver, so the related registers is still
> configured by u-boot.

This is expected, but not a blocker in any way.

>
> - SD/MMC on AP bus is working fine. I mount the rootfs on MMC.
> - Some I2C devices on SB busis good.
> - PCIE controller can be attached, not freezed. But no wifi driver to
> test my device.
> - USB on SB bus is broken too.

Today's main branch comprises a number of GPIO driver improvements
that could likely cause boot hangs on certain bords.

In order to enable interrupts for SB devices a ICU/GICP rework is
needed. Its first working version can be found here:
https://reviews.freebsd.org/D28803
however it has to be significantly modified before merge.

>
> > Was there a pair of FreeBSD - device tree revisions that fully worked?
> I modify device tree from the Marvell Linux v4.14.64
> >

With above patch whatever is applied on top of the main's
sys/contrib/device-tree/src/arm64/marvell/ tree should easily work.

Best regards,
Marcin


More information about the freebsd-arm mailing list