Commit Graph

30 Commits (main)

Author SHA1 Message Date
Daniel Barlow f020d5b25d qemu mips: enable rebooting 2023-12-26 21:58:18 +00:00
Daniel Barlow 9c894bdabf add tftpboot test for mips 2023-12-21 19:25:45 +00:00
Daniel Barlow 317457f582 extract common config for qemu devices into module 2023-12-09 17:10:41 +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 c563a6451f add missing param 2023-11-18 14:20:59 +00:00
Daniel Barlow f9f4d97bb8 convert flash params to int 2023-11-12 20:39:06 +00:00
Daniel Barlow 262efaabe6 doc: put all the u-boot/serial stuff in one place to link from 2023-11-12 17:14:33 +00:00
Daniel Barlow 7cfb92e3ce more doc 2023-11-10 21:17:20 +00:00
Daniel Barlow c40eef25d6 qemu: use phram instead of block2mtd 2023-11-05 19:13:51 +00:00
Daniel Barlow e6cb5e319b extract NETDEVICES kconfig to kernel.nix module 2023-11-05 11:31:23 +00:00
Daniel Barlow f57997c605 remove explicit MTD_BLKDEVS, is selected by MTD_BLOCK 2023-09-30 21:45:50 +01:00
Daniel Barlow 7e13eda490 add hardware device descriptions to doc
most of the text is recycled and follows no particular format
2023-09-28 12:17:30 +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 9f87fd8625 import arch in qemu device config 2023-09-20 21:31:38 +01:00
Daniel Barlow 4389fa15f7 rename mips-vm as run-liminix-vm 2023-09-20 18:33:20 +01:00
Daniel Barlow d3dc9752f8 swap qemu network interfaces around
lan and wan were backwards, it looks like
2023-09-01 17:54:15 +01:00
Daniel Barlow 92970e8ed0 qemu: use service-based-module for network interfaces 2023-08-31 23:50:42 +01:00
Daniel Barlow efa1919e04 move squashfs kernel options into module 2023-08-30 22:59:28 +01:00
Daniel Barlow 2e50368bd2 rename config.outputs to config.system.outputs
New rules: everything under "config" that isn't actually configuration
(e.g. build products) will in future live in config.system. This is
the first step.
2023-07-13 19:24:59 +01:00
Daniel Barlow 29c7af5892 set qemu flash erase block size 2023-04-10 22:57:51 +01:00
Daniel Barlow 342c87b256 qemu: boot from mtd using mtd2block
doesn't make much difference for squashfs but this will make it much
simpler to test jffs2/ubifs
2023-04-04 21:07:02 +01:00
Daniel Barlow e0ea576674 rename "device" config tree as "hardware"
we are also using "device" for "network device" (as in eth0,
wlan0 etc) so this makes it a bit less confusing perhaps
2023-03-03 22:52:33 +00:00
Daniel Barlow adc198b3af WIP push to see what passes 2023-03-01 22:24:58 +00:00
Daniel Barlow 751920c8fc qemu: switch to building wireless as kernel modules
This is a hefty change

* add support for kernel backports project
* build wireless stack/drivers as modules from a backported kernel
* create a service to load/unload the modules
2023-02-22 18:41:41 +00:00
Daniel Barlow dd8c8edd9c rewrite phram boot to use correct sizes and offsets 2023-02-15 22:06:28 +00:00
Daniel Barlow 8cead61740 convert devices from overlay to module
this makes it possible for devices to stash things in
`config` (e.g. pathname to DTS) that can later be overwritten
(even by the end user)
2023-02-10 17:54:33 +00:00
Daniel Barlow 76243d306c remove checkedConfig, check all the config 2022-10-19 22:09:38 +01:00
Daniel Barlow f1b7780537 speed up kernel build
by having two separate derivations for patching the kernel source tree
and building it, we have to copy said source trees from one store
location to another which takes non-neglible time on spinning rust
(literally minutes on my machine). Replace with a single derivation
that can do more things on one tree in-place
2022-10-19 17:34:22 +01:00
Daniel Barlow 3ef30056c4 trim down the qemu kernel config
just retain the options we need to pass the tests
2022-10-18 22:28:07 +01:00
Daniel Barlow 77922c875b add per-device overlay
presently this is used to reference the appropriate kernel and (if
needed) openwrt source trees, but I would not be surprised if we find
other uses
2022-10-15 18:55:33 +01:00