• Lennert Buytenhek's avatar
    [PATCH] ARM: 2701/1: free up ixp2000 timer 4 for the watchdog · e4fe1981
    Lennert Buytenhek authored
    Patch from Lennert Buytenhek
    
    The IXP2000 has four timers, but if we're on an A-step IXP2800, timer
    2 and 3 don't work.  We need two timers for timekeeping (one for the
    timer interrupt and one for tracking missed jiffies), so on early
    IXP2800s we have no other choice but to use timer 1 and 4 for that,
    but on all other IXP2000s we'd rather leave timer 4 free since that's
    the only timer we can use for the watchdog.
    So, on buggy IXP2000s (i.e. the A-step IXP2800) we use timer 4 for
    tracking missed jiffies, and on all all non-buggy IXP2000s (i.e.
    everything but the A-step IXP2800) we use timer 2.
    On a pre-production IXP2800, this patch should print these messages
    on boot:
    	Enabling IXP2800 erratum #25 workaround
    	Unable to use IXP2000 watchdog due to IXP2800 erratum #25
    On any non-buggy IXP2800 (as well as on IXP2400s) you shouldn't see
    anything at all, and the watchdog should be usable again.
    
    Signed-off-by: Lennert Buytenhek
    Signed-off-by: Deepak Saxena
    Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
    e4fe1981
ixp2000_wdt.c 4.65 KB