summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-05-06dist/mkfile: add *.pi3.img target for ARM64 raspberry pi3cinap_lenrek
2019-05-05lib: update pci databasemischief
2019-05-05bootrc: fix $rootdir and $rootspec handling (thanks lucio)cinap_lenrek
we did not interpret the $rootdir and $rootspec environment variables right. $rootdir is what gets bound to / (usually /root) and $rootspec is the mountspec of /root.
2019-05-05bcm: make sure fiq is on enabled on cpu0cinap_lenrek
2019-05-05bcm64: provide idlehands() functioncinap_lenrek
2019-05-05bcm64: get rid of usb workaround delaycinap_lenrek
2019-05-05usbdwc: enable Slowbuilkin workarround, improve split transaction timing, ↵cinap_lenrek
handle erroring sleep(), debugging i'v been seeing the error condition described above in the Slowbulkin comment. so i'm enabling the work arround which seems to fix the lockup. in the split transaction case where we want to start the transaction at frame start, acquire the ctlr lock *before* checking if we are in the right frame number. so the start will happen atomically. checking the software ctlr->sofchan instead of checking the interrupt mask register seems to be quicker. setting the haint mask bit for the chan under ctlr lock in chanio() instead of chanwait() avoids needing to acquire the ctlr lock twice. mask wakechan bits with busychan bitmap in interrupt handlers so we will not try to wake up released chans by accident. sleep() and tsleep() might get interrupted so we have to release the split qlock in the split transaction case and in all cases, make sure to halt the channel before release. add some common debug functions to dump channel and controller registers.
2019-05-05libc: fix NaN check precedence bug in modf() (thanks BurnZeZ)cinap_lenrek
2019-05-04acid: add arm64 supportcinap_lenrek
2019-05-03rootstub: add /sys/lib/dist/ndb/dhcp/cinap_lenrek
2019-05-03pc kernel: remove countpagerefs() (thanks BurnZeZ)cinap_lenrek
forgot to commit this...
2019-05-03kernel: exec support for arm64 binariescinap_lenrek
2019-05-03bcm64: add experimental work in progress arm64 kernel for raspberry pi 3cinap_lenrek
2019-05-03bcm: don't call nil on PADDR() in dmaaddr(), return busdram dummy addresscinap_lenrek
2019-05-03bcm: move fiq saved pc adjust into lexception.s so it can be shared with arm64cinap_lenrek
2019-05-03uartpl011: dont touch line control while uart is enabledcinap_lenrek
2019-05-03ktrace: arm64 supportcinap_lenrek
2019-05-03arm64: add mkfilecinap_lenrek
2019-05-03python: arm64 supportcinap_lenrek
2019-05-03gs: arm64 supportcinap_lenrek
2019-05-03gs: avoid stupid shifts by casting to uint64_tcinap_lenrek
2019-05-03ape: initial support for arm64cinap_lenrek
2019-05-03libthread: initial support for arm64cinap_lenrek
2019-05-03libmp: add dummy mkfile for arm64cinap_lenrek
2019-05-03libsec: dummy mkfile for arm64cinap_lenrek
2019-05-03libmach: initial arm64 supportcinap_lenrek
2019-05-03libc: initial arm64 supportcinap_lenrek
2019-05-017l: add missing AFMOVD with EXT/AUTO/LOREG operands to optabcinap_lenrek
2019-05-01kernel: get rid of checkpagerefs() debuggingcinap_lenrek
was only implemented by the pc kernel. does not account pages used by the mount cache.
2019-05-01kernel: export freepages() function so it can be used in mmurelease()cinap_lenrek
2019-05-01kernel: include lock pointer in error report, stop spamming lockloop prints ↵cinap_lenrek
when we are panicing
2019-05-01kernel: insert memory barrier in the scheduler before setting up->mach = nilcinap_lenrek
we have to ensure that all stores saving the process state have completed before setting up->mach = nil in the scheduler. otherwise, another cpu could observe up->mach == nil while the stores such as the processes p->sched label have not finnished.
2019-05-01[5678vq]c: fix .safe node type for *FUNC() = *FUNC() sugencinap_lenrek
2019-05-01vmx: build vmx only for 386 or amd64cinap_lenrek
vmx uses non portable word unpacking macros, breaking the build for arm64. vmx only works on a pc anyway. this forces objtype to 386 on these machines, similar to what the kernel mkfiles do.
2019-04-27ether8169: fix thinkpad A485 ethernet (thanks mischief)cinap_lenrek
attached is a patch to fix receive in the 8169 chip on my thinkpad A485. i'm not sure why, but the same thing was done in 3d56a0fc4645 for Macv45. nick
2019-04-257c: don't emit SXTW for non-register source operandcinap_lenrek
2019-04-23distproto: add /lib/news/ (thanks lyndon)cinap_lenrek
2019-04-227l: there is no BIC* $bimm variantcinap_lenrek
2019-04-19usbxhci: make stuck usb transactions interruptable.cinap_lenrek
some control transactions can confuse the xhci controller so much that it even fails to respond to command abort or STOPEP control command. with no way for us to abort the transaction but a full controller reset. we give the controller 5 seconds to abort our initial transaction and if that fails we wake the recover process to reset the controller. thanks mischief for testing.
2019-04-19distproto: add /lib/ndb/dhcp/ directory (thanks lyndon)cinap_lenrek
2019-04-18nusb/usbd: stop sending port enable commandsmischief
from what i can tell, sending port enable is a spec violation. this fixes a hang during hub enumeration in the ASMedia xhci controller when i plug in my IBM UltraNav SK-8845. also, send unsuspend when port is suspended instead of enable. from the USB 2 specification: 11.24.2.7.1.2 PORT_ENABLE ... This bit may be set only as a result of a SetPortFeature(PORT_ENABLE). ... The hub response to a SetPortFeature(PORT_ENABLE) request is not specified.
2019-04-177l: deal with huge (negative or > 24bit) register offsets, fix LACON, avoid ↵cinap_lenrek
DWORD in constant pool when we can sign extend
2019-04-177c: fix long to vlong/pointer conversion, avoid negative immediate offsetscinap_lenrek
we have to explicitely convert to vlong by sign or zero extending as not every operation leaves a proper zero/sign extended result in the register. for example NEGW will zero extend, breaking negative int offsets on pointers. we explicitely insert SXTW or MOVWU instructions which the peephole optimizer takes out again when it is safe todo so. when promoting constant offsets to immediate offsets, make sure the offset will be in range. otherwise the linker will produce not so optimal pointer arithmetic instructions to calculate the offset.
2019-04-16devsd: fix sddelpart() AGAINcinap_lenrek
the previous "fix" missed to advance pp so after we hit a invalid partition all following partitions would be ignored.
2019-04-16awk: fix nextfile crash (thanks leetspete)cinap_lenrek
to reproduce the bug: term% awk 'BEGIN{nextfile; nextfile;}' sys: trap: fault read addr=0x10 pc=0x00019a3a awk 6584: suicide: sys: trap: fault read addr=0x10 pc=0x00019a3a
2019-04-15devsd: fix panic when using "delpart" to remove a partition that was already ↵BurnZeZ
removed
2019-04-13pc: audiohda: recognize AMD Family 17h hd audio controllermischief
2019-04-13pc: devarch: recognize AMD Ryzen modelmischief
2019-04-13pc: pci: add AMD FCH LPC bridge to southbridgesmischief
2019-04-13nusb/usbd: fix dump %U formattermischief