Compare commits
No commits in common. "cd1428255bc09a599c90005076ab4da2be8812fa" and "423cf4cbee1fba45fd1f581a2f6ae2708fa19d08" have entirely different histories.
cd1428255b
...
423cf4cbee
35
THOUGHTS.txt
35
THOUGHTS.txt
@ -306,38 +306,3 @@ So
|
|||||||
|
|
||||||
Note regarding that second bullet: at the moment the static address
|
Note regarding that second bullet: at the moment the static address
|
||||||
service has no outputs anyway!
|
service has no outputs anyway!
|
||||||
|
|
||||||
|
|
||||||
Tue Oct 4 22:43:02 BST 2022
|
|
||||||
|
|
||||||
While trying to make the TFTP workflow not awful I seem to have written
|
|
||||||
a TFTP server.
|
|
||||||
|
|
||||||
|
|
||||||
Thu Oct 6 19:26:40 BST 2022
|
|
||||||
|
|
||||||
We have a booting kernel on gl-ar750, but we aren't at a point that it can
|
|
||||||
find a root filesystem
|
|
||||||
|
|
||||||
I'd *like* to be able to use the same delivery mechanism (kernel uimage
|
|
||||||
concatenated monolithic
|
|
||||||
|
|
||||||
|
|
||||||
Sat Oct 8 11:12:09 BST 2022
|
|
||||||
|
|
||||||
We have it booting on hardware, mounting root fs, running getty :-)
|
|
||||||
|
|
||||||
For NixWRT TFTP boots we used a single image with both kernel and squashfs, and
|
|
||||||
relied on CONFIG_MTD_SPLIT_FIRMWARE to identify where the boundary was and create
|
|
||||||
/dev/mdtn devices at the right offsets so that the kernel could find the
|
|
||||||
squashfs
|
|
||||||
|
|
||||||
For Liminix we're not going to do that.
|
|
||||||
|
|
||||||
* CONFIG_MTD_SPLIT_FIRMWARE is only available in OpenWrt patches
|
|
||||||
* it's an uncomfortable level of automagic just to save us doing two TFTPs
|
|
||||||
instea of one
|
|
||||||
* the generated image is anyway not the one we'd write to flash (has unneeded
|
|
||||||
PHRAM support)
|
|
||||||
* it means we need to memmap out enough ram for the whole image inc kernel when really
|
|
||||||
all we need to reserve is the rootfs bit
|
|
||||||
|
@ -23,19 +23,17 @@
|
|||||||
kernel = rec {
|
kernel = rec {
|
||||||
checkedConfig = {
|
checkedConfig = {
|
||||||
"MIPS_ELF_APPENDED_DTB" = "y";
|
"MIPS_ELF_APPENDED_DTB" = "y";
|
||||||
OF = "y";
|
# possibly not all of these are needed, I just
|
||||||
USE_OF = "y";
|
# copied them from qemu
|
||||||
|
HW_CONSOLE = "y";
|
||||||
|
VT_HW_CONSOLE_BINDING = "y";
|
||||||
SERIAL_8250_CONSOLE = "y";
|
SERIAL_8250_CONSOLE = "y";
|
||||||
SERIAL_8250 = "y";
|
SERIAL_8250 = "y";
|
||||||
SERIAL_CORE_CONSOLE = "y";
|
SERIAL_CORE_CONSOLE = "y";
|
||||||
|
DUMMY_CONSOLE = "y";
|
||||||
# need this to open console device at boot. dmesg goes from
|
DUMMY_CONSOLE_COLUMNS = "80";
|
||||||
# [ 0.272934] Warning: unable to open an initial console.
|
DUMMY_CONSOLE_ROWS = "25";
|
||||||
# to
|
# FRAMEBUFFER_CONSOLE = "y";
|
||||||
# [ 0.247413] printk: console [ttyS0] disabled
|
|
||||||
# [ 0.25200] 18020000.uart: ttyS0 at MMIO 0x1802000 (irq = 10, base_baud = 1562500) is a 16550A
|
|
||||||
SERIAL_OF_PLATFORM = "y";
|
|
||||||
|
|
||||||
CONSOLE_LOGLEVEL_DEFAULT = "8";
|
CONSOLE_LOGLEVEL_DEFAULT = "8";
|
||||||
CONSOLE_LOGLEVEL_QUIET = "4";
|
CONSOLE_LOGLEVEL_QUIET = "4";
|
||||||
|
|
||||||
@ -47,7 +45,7 @@
|
|||||||
# be present already
|
# be present already
|
||||||
BLK_DEV_INITRD = "n";
|
BLK_DEV_INITRD = "n";
|
||||||
};
|
};
|
||||||
config = {
|
config = checkedConfig // {
|
||||||
CPU_LITTLE_ENDIAN= "n";
|
CPU_LITTLE_ENDIAN= "n";
|
||||||
CPU_BIG_ENDIAN= "y";
|
CPU_BIG_ENDIAN= "y";
|
||||||
ATH79 = "y";
|
ATH79 = "y";
|
||||||
@ -67,8 +65,11 @@
|
|||||||
# at boot time unless we disable trying to call it
|
# at boot time unless we disable trying to call it
|
||||||
"FW_LOADER_USER_HELPER" = "n";
|
"FW_LOADER_USER_HELPER" = "n";
|
||||||
|
|
||||||
|
# "IMAGE_CMDLINE_HACK" = "n";
|
||||||
|
|
||||||
"MODULE_SIG" = "y";
|
"MODULE_SIG" = "y";
|
||||||
"MTD_CMDLINE_PARTS" = "y";
|
"MTD_CMDLINE_PARTS" = "y";
|
||||||
|
# "MTD_SPLIT_FIRMWARE" = "y";
|
||||||
"PARTITION_ADVANCED" = "y";
|
"PARTITION_ADVANCED" = "y";
|
||||||
"PRINTK_TIME" = "y";
|
"PRINTK_TIME" = "y";
|
||||||
"SQUASHFS" = "y";
|
"SQUASHFS" = "y";
|
||||||
|
@ -55,10 +55,6 @@ in {
|
|||||||
PROC_FS = "y";
|
PROC_FS = "y";
|
||||||
# s6-linux-init mounts this on /dev
|
# s6-linux-init mounts this on /dev
|
||||||
DEVTMPFS = "y";
|
DEVTMPFS = "y";
|
||||||
# some or all of these may be fix for "tmpfs: Unknown parameter 'mode'" error
|
|
||||||
TMPFS = "y";
|
|
||||||
TMPFS_POSIX_ACL = "y";
|
|
||||||
TMPFS_XATTR = "y";
|
|
||||||
};
|
};
|
||||||
checkedConfig = config;
|
checkedConfig = config;
|
||||||
};
|
};
|
||||||
|
@ -73,7 +73,7 @@ let
|
|||||||
run = {
|
run = {
|
||||||
file = ''
|
file = ''
|
||||||
#!${execline}/bin/execlineb -P
|
#!${execline}/bin/execlineb -P
|
||||||
${busybox}/bin/getty -l ${busybox}/bin/login 115200 /dev/console
|
${busybox}/bin/getty -l ${busybox}/bin/login 38400 /dev/console
|
||||||
'';
|
'';
|
||||||
mode = "0755";
|
mode = "0755";
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user