Author: imp
Date: Fri Jun 15 06:38:55 2012
New Revision: 237115
URL: http://svn.freebsd.org/changeset/base/237115

Log:
  Take half a step closer towards having a unified atmel kernel by
  rearranging where we initialize the time counter and putting the
  common stubs into a central place.

Modified:
  head/sys/arm/at91/at91_machdep.c
  head/sys/arm/at91/at91_pit.c
  head/sys/arm/at91/at91_st.c

Modified: head/sys/arm/at91/at91_machdep.c
==============================================================================
--- head/sys/arm/at91/at91_machdep.c    Fri Jun 15 06:14:29 2012        
(r237114)
+++ head/sys/arm/at91/at91_machdep.c    Fri Jun 15 06:38:55 2012        
(r237115)
@@ -572,3 +572,24 @@ initarm(struct arm_boot_params *abp)
        return ((void *)(kernelstack.pv_va + USPACE_SVC_STACK_TOP -
            sizeof(struct pcb)));
 }
+
+/*
+ * These functions are handled elsewhere, so make them nops here.
+ */
+void
+cpu_startprofclock(void)
+{
+
+}
+
+void
+cpu_stopprofclock(void)
+{
+
+}
+
+void
+cpu_initclocks(void)
+{
+
+}

Modified: head/sys/arm/at91/at91_pit.c
==============================================================================
--- head/sys/arm/at91/at91_pit.c        Fri Jun 15 06:14:29 2012        
(r237114)
+++ head/sys/arm/at91/at91_pit.c        Fri Jun 15 06:38:55 2012        
(r237115)
@@ -206,24 +206,3 @@ DELAY(int us)
                last = piv;
        }
 }
-
-/*
- * The 3 next functions must be implement with the future PLL code.
- */
-void
-cpu_startprofclock(void)
-{
-
-}
-
-void
-cpu_stopprofclock(void)
-{
-
-}
-
-void
-cpu_initclocks(void)
-{
-
-}

Modified: head/sys/arm/at91/at91_st.c
==============================================================================
--- head/sys/arm/at91/at91_st.c Fri Jun 15 06:14:29 2012        (r237114)
+++ head/sys/arm/at91/at91_st.c Fri Jun 15 06:38:55 2012        (r237115)
@@ -60,6 +60,7 @@ static struct at91st_softc {
        bus_space_write_4(timer_softc->sc_st, timer_softc->sc_sh, (off), (val))
 
 static void at91st_watchdog(void *, u_int, int *);
+static void at91st_initclocks(struct at91st_softc *);
 
 static inline int
 st_crtr(void)
@@ -114,8 +115,11 @@ at91st_attach(device_t dev)
 
        timer_softc->sc_wet = EVENTHANDLER_REGISTER(watchdog_list,
          at91st_watchdog, dev, 0);
+
        device_printf(dev,
          "watchdog registered, timeout intervall max. 64 sec\n");
+
+       at91st_initclocks(timer_softc);
        return (0);
 }
 
@@ -183,14 +187,14 @@ clock_intr(void *arg)
        return (FILTER_STRAY);
 }
 
-void
-cpu_initclocks(void)
+static void
+at91st_initclocks(struct at91st_softc *sc)
 {
        int rel_value;
        struct resource *irq;
        int rid = 0;
        void *ih;
-       device_t dev = timer_softc->sc_dev;
+       device_t dev = sc->sc_dev;
 
        rel_value = 32768 / hz;
        if (rel_value < 1)
@@ -251,13 +255,3 @@ cpu_reset(void)
        while (1)
                continue;
 }
-
-void
-cpu_startprofclock(void)
-{
-}
-
-void
-cpu_stopprofclock(void)
-{
-}
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to