Re: U-Boot for HoneyComb LX2

From: Dan Kotowski <dan.kotowski_at_a9development.com>
Date: Sat, 12 Jun 2021 12:16:39 UTC
> (well, I had to configure DKIM long ago... done finally)
>
> Personally, I'd be glad to use any bootloader which provided a firmware for
>
> DPAA2 MC. I checked SolidRun's script [1] to build a UEFI image briefly and
>
> didn't find anything about MC firmware, DPL or DPC. However, similar script
>
> with U-Boot [2] has them written to the resulted image:
>
> # DPAA2-MC at 0x5000
>
> dd if=$ROOTDIR/build/qoriq-mc-binary/lx216xa/${MC} of=images/${IMG} bs=512 seek=20480 conv=notrunc
>
> # DPAA2 DPL at 0x6800
>
> dd if=$ROOTDIR/build/mc-utils/config/lx2160a/CEX7/${DPL} of=images/${IMG} bs=512 seek=26624 conv=notrunc
>
> # DPAA2 DPC at 0x7000
>
> dd if=$ROOTDIR/build/mc-utils/config/lx2160a/CEX7/${DPC} of=images/${IMG} bs=512 seek=28672 conv=notrunc
>
> Do you know how MC is initialized in case of UEFI?
>
> Regards,
>
> Dmitry
>
> [1] https://github.com/SolidRun/lx2160a_uefi/blob/master/runme.sh
>
> [2] https://github.com/SolidRun/lx2160a_build/blob/master/runme.sh

DPL and DPC are tied to the SERDES config:

if [ "x${SERDES:0:3}" == "x13_" ]; then
	DPC=dpc-dual-100g.dtb
	DPL=dpl-eth.dual-100g.19.dtb
fi
if [ "x${SERDES:0:2}" == "x8_" ]; then
	DPC=dpc-8_x_usxgmii.dtb
	DPL=dpl-eth.8x10g.19.dtb
fi
if [ "x${SERDES:0:2}" == "x4_" ]; then
	DPC=dpc-8_x_usxgmii.dtb
	DPL=dpl-eth.8x10g.19.dtb
fi
if [ "x${SERDES:0:3}" == "x20_" ]; then
	DPC=dpc-dual-40g.dtb
	DPL=dpl-eth.dual-40g.19.dtb
fi

Right now we're mostly working with 8_5_2, but I know Jon is doing some more work to get things sorted. IIRC he's waiting on some PRs to get merged upstream in the Tianocore EDK2 repos.

I think someone was working on porting the lx2160a_uefi repo but I haven't heard much about it in a while.

If you're a Discord user, Jon Nettleton - one of SolidRun's engineers - and a handful of others who are playing with Honeycombs in different capacities are also collaborating here: https://discord.gg/tgHuG4Cq