Date: Fri, 25 Nov 2022 15:18:34 -0800 From: Mark Millard <marklmi@yahoo.com> To: freebsd-arm@freebsd.org Subject: FYI: Example RPi4B 8GiByte "B0T" (3 GiByte limitation) vs. 8 GiByte "C0T" device tree differences Message-ID: <4B293977-1D57-42AD-8031-5821A2E0698C@yahoo.com> References: <4B293977-1D57-42AD-8031-5821A2E0698C.ref@yahoo.com>
next in thread | previous in thread | raw e-mail | index | archive | help
I=E2=80=99ve now got access to a RPi4B with a =E2=80=9CC0T=E2=80=9D = part, an 8 GiByte one. It is a Rev 1.5 as well, the only such that I=E2=80=99ve access to. (There are such = things as Rev 1.4 =E2=80=9CC0T=E2=80=9D RPi4B=E2=80=99s as I understand.) Showing various differences vs. the = old Rev 1.4 8 GiByte RPi4B: - model =3D "Raspberry Pi 4 Model B Rev 1.4"; + model =3D "Raspberry Pi 4 Model B Rev 1.5=E2=80=9D; . . . system { - linux,serial =3D <0x10000000 REDACTED>; - linux,revision =3D <0x00d03114>; + linux,serial =3D <0x10000000 REDACTED>; + linux,revision =3D <0x00d03115>; }; . . . emmc2bus { compatible =3D "simple-bus"; #address-cells =3D <0x00000002>; #size-cells =3D <0x00000001>; ranges =3D <0x00000000 0x7e000000 0x00000000 0xfe000000 = 0x01800000>; - dma-ranges =3D <0x00000000 0xc0000000 0x00000000 = 0x00000000 0x40000000>; + dma-ranges =3D <0x00000000 0x00000000 0x00000000 = 0x00000000 0xfc000000>; . . . pcie@7d500000 { - compatible =3D "brcm,bcm2711-pcie"; + compatible =3D "brcm,bcm2711-pcie", = "brcm,bcm7445-pcie"; . . . - dma-ranges =3D <0x02000000 0x00000004 0x00000000 = 0x00000000 0x00000000 0x00000000 0xc0000000>; + dma-ranges =3D <0x02000000 0x00000004 0x00000000 = 0x00000000 0x00000000 0x00000002 0x00000000>; . . . I ignored ethernet addresses, serial numbers, and the like. I had updated the RPi4B's to have the same EEPROM image = defaults/critical vintage in order to make things more comparable (2022-Apr content = vintage). For reference: bootloader { version =3D = "507b2360eb46af23c05844b289dc5ae4ecfc3cca"; capabilities =3D <0x0000007f>; - update-timestamp =3D <0x6381074a>; + update-timestamp =3D <0x6380a03c>; build-timestamp =3D <0x6267c85c>; }; Notes: I get the information via a sequence that involves booting and looking at the likes of the text: Using DTB provided by EFI at 0x7ef0000. (FYI: prior to the 1st boot this area is not filled in. So a reboot is = involved in preparing it for availability at U-Boot time. It survives.) After that I "shutdown -r now=E2=80=9D and stop it in U-Boot and use (in = this case): U-Boot> fdt addr 0x7ef0000 U-Boot> fdt print / { . . . I record the serial console=E2=80=99s output for later reference. Doing this for both RPi4B types, allows me to use diff like utilities. As I understand, this sequence is showing the device tree as it was = given to the FreeBSD kernel, not some earlier stage. (The RPi* firmware makes adjustments before handing information over to U-Boot. U-Boot might do similarly before handling information over to the FreeBSD loader. That loader might before handing the above over to the kernel.) =3D=3D=3D Mark Millard marklmi at yahoo.com=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4B293977-1D57-42AD-8031-5821A2E0698C>