| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Close #2502.
|
|
|
|
|
| |
Drop the <rtems/score/percpu.h> include since this file exposes a lot of
implementation details.
|
| |
|
|
|
|
|
| |
These global variables are obsolete since
65f71f8472fa904ca48b816301ed0810def47001.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
To avoid install ISRs during init level 1 the ISR install is moved
to the opening/initialization of the timer.
|
| |
|
| |
|
|
|
|
|
| |
GRTIMER is compatible with GPTIMER, however the GPTIMER driver
does not support the extended features of GRTIMER.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Timers are identical within one GPTIMER core. Probing only the
first timer is sufficient, however the first timer was hardcoded
to timer0 which is not correct in a multi-OS system like RTEMS
AMP. This patch makes sure that probing is done on the first
timer that can be used by this RTEMS instance. Without this
patch RTEMS AMP is broken on systems (like the GR712RC) where
there is only one GPTIMER core proviing multiple timers. Designs
(like the NGMP/FP) where there are multiple GPTIMER cores are not
affected.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The _Watchdog_Nanoseconds_since_tick_handler() function caller does
not take into account that the timer counter may wrap, underflow or
overflow. Instead, the driver must take that into account. This
GPTIMER DrvMgr driver patch makes use of the IRQ-Pending bit to
determine if a underflow has happened. In that case a greater time
than one tick is returned (even considering the function name..).
The TLIB clock layer must also ACK the interrupt pending bit,
otherwise we couldn't determine whether an IRQ is pending or if
belongs to un old already handled tick IRQ.
Note that this patch only fixes the DrvMgr GPTIMER driver and TLIB,
the standard LEON3 GPTIMER driver still needs a fix.
|
| |
|
|
With this patch the LEON family can access the GRLIB GPTIMER using
the Timer library (TLIB).
A System Clock driver instead of BSP/clock/ck_init.c is provided
using the TLIB. The classic clock driver is split in two parts,
clock driver and timer driver. The BSPs need only to fullfill the
timer interface instead of the clock interface. Currently only
LEON3 uses it. The LEON2 Timer is not ported to TLIB.
The GPTIMER driver is implemented using the Driver Manager, so the
System Clock Driver is at this point only suitable for LEON3 when
the driver manager is initialized during BSP startup. When the DrvMgr
is not initialized during startup the standard BSP/clock dirver is
used.
LEON2 sometimes also needs to access GPTIMER when a off-chip GRLIB AMBA
systems is connected, for example AMBA-over-PCI.
|