summaryrefslogtreecommitdiff
path: root/sys/arch/armv7/omap
AgeCommit message (Collapse)Author
2022-07-15Implement support for framebuffers that don't start on a page boundary.Mark Kettenis
This happens on the new 14" and 16" Macbook Pro where we deliberately use a framebuffer that skips the first few lines to avoid "the notch". The offset of the first pixel is added to struct wsdisplay_fbinfo. The stride is added as well, mirroring the value returned by the WSDISPLAYIO_LINEBYTES ioctl, such that we can retire that one in the future. A compat ioctl is implemented to help the transition. The compat code will be removed after OpenBSD 7.3 has been released. ok miod@
2022-04-06constify struct cfattachChristian Weisgerber
2022-02-21initializion -> initializationJonathan Gray
2022-01-03Don't use != 0 to check whether a pointer is non-NULL.Jonathan Gray
2021-10-24Constify struct cfattach.Martin Pieuchot
ok visa@ a long time ago, ok patrick@
2021-05-16panic does not require a \n at the end. When one is provided, it looks wrong.Theo de Raadt
2021-05-16ansiJonathan Gray
2021-04-02Fix Dale's email addressTheo Buehler
ok drahn
2021-03-25remove uneeded includes in md armv7 filesJonathan Gray
based on include-what-you-use suggestions
2021-03-11spellingJonathan Gray
2021-02-23timecounting: use C99-style initialization for all timecounter structscheloha
The timecounter struct is large and I think it may change in the future. Changing it later will be easier if we use C99-style initialization for all timecounter structs. It also makes reading the code a bit easier. For reasons I cannot explain, switching to C99-style initialization sometimes changes the hash of the resulting object file, even though the resulting struct should be the same. So there is a binary change here, but only sometimes. No behavior should change in either case. I can't compile-test this everywhere but I have been staring at the diff for days now and I'm relatively confident this will not break compilation. Fingers crossed. ok gnezdo@
2021-01-19s/KHZ/kHz/ and reduce dmesg spam a bitMark Kettenis
ok tb@, deraadt@
2021-01-19Remove some unused #defines and remove some commented-out variables.Mark Kettenis
2020-07-14Extend the interrupt API on arm64 and armv7 to be able to pass aroundPatrick Wildt
a struct cpu_info *. From a driver point of view the fdt_intr_establish_* API now also exist same functions with a *_cpu suffix. Internally the "old" functions now call their *_cpu counterparts, passing NULL as ci. NULL will be interpreted as primary CPU in the interrupt controller code. The internal framework for interrupt controllers has been changed so that the establish methods provided by an interrupt controller function always takes a struct cpu_info *. Some drivers, like imxgpio(4) and rkgpio(4), only have a single interrupt line for multiple pins. On those we simply disallow trying to establish an interrupt on a non-primary CPU, returning NULL. Since we do not have MP yet on armv7, all armv7 interrupt controllers do return NULL if an attempt is made to establish an interrupt on a different CPU. That said, so far there's no way this can happen. If we ever gain MP support, this is a reminder that the interrupt controller drivers have to be adjusted. Prompted by dlg@ ok kettenis@
2020-07-12Use the full 32 bits for the miscellaneous armv7 timecounters.Christian Weisgerber
Checked against * ARM Architecture Reference Manual (agtimer) * ARM Cortex-A9 MPCore Technical Reference Manual (amptimer) * OMAP35x Applications Processor Technical Reference Manual (gptimer) Artturi Alm had independently suggested this in the past.
2020-07-10Change users of IFQ_SET_MAXLEN() and IFQ_IS_EMPTY() to use the "new" API.Patrick Wildt
ok dlg@ tobhe@
2020-07-10Change users of IFQ_DEQUEUE(), IFQ_ENQUEUE() and IFQ_LEN() to use thePatrick Wildt
"new" API. ok dlg@ tobhe@
2020-07-06Add support for timeconting in userland.Paul Irofti
This diff exposes parts of clock_gettime(2) and gettimeofday(2) to userland via libc eliberating processes from the need for a context switch everytime they want to count the passage of time. If a timecounter clock can be exposed to userland than it needs to set its tc_user member to a non-zero value. Tested with one or multiple counters per architecture. The timing data is shared through a pointer found in the new ELF auxiliary vector AUX_openbsd_timekeep containing timehands information that is frequently updated by the kernel. Timing differences between the last kernel update and the current time are adjusted in userland by the tc_get_timecount() function inside the MD usertc.c file. This permits a much more responsive environment, quite visible in browsers, office programs and gaming (apparently one is are able to fly in Minecraft now). Tested by robert@, sthen@, naddy@, kmos@, phessler@, and many others! OK from at least kettenis@, cheloha@, naddy@, sthen@
2020-07-05match on "ti,am335-sdhci" used since linux 5.8-rc3Jonathan Gray
2020-06-02use correct node when enabling phyJonathan Gray
ok kettenis@
2020-05-29dev/rndvar.h no longer has statistical interfaces (removed during variousTheo de Raadt
conversion steps). it only contains kernel prototypes for 4 interfaces, all of which legitimately belong in sys/systm.h, which are already included by all enqueue_randomness() users.
2020-05-25change wsdisplay attribute type from long to uint32_tJonathan Gray
miod explained it was initially a long as it was thought drivers may need to allocate storage but in practice they don't need more than 32 bits for an attribute. suggested and reviewed by miod@
2020-05-25rename wsdisplay alloc_attr() to pack_attr()Jonathan Gray
Suggested by John Carmack. miod agrees a rename would make sense and explained it was initially thought drivers may need to allocate storage but in practice they don't need more than 32 bits for an attribute. ok mpi@
2020-04-27fix SDHC_DEBUG build, remove procname printf'sians
ok kettenis@
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-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-06Add support for the cd-gpios property.Mark Kettenis
ok jsg@
2020-04-06Register controller with the gpio "framework".Mark Kettenis
ok jsg@
2020-04-05Use OF_is_compatible() to simplify the initialization for the "mdio" node.Mark Kettenis
Add code to enable the clock which is present in new device trees. ok jsg@
2020-04-05Add omrng(4), a driver for te random number generator found on TI OMAP SoCs.Mark Kettenis
ok jsg@
2020-03-31Remove leftover that should have been removed in the previous commit.Mark Kettenis
2020-03-31Newer device trees no longer put the full physical address in the "reg"Mark Kettenis
property; it contains on offset in the parent's address space instead. Since the driver needs the address of the CPPI RAM to program the descriptors, use bus_space_vaddr(9) and pmap_extract(9) to get it. ok jsg@
2020-03-31Remove unused code. The padconf code has been replaced with theMark Kettenis
generic pinctrl(4) driver and intc(4) now attaches using the device tree. ok jsg@
2020-02-18Cleanup <sys/kthread.h> and <sys/proc.h> includes.Martin Pieuchot
Do not include <sys/kthread.h> where it is not needed and stop including <sys/proc.h> in it. ok visa@, anton@
2020-01-13Convert to tsleep_nsec(9), while here fix a bug where the value specifiedMartin Pieuchot
in ticks was meant to be in msecs. Pointed out by and ok patrick@
2020-01-13Timeouts are all specified in multiple of `hz' so define them in term ofMartin Pieuchot
seconds and use tsleep_nsec(9). ok patrick@
2019-12-25WSDISPLAYIO_GTYPE is u_int not intJonathan Gray
2019-10-05Use mask to extract IPL; should have been part of the earlier diff thatMark Kettenis
added IPI support on armv7.
2019-05-06Whitespace removalMike Larkin
Pointed out by Jerome Pinot
2019-05-06Whitespace and extra semicolon removal.Mike Larkin
Pointed out by Jerome Pinot
2019-04-10KNF per naddy@ians
2018-12-24Adjust cpsw for linux 4.20 device tree changes. The location of the phyJonathan Gray
is now found via phy-handle instead of phy_id.
2018-09-19Free edid_buf after use so to fix possible memory leak.Claudio Jeker
With and ok jsg@
2018-08-27ompinmux has been replaced by pinctrlJonathan Gray
2018-02-14prune files.* entries that refer to files not in treeJonathan Gray
ok krw@ mpi@
2017-11-27OMAP4 has two watchdog timers timer 2/MPU and timer 3/IVA.Jonathan Gray
Previously the device tree only described one but now it describes both. Do not attempt to set the global variable that points to a softc or register a watchdog if this has already been done. Fixes rebooting on the OMAP4 based PandaBoard-ES with a device tree from linux 4.15-rc1.
2017-10-25Storing the address of a stack variable in a global variable is a bad idea.Mark Kettenis
Rework the code to store the relevant information in the softc. As a bonus, this reduces the stack space that is used such that this file compiles with clang. ok ians@
2017-09-11Avoid using an uninitialised variable. Found by the clang static analyser.Jonathan Gray
ok ians@
2017-09-11Don't test if an array is NULL. Fixes the build with clang which raisedJonathan Gray
a -Wtautological-pointer-compare warning. ok ians@