Page MenuHomeFreeBSD

Make Marvell AmadaXP timer driver more generic
ClosedPublic

Authored by mkm_semihalf.com on Mar 19 2018, 5:35 PM.
Tags
Referenced Files
Unknown Object (File)
Thu, May 7, 3:24 AM
Unknown Object (File)
Mon, Apr 27, 11:01 AM
Unknown Object (File)
Sun, Apr 26, 7:39 AM
Unknown Object (File)
Sun, Apr 19, 6:41 PM
Unknown Object (File)
Apr 15 2026, 7:42 AM
Unknown Object (File)
Apr 14 2026, 4:14 AM
Unknown Object (File)
Apr 12 2026, 12:54 PM
Unknown Object (File)
Apr 10 2026, 2:38 PM
Subscribers

Details

Summary

Store pointers to SoC specific functions in mv_timer_config structure
and determine proper config at runtime based on compatible string from FDT.
Compatible string for ArmadaXP timers is changed to match Linux FDT.
Armada 38x uses generic Cortex-A9 timer and separate watchdog drivers, so
it does not need to be supported by timer driver.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

Ok for the dts part.

This revision is now accepted and ready to land.Mar 21 2018, 9:47 AM
sys/arm/mv/timer.c
305 ↗(On Diff #40452)

You should split this out to a new function to just handle when the timers have been initialised. The PLATFORM code will perform the software loop in the early boot.

Have a look at arm_tmr_do_delay in the generic timer driver for how it's done.

mkm_semihalf.com marked an inline comment as done.
This revision now requires review to proceed.Mar 21 2018, 3:33 PM
This revision was not accepted when it landed; it landed in state Needs Review.Apr 3 2018, 10:21 PM
This revision was automatically updated to reflect the committed changes.