summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-01-08GIC driver in the qemu kernel is now GICv2gicv2cosarara
This makes it possible to use KVM on GICv2 hosts. Eg. on a raspberry pi4 linux host: qemu-system-aarch64 -M virt-2.12,gic-version=2 \ -cpu host -m 2G -smp 2 \ -bios u-boot.bin \ -drive file=9front-10277.arm64.qcow2,if=none,id=disk \ -device virtio-blk-pci-non-transitional,drive=disk \ -nic bridge,br=br0,model=virtio-net-pci-non-transitional \ -nographic -accel kvm Trying to use gic-version=3 on the same host would give: qemu-system-aarch64: KVM does not support GICv3 emulation
2023-11-19rio(1), rio(4): wctl /srv pipe is dead, mention 'none' attach (thanks unobe)Jacob Moody
2023-11-18fshalt: get rid of special nvme hack for disk shutdowncinap_lenrek
The kernel has been fixed, no need to exclude nvme drives anymore.
2023-11-18devip: make some symbols static, cleanupcinap_lenrek
2023-11-18mergecinap_lenrek
2023-11-18ip/ipconfig: allow "del" verb in addition to "remove"cinap_lenrek
2023-11-18devip: have findipifc() return rlock'd interface, allow to use "del" instead ↵cinap_lenrek
of "remove" for route and interface operations The findipifc() function is kind of useless when it returns an unlocked interface without also providing the ifcid as the interface can be subject to reconfiguration while unlocked. Instead, we make findipifc() keep the interface that it returns locked. This is also needed for v4source() and v6source() functions, which call ipv4local()/ipv4local() which in turn walk the local interface chain, and must do so under the rlock. Also, accept the "del" verb in addition to "remove" to keep it consistent, which also leads to much more consistent naming in the code. Abbreviating remove to "rem" can collide with abbreviations for remote.
2023-11-17cpp: run tests with 'mk test'Ori Bernstein
2023-11-12devuart: fix wrong opens count in case of uartenable() errorcinap_lenrek
2023-11-12devuart: make sure consuart was enabled before setting serialoqcinap_lenrek
2023-11-12devuart: handle software flow control (XON/XOFF) in devuart alonecinap_lenrek
No need for Physuart.kick() to check Uart.blocked state, already handled by devuart().
2023-11-12/sys/lib/dist/mkfile: include /386/mbr et al in disk imagesJacob Moody
2023-11-12devuart: cleanup uart console codecinap_lenrek
Some ports used a messy uarti8250 clone that had its own backdoor unbuffered uart interface (serialputc()...), which is really not needed at all, as devuart provides one with uartputc(), once one sets uartcons variable. There was some ugly interleaving of prints for mpinit, which was because uartreset() (called from chandevreset) would set serialoq ealy before the clocks are ticking, so the coming up processors would use the buffered uart while cpuidprint uses the unbufferd one... Instead, we set serialoq in uartini() (called from chandevinit) which is guaranteed to be done after mpinit has completed.
2023-11-12zynq: remove uartconsole() function, already done by devuart internallycinap_lenrek
2023-11-12zynq: fix print format in emmc drivercinap_lenrek
2023-11-11diff: make distproto copies testsJacob Moody
Using the .1 and .2 file extensions was causing distproto to conflate them for object files (from skip=) and not copy them to the install iso.
2023-11-11ape: libap: do not set objtype in amd64 mkfileJacob Moody
None of the other arch specific mkfiles do this and it causes a mk nuke run with any other objtype to always nuke amd64.
2023-11-11patch: delete files for tests before test runOri Bernstein
we shouldn't mutate the stae of checked in files in place in tests
2023-11-11bcm64, imx8: provide more flexible MPIDR_EL1 CPUID to machno mappingcinap_lenrek
Handle the mapping from MPIDR_EL1 to machno with a mpidindex() function, that uses a new MPIDMASK constant from mem.h that signifies the cpuid bits. This way, other affinity arrangements can be supported by just changing the MPIDMASK constant.
2023-11-11kernel: fix SEGMAXSIZE macro, force 64-bit resultcinap_lenrek
2023-11-10distproto: include /lib/ucd in releasesJacob Moody
The move from /lib/unicode to /lib/ucd was not reflected in the proto files.
2023-11-05nusb/ether: implement link status detection for smsc and lan78xxcinap_lenrek
2023-11-05nusb/ether: make stats file compatible to stats(8)cinap_lenrek
2023-11-05stats(8): drop 802.11, consider *ALL* /net/ether*/statscinap_lenrek
The 802.11 signal strength was specific to the pcmcia wavelan driver. I do not think anyone has one at this point. Ethernet used to only consider /net/ether0/stats file, but with usb ethernets or multiple ethernet devices it seems misleading and arbitrary. Instead, sum up all the statistics counters of all ethernet devices found and preset that for the graph.
2023-11-05ircrc: fix pong message (thanks mkf)Ori Bernstein
when connecting to ngircd, we can get disconnected with a 'Spoofed prefix' message; this fixes the problem.
2023-11-05bcm, bcm64: handle disk activity led from sdmmccinap_lenrek
We don't want to blink the disk activity led for wifi, so handle the disk activity LED from sdmmc when it is actually used as a disk.
2023-11-05Add missing sd/mmc controller dependencies to /sys/src/9/port/sd.hcinap_lenrek
2023-11-05sdhost: remove coherence() for RD() and cleanupcinap_lenrek
2023-11-05i2cbcm: use core clock rate from vcore instead of hardcoding 250Mhzcinap_lenrek
2023-11-05pi3: implement sdhost controller driver so we can use wifi alwayscinap_lenrek
2023-11-04ether4330: annex sdM for emmc (changed order)cinap_lenrek
2023-11-04pi3, pi4: change the order of emmc and sdhc for ether4330cinap_lenrek
Keep emmc as sdM and sdhc as sdN (pi4 only), so ether4330 works in both pi3 and pi4 configurations. ether4330 is commented out in pi3 config as we'r currenly lacking a sdhost driver so we loose the sdcard if we use it.
2023-11-04plan9.ini(8): document $wpaoptscinap_lenrek
2023-11-04arm64: remove hz/mhz from conf, not needed.cinap_lenrek
2023-11-049/boot/net.rc: allow setting additional flags to aux/wpa with $wpaopts in ↵cinap_lenrek
plan9.ini
2023-11-04devsd, sdmmc, ether4330: improve infrastructure for sdiocinap_lenrek
devsd/sdmmc: provide annexsdio() function to take over a sdio controller from devsd. this removes the tight coupling between ether4330. devsd: get rid of legacy function pointer in SDifc struct. ether4330: cleanup code, fix bugs, set bus speed to 50Mhz, provide multicast and promiscuous mode support.
2023-11-02ndb/dns: fix memory leak in dnzone()cinap_lenrek
2023-11-01ndb/dns: add -L flag for local-recursive servercinap_lenrek
One might think that specifying the listen address is enougth to prevent running a open resolver, but this does not work for global IPv6 addresses. The -L flag allows answering recursive queries ONLY for IP addresses that are directly reachable on a interface.
2023-11-01ndb/dns: better handling of extended response codecinap_lenrek
2023-10-30ndb/dns: make sure theres only a single Topt option in getednsopt().cinap_lenrek
2023-10-30ndb/dns: implement EDNS(0) extension (rfc6891)cinap_lenrek
To properly handle TCP fallback for servers, we have to avoid sending responses too big for the client to accept. We used to accept up to 8K of UDP requests (and responses when resolving). Instead, we now advertise a UDP response size of 1232 (assuming 1280 MTU) to the client and take even smaller values into account from clients (tho not smaller than 512). This makes sure we truncate packets, signaling the client that it must retry with TCP. Note that we still accept up to 8K of UDP data regardless (for lucky clients).
2023-10-29git/branch: avoid null list errorsOri Bernstein
2023-10-29arm64: mem.c doesnt need sysreg.hcinap_lenrek
2023-10-29bcm64: dont need sysreg.h in mem.ccinap_lenrek
2023-10-29bcm64: use generic 9/arm64/mmu.ccinap_lenrek
2023-10-29imx8: share generic arm64 mmu.ccinap_lenrek
Split layout specific code into mem.c from mmu.c, so generic mmu code can be shared.
2023-10-29bcm64: remove sysreg.ccinap_lenrek
2023-10-29bcm64: use generic 9/arm64/* filescinap_lenrek
2023-10-29imx8: use generic 9/arm64/sysreg.hcinap_lenrek
2023-10-29imx8: use generic 9/arm64/^(init9.s rebootcode.s)cinap_lenrek