summaryrefslogtreecommitdiff
path: root/sys/arch
AgeCommit message (Collapse)Author
2020-04-28Use the same inittodr()/resettodr() implementation as on arm64/armv7/sparc64Mark Kettenis
and move it to the end of machdep.c. Rework the actual implementation for te MC14818 compatible RTC into something that can be used as a todr_handle. ok mpi@
2020-04-28Use the same inittodr()/resettodr() implementation as on arm64/armv7Mark Kettenis
and move it to the end of machdep.o. ok mpi@
2020-04-27Enable tcpci(4).Patrick Wildt
2020-04-27Add bcmclock(4) and bcmmbox(4). Fixes a hang because the clock for sdhc(4)Mark Kettenis
can't be enabled.
2020-04-27Remove reset hack; these days the U-Boot we ship for the CuBox-i isMark Kettenis
perfectly happy without it. ok patrick@
2020-04-27Bring inittodr()/resettodr() in line with arm64 and move it toMark Kettenis
arrm32_machdep.c. ok mpi@
2020-04-27Move inittodr() and resettodr() to the end of the file to easy move an MIMark Kettenis
implementation. ok mpi@
2020-04-27Add gpio support to bcmgpio(4) and make gpio(4) attach such that GPIOsMark Kettenis
that aren't claimed by kernel drivers can be used from userland. ok sthen@
2020-04-27fix SDHC_DEBUG build, remove procname printf'sians
ok kettenis@
2020-04-26Enable imxpciephy(4).Patrick Wildt
2020-04-26Sanitize inittodr()/resettodr() implementation.Mark Kettenis
- move implementations next to eachother in the same file - remove pointless call to resettodr() in inittodr() - use OpenBSD define to get a minimum plausible time - if RTC time is before minimum plausible time, reject it - don't print "clock gained N days" on ramdisk Hopefully this implementation can serve as a model for unification into an MI implementation. ok mpi@
2020-04-25Add bcmbsc(4), a driver for the Broadcom Serial Control (BSC) controller.Mark Kettenis
This is really just an I2C controller. ok patrick@
2020-04-25Enable maxrtc(4) and move dsxrtc(4) to keep things in alphabetical order.Mark Kettenis
2020-04-25Enable dsxrtc(4) and pcfrtc(4).Mark Kettenis
2020-04-24Add bcmgpio(4). For now this driver only provides pinctrl functionality.Mark Kettenis
Actual gpio support (possibly including gpio(4) support) will come later. ok jsg@
2020-04-23Enable imxehci(4).Patrick Wildt
ok kettenis@
2020-04-23Move imxehci(4) to sys/dev/fdt.Patrick Wildt
ok kettenis@
2020-04-23 ce examples of "Ar arg Ar arg" with "Ar arg arg" and stop the spread;Jason McIntyre
2020-04-23Recent changes in usr/mdec require (substantial) growth of the ramdisk.Theo de Raadt
ok jsg kettenis, testing by kmos also
2020-04-22Knock out a few more well-known nodes that we don't intend to attach aMark Kettenis
driver to as well as nodes that start with a double underscore. ok patrick@
2020-04-22Add bcmsdhost(4), a driver for the Broadcom "sdhost" SD controllerMark Kettenis
found on the Raspberry Pi. The driver was ported from NetBSD by Neil Ashford and tobhe@. ok patrick@, tobhe@
2020-04-21Enable bcmdmac(4).tobhe
ok kettenis@
2020-04-21Set DMA constraint based on the openbsd,dma-constraint property ifMark Kettenis
present. Make sure bus_dmamap_alloc(9) allocates memory that meets that constraint. ok patrick@
2020-04-21Add an openbsd,dma-constraint property to the /chosen node and set itMark Kettenis
to an appropriate value for the Raspberry Pi 4. ok patrick@
2020-04-19(1 << 39) is not well defined on a 32-bit int. Use same casts forKenneth R Westerback
low_mask as already used on high_mask to convince compiler to use 64 bits. CID 1480717 CID 1480778 ok pd@
2020-04-19Enable bcmclock(4) and bcmmbox(4).tobhe
2020-04-19Add bcmirng(4), a driver for the RNG200 random number generator found onMark Kettenis
the Raspberry Pi 4. ok deraadt@
2020-04-19Initialize vmx_get_guest_faulttype() 'prot' to 0 instead of usingKenneth R Westerback
random stack garbage. CID 1492655 ok pd@
2020-04-19Add bcmpcie(4), a driver for the PCIe controller found on the Raspberry Pi 4.Mark Kettenis
In its current state the driver relies on the firmware for initializing the controller. Therefore it only really works when using the EDK2-based UEFI firmware. ok jsg@
2020-04-18Add glue to let bse(4) attach using the FDT.Mark Kettenis
ok jsg@
2020-04-18Sync existing stacktrace_save() implementationsVisa Hankala
Upgrade stacktrace_save() to stacktrace_save_at() on architectures where the latter is missing. Define stacktrace_save() as an inline function in header <sys/stacktrace.h> to reduce duplication of code. OK mpi@
2020-04-15Remove unused protoype.Mark Kettenis
2020-04-15Commented WITNESS entry.Martin Pieuchot
2020-04-15Switch powerpc to MI mplock implementation.Martin Pieuchot
Reduce differences with others architectures and make it possible to use WITNESS on it. Rename & keep the current recursive lock implementation as it is used by the pmap. Tested by Peter J. Philipp, otto@ and cwen@. ok kettenis@
2020-04-14Enable bse(4).Mark Kettenis
ok patrick@
2020-04-14Fix some of the more esoteric bus_space functions. TheMark Kettenis
bus_space_read_region_n, bus_space_write_region_n and bus_space_set_region_n functions were all broken. Same fix as arm64; Thanks to patrick@ for noting that mips64 had the same code. ok visa@
2020-04-13Fix some of the more esoteric bus_space functions. TheMark Kettenis
bus_space_read_region_n, bus_space_write_region_n and bus_space_set_region_n functions were all broken. Fixes mvneta(4) on arm64. ok patrick@
2020-04-12Add support for the _CCA method. This method indicates whether DMA isMark Kettenis
cache-coherent or not. To implement this, acpi(4) gets two bus_dma tags and passes the appropriate one when attaching devices based on _CCA. On i386/amd64, where for all practical purpose DMA is always cache-coherent, the two tags are the same. But on arm64 they are distinct. ok patrick@
2020-04-10Add omcm(4), omclock(4) and omsysc(4) drivers that support the new busMark Kettenis
structure that is used in current mainline Linux device trees. ok jsg@
2020-04-10Implement stacktrace_save_at() required for upcoming WITNESS.Martin Pieuchot
ok gkoehler@
2020-04-08vmm(4): add IOCTL handler to sets the access protections of the eptpd
This exposes VMM_IOC_MPROTECT_EPT which can be used by vmd to lock in physical pages. Currently, vmd just terminates the vm in case it gets a protection fault in the future. This feature is used by solo5 which uses vmm(4) as a backend hypervisor. ok mpi@ Patch from Adam Steen <adam@adamsteen.com.au>
2020-04-08vmm(4): handle cr0 writes more correctly for vmxpd
* Switch to using vcpu->vc_vmx_cr0_fixed[1|0] to check must be 0|1 bits, rather than the cpu capabilities. * Add the checks on the new values as per the SDM 2.5 CONTROL REGISTERS. 2.1 Bits 63:32 of CR0 and CR4 are reserved and must be written with zeros. Writing a nonzero value to any of the upper 32 bits results in a general-protection exception, #GP(0). 2.2 setting the PG flag when the PE flag is clear causes a general-protection exception (#GP). 11.5.1 Cache Control Registers and Bits, Table 11-5. Cache Operating Modes 2.3 CD: 0, NW: 1, Invalid setting. Generates a general-protection exception (#GP) with an error code of 0. *. Don't alway assume, if the guest is not disabling paging, they are enabling it, check the guest is actually enabling paging. also only read cr4 when we actually need it, not right at the start. ok mpi@ Patch from Adam Steen <adam@adamsteen.com.au>
2020-04-07Abstract the head of knote lists. This allows extending the lists,Visa Hankala
for example, with locking assertions. OK mpi@, anton@
2020-04-07Kill board_id variable; its last consumer is gone now.Mark Kettenis
ok jsg@
2020-04-07Kill unused extern declaration.Mark Kettenis
2020-04-07Use PHY framework to replace hardcoded board-specific GPIO poking.Mark Kettenis
ok jsg@
2020-04-07Remove entry that is no longer needed.Mark Kettenis
ok jsg@
2020-04-06Build bootecoff with divdi3.c. bootecoff needs __divdi3,Visa Hankala
but the linker does not complain about missing symbols. Prompted by miod@
2020-04-06Add support for the cd-gpios property.Mark Kettenis
ok jsg@
2020-04-06Register controller with the gpio "framework".Mark Kettenis
ok jsg@