Add capability to specify specific Watchdog timer for Deh
authorRobert Tivy <rtivy@ti.com>
Thu, 2 Apr 2015 21:34:02 +0000 (14:34 -0700)
committerRobert Tivy <rtivy@ti.com>
Tue, 14 Apr 2015 00:02:23 +0000 (17:02 -0700)
commitf07a2265cb5ee3cff8473a7294b06a6e3d93982b
treeb983f275c4ed6ffa86ee6100a053caf8853190ac
parent1595ced846a6856fe825390e1367d6a1ec3fc8a7
Add capability to specify specific Watchdog timer for Deh

Previous to this change the user was basically stuck using the GPTimer
that was hardcoded to their device (although they could change the
timer by changing the device's timer settings, which was cumbersome).

The user can now specify a particular GPTimer by setting it in the .cfg
file.  For DRA7XX's IPU2, the Watchdog timers (one for each SMP core)
can be set with:
    Watchdog.timerIds.length = 2;
    Watchdog.timerIds[0] = "GPTimer9";
    Watchdog.timerIds[1] = "GPTimer4";

Each supported device has default GPTimer settings appropriate to that
device (the snippet above actually assigns the current defaults for
Vayu, so it is actually a no-op).

The "GPTimer<n>" specification encapsulates timer settings such as
intNum and eventId.  Many GPTimer specifications in Watchdog.xs have
-1 in these fields if they don't have a hardcoded wirings for them, yet
they can still be used if the user explicitly defines the value in the
.cfg file and somehow sets up the hardware to generate that intNum or
eventId (e.g., through the crossbar on Vayu).
packages/ti/deh/Watchdog.c
packages/ti/deh/Watchdog.xdc
packages/ti/deh/Watchdog.xs