brcmiproc: Add support for the Broadcom iProc SoC Family
authorSamik Gupta <samik.gupta@broadcom.com>
Tue, 3 Dec 2019 21:12:17 +0000 (13:12 -0800)
committerHauke Mehrtens <hauke@hauke-m.de>
Thu, 26 Mar 2020 22:28:44 +0000 (23:28 +0100)
commit3be1c4a85ecf965ed6cc23797d14a2b2d015187e
treea409dc1a235a4c10e49b1dbce176e3f08c3675cc
parent001211a5baee5771a9c3a2829dd53e0cde47b631
brcmiproc: Add support for the Broadcom iProc SoC Family

Enable support for systems based on Broadcom iProc architected SoCs. The
iProc complex contains one or more ARM CPUs along with common core
peripherals. Application specific SoCs are created by adding a
uArchitecture containing peripherals outside of the iProc complex.

Add a sub-target for the PS225 adapter, based on the BCM5880X ASIC from
the iProc family.

PS225 is a PCI Express low-profile, half-length adapter and provides
two 25-Gigabit Ethernet (25GbE) ports along with eight 64-bit ARMv8
processors running at 3.0 GHz. On-board DDR4 memory sizes range from 4GB
to 16GB. It is designed to run high-performance networking, storage and
management workloads.

Installation:

1. These instructions assume that the PS225 card is connected to a
remote host via its Ethernet ports and that the user has console access
via the serial port. The remote host holds the kernel image, rootfs and
dtb file.  This installation will leave the default distribution as-is.
Wiping out the existing kernel and rootfs is not covered in this
example.

2. Boot the PS225 using its default distribution. Assign an IP address
to the network interface enP8p1s0f0np0 and specify a default route such
that the PS225 has IP connectivity to the remote host.

3. Execute the following commands

mkdir -p /mnt/krn
mount /dev/mmcblk0p1 /mnt/krn
cd /mnt/krn
scp
<user>@<remote-host>:<path-to-images>/<kernel-Image> openwrt-Image.1
scp
<user>@<remote-host>:<path-to-images>/<dtb-file> openwrt-bcm958802a802x.dtb.1
cd /mnt
umount krn
mkfs.ext4 /dev/mmcblk0p5
mkdir -p /mn/p5
mount /dev/mmcblk0p5 /mnt/p5
cd /mnt/p5
scp
<user>@<remote-host>:<path-to-images>/<rootfs>.tar.gz ~/openwrt-rootfs.tar.gz
tar xavf ~/openwrt-rootfs.tar.gz
rm ~/openwrt-rootfs.tar.gz
cd /mnt
umount p5
reboot

4. Press a key when prompted to stop autoboot and gain access to the
UEFI shell. Then execute the following commands

set kernel_file openwrt-Image
set dtb_file openwrt-bcm958802a802x.dtb
select rootfs-ordinal 5
startup

5. The system will boot into OpenWRT

To go back to the default distribution:

Reboot the system and press a key when prompted to stop autoboot and
gain access to the UEFI shell. Then execute the following commands

set kernel_file Image
set dtb_file dt-blob.bin
select rootfs-ordinal 3
startup

Signed-off-by: Samik Gupta <samik.gupta@broadcom.com>
package/kernel/linux/modules/netdevices.mk
target/linux/brcmiproc/Makefile [new file with mode: 0644]
target/linux/brcmiproc/arm64/base-files/etc/inittab [new file with mode: 0644]
target/linux/brcmiproc/arm64/profiles/00-default.mk [new file with mode: 0644]
target/linux/brcmiproc/arm64/target.mk [new file with mode: 0644]
target/linux/brcmiproc/config-4.19 [new file with mode: 0644]
target/linux/brcmiproc/image/Makefile [new file with mode: 0644]