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, Oct 9, 10:30 AM
Unknown Object (File)
Wed, Oct 8, 11:45 PM
Unknown Object (File)
Tue, Sep 30, 6:00 AM
Unknown Object (File)
Sep 11 2025, 11:55 PM
Unknown Object (File)
Sep 8 2025, 3:49 AM
Unknown Object (File)
Sep 3 2025, 4:18 AM
Unknown Object (File)
Aug 21 2025, 4:12 AM
Unknown Object (File)
Aug 21 2025, 4:12 AM
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.