add sunxi/nezha

This is "working", but only to the extent that it boots, works for a while, then hangs :-(

Build here, then
cp cpukernel ~/oreboot/src/mainboard/sunxi/nezha/
cp sun20i-d1-nezha.dtb ~/oreboot/src/mainboard/sunxi/nezha/
cd ~/oreboot/src/mainboard/sunxi/nezha/

PAYLOAD_B=cpukernel PAYLOAD_C=sun20i-d1-nezha.dtb make run

Signed-off-by: Ronald G. Minnich <rminnich@gmail.com>
This commit is contained in:
Ronald G. Minnich 2022-03-22 22:47:07 -07:00 committed by ron minnich
parent 0e4e3bed2c
commit fe7cbd093b
3 changed files with 2668 additions and 0 deletions

5
mainboards/sunxi/nezha/.gitignore vendored Normal file
View File

@ -0,0 +1,5 @@
cpu.cpio
cpu.cpio.*
linux/
cpukernel

View File

@ -0,0 +1,53 @@
# This is the makefile for a cpu kernel and initramfs
# to be used on a rvboards d1
#
# The cpu image uses a cpud as its init, and you
# can cpu to it to run commands.
default: cpukernel
cpukernel: cpu.cpio.xz cpu.config
cp cpu.config linux/.config
(cd linux && CROSS_COMPILE=riscv64-linux-gnu- ARCH=riscv make oldconfig && CROSS_COMPILE=riscv64-linux-gnu- ARCH=riscv make -j32)
cp linux/arch/riscv/boot/Image cpukernel
cp linux/arch/riscv/boot/dts/allwinner/sun20i-d1-nezha.dtb .
# this target builds an initramfs with cpud as init, and the core
# set of u-root commands.
# It depends on the kernel setting the IP address.
# You need ip=dhcp OR ip=fixed.ip.address.here in the command line
cpu.cpio: Makefile
GO111MODULE=off GOARCH=riscv64 CGO_ENABLED=0 u-root -o cpu.cpio -build=bb -files ~/.ssh/cpu_rsa.pub:key.pub \
core \
github.com/u-root/cpu/cmds/cpud
cpu.cpio.xz: cpu.cpio
xz --check=crc32 -9 --lzma2=dict=1MiB --stdout cpu.cpio | dd conv=sync bs=512 of=cpu.cpio.xz
# These stanzas fetch code.
fetch: getkernel geturoot
getkernel:
rm -rf linux
git clone --depth=1 -b v5.15.5-openwrt --single-branch https://github.com/orangecms/linux
geturoot:
GO111MODULE=off go get -u github.com/u-root/u-root
GO111MODULE=off go get -u github.com/u-root/cpu/...
# Serve the combined sshd-kernel and sshd-initramfs image. This includes flashrom
sshd-pxeserver:
echo Consider Disabling any system services ...
echo e.g. sudo systemctl stop tftpd-hpa.service
echo e.g. sudo systemctl stop isc-dhcp-server
sudo `go env GOPATH`/bin/pxeserver -tftp-dir . -bootfilename sshdkernel -http-dir . -interface $(NETWORK)
# Serve the combined cpu-kernel and cpu-initramfs image.
cpu-pxeserver:
echo Consider Disabling any system services ...
echo e.g. sudo systemctl stop tftpd-hpa.service
echo e.g. sudo systemctl stop isc-dhcp-server
sudo `go env GOPATH`/bin/pxeserver -tftp-dir . -bootfilename cpukernel -http-dir . -interface $(NETWORK)
ssh:
ssh -i class_key -p 2022 root@up

File diff suppressed because it is too large Load Diff