Daniel Barlow
2152a3f207
a test for liminix-rebuild
...
it's hacky as Selby, but it's better than no test
2023-12-29 22:11:04 +00:00
Daniel Barlow
ec1ff283da
vmdisk output: allow extra params to run.sh
2023-12-29 18:12:57 +00:00
Daniel Barlow
0bf98c5243
add output for u-boot
2023-12-29 17:07:47 +00:00
Daniel Barlow
dc42969ef6
dribble
2023-12-29 16:54:35 +00:00
Daniel Barlow
1a041392aa
liminix-rebuild: add --no-reboot param
2023-12-27 17:47:42 +00:00
Daniel Barlow
6469408d5f
run-liminix-vm: don't reverse order of --flags params
2023-12-26 21:59:00 +00:00
Daniel Barlow
f020d5b25d
qemu mips: enable rebooting
2023-12-26 21:58:18 +00:00
Daniel Barlow
e5cbc2b86b
WIP add systemConfiguration "install" command
...
which copies the init stuff (whatever it is) from store to /persist
instead of making liminix-rebuild have to know what the files are.
This is principally to ease making a system configuration in /mnt or
similar when operating in a rescue/recovery scenario, and we
don't want to liminix-rebuild because it will reboot
2023-12-23 23:53:47 +00:00
Daniel Barlow
29f35cb902
min-copy-closure: add --root to copy to non-standard place
2023-12-23 23:12:40 +00:00
Daniel Barlow
dbf1ecdcb7
swap zimage and dtb in ram
...
kernel uncompression code creates a stack directly
after the compressed payload, which was trashing the dtb
2023-12-23 15:38:32 +00:00
Daniel Barlow
aecc44aaa0
run-liminix-vm: --flag parameter passes arg straight to qemu
2023-12-23 15:32:59 +00:00
Daniel Barlow
1042be912c
turris omnia: switch to regular tftpboot output
...
now it does zimage and rootfs compression
2023-12-23 00:05:34 +00:00
Daniel Barlow
c931d84828
tftproot: put command line in dtb
2023-12-23 00:05:34 +00:00
Daniel Barlow
64a3f50248
tftpboot: support compressed root
2023-12-23 00:05:34 +00:00
Daniel Barlow
c5e9fcecc7
uninit var
2023-12-23 00:05:34 +00:00
Daniel Barlow
f25c41b4d2
tftpboot: move things around in memory
...
new layout has rootfs followed by kernel and dtb, so that we
know the rootfs start and size to embed them into the dtb instead
of having to use dummy values and fill them in afterwards
2023-12-23 00:05:34 +00:00
Daniel Barlow
bfa68d9c55
remove unused variable
2023-12-23 00:05:34 +00:00
Daniel Barlow
ff0ef825a6
tftpboot: add option for kernel image format
2023-12-23 00:05:34 +00:00
Daniel Barlow
44a0cf364b
remove boot-scr output, merge into tftpboot
...
(1) it creates two things (script and dtb); (2) it's a bit pointless
without the tftpboot output it depends on
2023-12-22 21:37:15 +00:00
Daniel Barlow
c7b2733bea
tftpbootlz: put command line in dtb
...
this makes boot.scr substantially shorter, in anticipation of using it
for first boot of the omnia and not wanting to embed an essay in
a setenv value
2023-12-22 20:09:44 +00:00
Daniel Barlow
dfbc72dd51
tftpboot test: fix reserved-memory dt for aarch64
2023-12-22 17:37:53 +00:00
Daniel Barlow
9f851b229c
inadvertently committed, remove
2023-12-22 16:25:54 +00:00
Daniel Barlow
fe2d41a2b1
wlan test: robustify, tail log on failure
2023-12-22 15:49:43 +00:00
Daniel Barlow
9b92bf8447
gazing into the abyss
2023-12-22 15:30:01 +00:00
Daniel Barlow
5f9ffa804f
better detect test succeeded
2023-12-22 15:29:33 +00:00
Daniel Barlow
231c2cef03
make reserved-memory work on mips, and improve test
2023-12-21 22:21:20 +00:00
Daniel Barlow
dbb82339bd
tftpboot test: fail if reserved-memory node is wrong
2023-12-21 21:13:16 +00:00
Daniel Barlow
4a606a4b19
tidy up kernel patch
2023-12-21 21:12:55 +00:00
Daniel Barlow
9c894bdabf
add tftpboot test for mips
2023-12-21 19:25:45 +00:00
Daniel Barlow
a962f18369
run-liminix-vm: map rootfs file iff --phram-address supplied
2023-12-21 19:25:45 +00:00
Daniel Barlow
9a29a042e8
fix tftpboot test on boards without autoboot, swap wan/lan
...
This is for MIPS. I spent a while investigating why the second virtio
net device doesn't function in qemu mips malta u-boot, but with no
success. Use the first one instead.
2023-12-21 19:25:16 +00:00
Daniel Barlow
46926a94db
dont need phram-address param for tftpboot test
...
the phram setup for this test is all passed from
u-boot to the kernel
2023-12-21 19:24:58 +00:00
Daniel Barlow
ab0631c555
qemu mips expects different file size for u-boot
2023-12-19 18:48:28 +00:00
Daniel Barlow
32c13c46bb
support aarch64 in tftpboot test
2023-12-19 12:12:12 +00:00
Daniel Barlow
e5db2691e5
add CI job to test tftpboot
2023-12-18 22:42:29 +00:00
Daniel Barlow
9ca9723c9d
make rootfs work with tftpbootlz
2023-12-17 19:39:26 +00:00
Daniel Barlow
d1e2d525a4
tftpboot omnia using bootz not bootm
...
because kernel size is now beyond the u-boot size
limit for bootm
2023-12-16 23:40:55 +00:00
Daniel Barlow
f4f4387861
well, we're back to where we can boot again
...
so that's good
2023-12-16 23:40:55 +00:00
Daniel Barlow
55fa9992d4
WIP
2023-12-13 21:54:15 +00:00
Daniel Barlow
95d9e014fb
omnia: fix paths
2023-12-13 21:52:28 +00:00
Daniel Barlow
80528376a2
move o.systemConfiguration to initramfs module
...
as far as I can tell, we define it identically in every module
that uses initramfs
2023-12-11 21:47:15 +00:00
Daniel Barlow
d707345891
rename rootfsFiles to rootdir, add bootablerootdir
2023-12-11 21:21:12 +00:00
Daniel Barlow
133b64613d
link to NEWS file
2023-12-11 20:18:28 +00:00
Daniel Barlow
c6c41e331e
let's have a place to document breaking changes
2023-12-11 19:09:56 +00:00
Daniel Barlow
b878d6481a
the first rule of thought club
2023-12-11 19:09:19 +00:00
Daniel Barlow
601bb289ee
rename diskimage to mbrimage
2023-12-11 19:09:19 +00:00
Daniel Barlow
876bd7d8ce
rename flashimage to mtdimage
2023-12-11 19:09:18 +00:00
Daniel Barlow
39c338d710
rm vanilla-configuration-hw.nix, no longer needed
2023-12-11 19:09:18 +00:00
Daniel Barlow
6c8b2bbb83
add retries to wlan test
2023-12-10 18:35:14 +00:00
Daniel Barlow
4ddce6e926
fix the tests we broke
2023-12-10 17:12:57 +00:00
Daniel Barlow
5eeb277564
move output module imports example -> device
...
The outputs available are a characteristic of the device, not
the example.
2023-12-10 16:38:53 +00:00
Daniel Barlow
c81e7c4d35
move all output modules to subdirectory, trash standard.nix
...
standard.nix isn't, is the essence here. Not all devices
support flashimage as it is currently defined - some
have diskimage, some have neither
2023-12-10 15:23:12 +00:00
Daniel Barlow
53fed8839a
fix min-copy-closure for new run-liminix-vm syntax
2023-12-09 17:35:21 +00:00
Daniel Barlow
ebaa7b2bcb
unbreak fennel test
2023-12-09 17:10:41 +00:00
Daniel Barlow
15d570f749
ignore devices/families when extracting docs
2023-12-09 17:10:41 +00:00
Daniel Barlow
bb8e974c2b
hard thinking or hardly thinking
2023-12-09 17:10:41 +00:00
Daniel Barlow
317457f582
extract common config for qemu devices into module
2023-12-09 17:10:41 +00:00
Daniel Barlow
07e66c462b
use virtio-bk-pci instead of virtio-bk-device
...
u-boot is happy with either but Linux can autodetect the PCI-based
hardware
2023-12-09 15:53:40 +00:00
Daniel Barlow
4229b42d82
make config.hardware.dts.src nullable
...
This is for QEMU where we won't have to provide a dtb because the
device tree is built by the platform according the (emulated) hardware
present.
Maybe in future there will be other hardware devices where we
don't need to provide a dtb.
2023-12-09 15:51:30 +00:00
Daniel Barlow
03b17fa3ed
add zImage output
2023-12-07 22:31:26 +00:00
Daniel Barlow
a8891461aa
use devtmpfs in initramfs
...
static device nodes don't work with virtio
2023-12-07 20:03:03 +00:00
Daniel Barlow
5adfb0230f
WIP generate bootable disk image with partition table
2023-12-05 23:54:09 +00:00
Daniel Barlow
b519bd15df
pretty-print the qemu command line
...
well, pretty-ish
2023-12-05 17:32:18 +00:00
Daniel Barlow
f2daa0b669
exclude rootfs region from kernel-visible ram
2023-12-05 17:32:18 +00:00
Daniel Barlow
3f74fad966
don't double-json the command line
2023-12-05 17:32:18 +00:00
Daniel Barlow
ed925588f7
extract common code to make root filesystem hierarchy
...
which is then used by the filesystem image creators (ubifs, ext4,
jffs2 etc)
2023-12-05 17:32:18 +00:00
Daniel Barlow
f08c10c8ba
patch u-boot to add ubifs support
...
not that we're using it yet
2023-12-04 23:39:27 +00:00
Daniel Barlow
d25a804f13
test wlan iun armv7
2023-12-04 23:37:39 +00:00
Daniel Barlow
0242cec977
run-liminix-vm: remove unneeded second copy of pad code
2023-12-04 23:37:39 +00:00
Daniel Barlow
5a2963543e
thonk
2023-12-04 23:29:36 +00:00
Daniel Barlow
98d3336926
rewrite run-liminix-vm as a fennel program
...
the effect of shell quoting/word splitting rules was reaching
completely unreasonable, insofar as I was unable to reason about it
2023-12-03 22:51:39 +00:00
Daniel Barlow
cb6ebbdc60
alphabetize derivations in overlay
2023-12-02 17:08:59 +00:00
Daniel Barlow
bb335050fd
derivation that produces /boot
2023-12-02 15:31:55 +00:00
Daniel Barlow
395f624338
think
2023-12-02 15:31:09 +00:00
Daniel Barlow
e518ab667b
make job control work in console shell
2023-11-29 19:49:51 +00:00
Daniel Barlow
382128b6cf
omnia: make wan interface work
2023-11-28 21:38:45 +00:00
Daniel Barlow
c803772074
omnia: add hardware ethernet and switch config
2023-11-27 21:37:15 +00:00
Daniel Barlow
32c24f3809
switch pppoe test back to qemu mips
...
while we find out why it fails
2023-11-26 23:18:24 +00:00
Daniel Barlow
cc73a98419
support setting network device names
...
this means that net devices in devices/foo/default.nix can be
specified by their sysfs paths (instead of by "eth0" and "eth1" that
may change from one kernel version to the next) and given mnenomic
names that are helpful for the hardware. Like "wan" and "lan[1..4]"
2023-11-26 23:15:28 +00:00
Daniel Barlow
e2ea145ce5
wip
2023-11-26 22:43:56 +00:00
Daniel Barlow
b036a161f5
thonk
2023-11-26 22:43:31 +00:00
Daniel Barlow
31a2969972
omnia: add support for wifi
...
- ath9k and ath10k, both on PCI bus (which can be enumerated, hence
they don't need to be in device tree)
- need to disable PCIe ASPM for the ath9k to work
- appropriate firmware files added for ath10k
2023-11-26 13:25:01 +00:00
Daniel Barlow
76a370cc92
omnia kernel: add watchdog
...
it's enabled by u-boot so we need at least this minimal capability
otherwise the system reboots after three minutes
2023-11-26 13:07:44 +00:00
Daniel Barlow
bf9f264f0c
update TODO
2023-11-25 18:49:26 +00:00
Daniel Barlow
e35b61b68c
mac80211: support ath9k pci variant
...
if you ask for "ath9k" you get AHB, but if you ask for "atk9k_pci"
now you get PCI. Note that the kernel module name is the same in
both cases.
2023-11-25 18:39:15 +00:00
Daniel Barlow
a8f98ccfe7
use linuxArch instead of case statement
2023-11-25 18:16:20 +00:00
Daniel Barlow
27ce61ae4e
add bootable config for Turris Omnia
2023-11-24 23:29:12 +00:00
Daniel Barlow
3f0f621809
openwrt patches for mvebu (armv7l)
2023-11-24 22:43:58 +00:00
Daniel Barlow
b0ae314df4
stuff
2023-11-24 22:33:42 +00:00
Daniel Barlow
d789a23113
twiddle timeouts
2023-11-24 21:32:53 +00:00
Daniel Barlow
5ba14fd915
add levitate package
...
sets up a chroot system in tmpfs that will be executed on the next
reboot to enable system maintenance without the regular filesystems
mounted
2023-11-23 22:21:03 +00:00
Daniel Barlow
3df34428d6
remove unneeded login and getty applets
2023-11-23 20:01:13 +00:00
Daniel Barlow
62c788eb86
add hook to run maintenance mode instead of rebooting
2023-11-22 00:05:55 +00:00
Daniel Barlow
bab6d346a8
add .../s6/bin to PATH for shutdownd
2023-11-22 00:05:03 +00:00
Daniel Barlow
a202ae476a
extract console redirection stuff from "quit" function
...
so we can use it for scripts that don't reboot at their end
2023-11-21 23:32:37 +00:00
Daniel Barlow
7c9297f91d
use shotdown instead of hpr in .s6-svscan/SIGFOO
...
this is to bring them into line with what more recent
s6-init-linux-maker creates
2023-11-21 23:19:00 +00:00
Daniel Barlow
a0bd250963
switch from getty to root shell on console
...
this just makes things marginally simpler
2023-11-21 23:09:48 +00:00
Daniel Barlow
c8b2d58dd3
exit 0 on service down even if no outputs to delete
2023-11-21 17:25:50 +00:00
Daniel Barlow
e5223f093f
kernel.src may be a path not just a package
...
this makes it easier to hack the kernel locally and test things
2023-11-18 14:21:18 +00:00
Daniel Barlow
c563a6451f
add missing param
2023-11-18 14:20:59 +00:00