forked from dan/liminix
1
0
Fork 0
Commit Graph

232 Commits

Author SHA1 Message Date
Daniel Barlow ebaa7b2bcb unbreak fennel test 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 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 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 0242cec977 run-liminix-vm: remove unneeded second copy of pad code 2023-12-04 23:37:39 +00:00
Raito Bezarius 644f42c35e kernel: make the build FSAT on FSAT computers
I have 128 threads, builds should take only but a moment!
2023-12-03 23:05:12 +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 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 3f0f621809 openwrt patches for mvebu (armv7l) 2023-11-24 22:43:58 +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 c8b2d58dd3 exit 0 on service down even if no outputs to delete 2023-11-21 17:25:50 +00:00
Daniel Barlow f9f4d97bb8 convert flash params to int 2023-11-12 20:39:06 +00:00
Daniel Barlow abfb35a231 and entryPoint 2023-11-12 18:50:47 +00:00
Daniel Barlow 315907de98 convert hardware loadAddress to int 2023-11-12 18:47:31 +00:00
Daniel Barlow 6489a39424 qemu armv7 2023-11-05 23:19:11 +00:00
Daniel Barlow c40eef25d6 qemu: use phram instead of block2mtd 2023-11-05 19:13:51 +00:00
Daniel Barlow c5c5f1687a patch qemu to load uncompressed ARM kernels at correct offset 2023-11-05 11:32:47 +00:00
Daniel Barlow 824536f9b3 in uimage FIT, honour ${arch} 2023-11-05 11:31:28 +00:00
Daniel Barlow c3ccee6506 preinit: print errno (in hex, it's easier) for failures 2023-11-05 11:27:57 +00:00
Daniel Barlow 6db982f25f preinit: pause before exiting
as explained in the comment, this is to give us a
chance to see error messages before the kernel panics
2023-11-05 11:27:57 +00:00
Daniel Barlow 86a5224f3c preinit: fix compiler warnings 2023-11-05 11:27:43 +00:00
Daniel Barlow 155a29d9b3 preinit: strip trailing newline(s) on /proc/cmdline 2023-11-05 11:27:34 +00:00
Daniel Barlow d2f517a4e9 preinit.c: reindent 2023-10-19 21:02:18 +01:00
Daniel Barlow 0f38ee0e9c remove PREINIT_USE_LIBC option as it is now the only option 2023-10-19 18:59:02 +01:00
Daniel Barlow 61dc5beca8 preinit: parse rootfstype from kernel command line 2023-10-19 18:56:09 +01:00
Daniel Barlow 8798ee9830 partial fix for timeout handling
1) "Unknown transfer id" message was because the local variable "tid"
is not a transfer id, it is a sequence number  - so the check was
actually comparing expected vs actual acknowledged sequence number,
not TID.  It's still a problem if we get the wrong one, but it
indicates a lost packet (so we should resend) not a packet that was
sent from somewhere else.

2) if the ACK packet has not been received, our retry should involve
_resending_ it, not just trying to wait for it again.

3) I have removed the timeout condition for terminating the resend
loop, because in practice (assuming both ends have the same timeout
setting) all it did was ensure that the loop only ran once. The
timeout is supposed to regulate how long we wait for before retrying
(it doesn't do this, we wait indefinitely), not how long we wait for
before giving up.
2023-10-18 23:35:23 +01:00
Daniel Barlow 629914f65e initial support for ubifs 2023-10-16 19:55:17 +01:00
Daniel Barlow 0693cf23d8 preinit: improve error logging for fork_exec 2023-10-12 19:00:57 +01:00
Daniel Barlow c341eb46b6 use hostPlatform.linuxArch in kernel derivation 2023-10-12 18:59:45 +01:00
Daniel Barlow 1a369ff3bf preinit: remove no-longer-used mips assembly 2023-10-12 18:57:54 +01:00
Daniel Barlow bd20f3e419 uimage: make fit optional 2023-10-09 19:47:57 +01:00
Daniel Barlow c18f07f02f aarch64: make tftpboot work
- patch dtb to add reserved-memory stanza for the phram device to use
  (aarch64 does not accept memmap= command line option)

- patch phram driver to use memremap() instead of ioremap() as
  ioremap can't be used for system ram on arm devices
2023-10-09 19:47:57 +01:00
Daniel Barlow 269e972970 use FIT images not appended DTB for aarch64 uimage 2023-10-07 22:52:09 +01:00
Daniel Barlow 2a5669c2cd enable openwrt mediatek family patches 2023-10-07 22:42:31 +01:00
Daniel Barlow b01840fa7f add support for mt7915, mt7615 in mac80211 package
mt7915 additionally requires working MTD, so that it can
read calibration data from flash
2023-10-07 22:29:38 +01:00
Daniel Barlow abd01a7809 apply mtdpslit patch only for openwrt kernel
it doesn't apply to mainline because there's no mtdsplit
in mainline
2023-09-26 18:40:22 +01:00
Daniel Barlow dfe7228b99 fix jffs2 mtd partition splitting on little-endian CPU 2023-09-26 16:43:03 +01:00
Daniel Barlow 3205a38ac9 mac80211 use correct arch 2023-09-24 00:17:32 +01:00
Daniel Barlow 119d6ad379 pkgconfig is now pkg-config 2023-09-21 12:25:35 +01:00
Daniel Barlow be22fbbb0a bootable aarch64 liminux with qemu
I may have broken the run-liminix-vm command a bit for MIPS due to
necessary changes in how we pass the command line.  If CI isn't green
for this commit and youre trying the worked examples, I suggest
reverting to the commit before this one.
2023-09-20 22:55:51 +01:00
Daniel Barlow 57eb55de58 found another mips-vm to rename 2023-09-20 19:13:04 +01:00
Daniel Barlow 4389fa15f7 rename mips-vm as run-liminix-vm 2023-09-20 18:33:20 +01:00
Daniel Barlow 4f29bdd3ed detect arch in kernel and uimage
also move kernel builder to pkgs/

FIXME we need to straighten out the mess in calling
dtb.nix/uimage.nix
2023-09-20 18:26:33 +01:00
Daniel Barlow f7b30939b5 remove service-state when service exits 2023-09-13 22:49:00 +01:00
Daniel Barlow 106a429b3d odhcp-script only write addresses if there are any 2023-09-13 17:51:07 +01:00