diff --git a/README.md b/README.md index 6d43a77..d8f5b81 100644 --- a/README.md +++ b/README.md @@ -7,11 +7,6 @@ https://docs.mono.si/gateway-development-kit/getting-started ## DISCLAIMER USE AT YOUR OWN RISKS. I leverage ChatGPT heavily for this. I am testing them all by myself right now. -### The device's dts files are located at here -https://github.com/we-are-mono/OpenWRT-ASK/tree/mono-25.12.0-rc3/target/linux/layerscape/files/arch/arm64/boot/dts/freescale -* We need both `mono-gateway-dk-sdk.dts` and `mono-gateway-dk.dts` since the sdk one includes the non-sdk one. -* The actual dts being used is the `mono-gateway-dk-sdk.dts` - ## Build Find the latest package versions and update build.env @@ -25,6 +20,48 @@ Then run make release ``` +## Flashing + +#### USB Drive +1. `make release` +2. Format the USB in vfat +3. Copy out/[RELEASE].img.gz and out/board.itb your usb drive's root +4. Run +``` +usb start +usb tree +fatls usb 0:1 # For fat +ext4ls usb 0:1 # For ext4 if you insist +fatload usb 0 0x80000000 board.itb + +setenv bootargs "console=ttyS0,115200 earlycon=uart8250,mmio,0x21c0500 root=/dev/ram0 rootwait rw" +bootm 0x80000000 +``` + +5. Inside initramfs, run +``` +flash-emmc.sh +``` + +4. If it boots, create the A/B deployment scheme + - (WORK IN PROGRESS) + +#### tftp (network is required) +1. Put out/[RELEASE].img.gz and out/board.itb into your ftp server +``` +setenv ipaddr 10.0.0.153 +setenv serverip 10.0.0.129 +tftp 0x80000000 board.itb + +setenv bootargs "console=ttyS0,115200 earlycon=uart8250,mmio,0x21c0500 root=/dev/ram0 rootwait rw" +bootm 0x80000000 +``` +2. Inside initramfs, run +``` +flash-emmc.sh +``` + + ### Making sub stages ```bash make build-base # The image the builds kernel and everything @@ -61,33 +98,8 @@ reboot PENDING ``` -## tftp (network is required) -``` -setenv ipaddr 10.0.0.153 -setenv serverip 10.0.0.129 -tftp 0x80000000 board.itb -``` - -## USB Flashing -1. Copy board.itb into an SDCard -2. Copy `[RELEASE_NAME].img.gz` into an SDCard -``` -usb start -usb tree -fatls usb 0:1 # For fat -ext4ls usb 0:1 # For ext4 -fatload usb 0 0x80000000 board.itb - -setenv bootargs "console=ttyS0,115200 earlycon=uart8250,mmio,0x21c0500 root=/dev/ram0 rootwait rw" -bootm 0x80000000 -``` - -3. Inside initramfs -``` -mount /dev/sda /mnt -gunzip -c /mnt/[RELEASE_IMAGE].img.gz | dd of=/dev/mmcblk0 -reboot -f -``` - -4. If it boots, create the A/B deployment scheme - - (WORK IN PROGRESS) +## NOTES +### The device's dts files are located at here +https://github.com/we-are-mono/OpenWRT-ASK/tree/mono-25.12.0-rc3/target/linux/layerscape/files/arch/arm64/boot/dts/freescale +* We need both `mono-gateway-dk-sdk.dts` and `mono-gateway-dk.dts` since the sdk one includes the non-sdk one. +* The actual dts being used is the `mono-gateway-dk-sdk.dts` diff --git a/alpine/rootfs-extra/etc/motd.tmpl b/alpine/rootfs-extra/etc/motd.tmpl new file mode 100644 index 0000000..ca66d05 --- /dev/null +++ b/alpine/rootfs-extra/etc/motd.tmpl @@ -0,0 +1,6 @@ +Alpine monok8s for mono Gateway Development Kit + + Version: $BUILD_VERSION + Built: $BUILD_DATE + Git: $BUILD_GIT + diff --git a/docker/alpine.Dockerfile b/docker/alpine.Dockerfile index cdf5407..e0c0f36 100644 --- a/docker/alpine.Dockerfile +++ b/docker/alpine.Dockerfile @@ -24,4 +24,5 @@ COPY packages/kubernetes/* /out/rootfs/usr/local/bin/ RUN chmod +x /out/rootfs/usr/local/bin/* COPY alpine/rootfs-extra ./rootfs-extra +COPY out/build-info ./rootfs-extra/etc/profile.d/build-info.sh COPY alpine/*.sh / diff --git a/makefile b/makefile index 7fed2b7..133d99f 100644 --- a/makefile +++ b/makefile @@ -190,6 +190,9 @@ $(RELEASE_IMAGE): $(RELEASE_DEPS) | $(OUT_DIR) -e KUBE_IMG_CACHE=/var/cache/k8s-images \ -e KUBE_VERSION=$(KUBE_VERSION) \ -e ALPINE_HOSTNAME=$(ALPINE_HOSTNAME) \ + -e BUILD_VERSION=$(BUILD_VERSION) \ + -e BUILD_DATE=$(BUILD_DATE) \ + -e BUILD_GIT=$(BUILD_GIT) \ -e ARCH=$(ARCH) \ $(DOCKER_IMAGE_ROOT)/buildenv-alpine:$(TAG) \ bash -lc '/build-rootfs.sh'); \