]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - cpu/mpc8xx/scc.c
imported Ka-Ro specific additions to U-Boot 2009.08 for TX28
[karo-tx-uboot.git] / cpu / mpc8xx / scc.c
index 6b9110f1301b3e3d27052a1e2a11c6b58b1b5163..effb967e3254d24d819280ce225e04c879304db4 100755 (executable)
@@ -1,7 +1,7 @@
 /*
  * File:  scc.c
  * Description:
- *     Basic ET HW initialization and packet RX/TX routines
+ *     Basic ET HW initialization and packet RX/TX routines
  *
  * NOTE  <<<IMPORTANT:  PLEASE READ>>>:
  *     Do not cache Rx/Tx buffers!
@@ -38,7 +38,7 @@
 #include <net.h>
 #include <command.h>
 
-#if (CONFIG_COMMANDS & CFG_CMD_NET) && defined(SCC_ENET)
+#if defined(CONFIG_CMD_NET) && defined(SCC_ENET)
 
 /* Ethernet Transmit and Receive Buffers */
 #define DBUF_LENGTH  1520
@@ -191,7 +191,7 @@ static int scc_init (struct eth_device *dev, bd_t * bis)
        int i;
        scc_enet_t *pram_ptr;
 
-       volatile immap_t *immr = (immap_t *) CFG_IMMR;
+       volatile immap_t *immr = (immap_t *) CONFIG_SYS_IMMR;
 
 #if defined(CONFIG_LWMON)
        reset_phy();
@@ -215,12 +215,14 @@ static int scc_init (struct eth_device *dev, bd_t * bis)
        rxIdx = 0;
        txIdx = 0;
 
-#ifdef CFG_ALLOC_DPRAM
-       rtx = (RTXBD *) (immr->im_cpm.cp_dpmem +
-                        dpram_alloc_align (sizeof (RTXBD), 8));
+       if (!rtx) {
+#ifdef CONFIG_SYS_ALLOC_DPRAM
+               rtx = (RTXBD *) (immr->im_cpm.cp_dpmem +
+                                dpram_alloc_align (sizeof (RTXBD), 8));
 #else
-       rtx = (RTXBD *) (immr->im_cpm.cp_dpmem + CPM_SCC_BASE);
-#endif /* 0 */
+               rtx = (RTXBD *) (immr->im_cpm.cp_dpmem + CPM_SCC_BASE);
+#endif
+       }
 
 #if (defined(PA_ENET_RXD) && defined(PA_ENET_TXD))
        /* Configure port A pins for Txd and Rxd.
@@ -550,7 +552,7 @@ static int scc_init (struct eth_device *dev, bd_t * bis)
 
 static void scc_halt (struct eth_device *dev)
 {
-       volatile immap_t *immr = (immap_t *) CFG_IMMR;
+       volatile immap_t *immr = (immap_t *) CONFIG_SYS_IMMR;
 
        immr->im_cpm.cp_scc[SCC_ENET].scc_gsmrl &=
                ~(SCC_GSMRL_ENR | SCC_GSMRL_ENT);
@@ -561,10 +563,10 @@ static void scc_halt (struct eth_device *dev)
 #if 0
 void restart (void)
 {
-       volatile immap_t *immr = (immap_t *) CFG_IMMR;
+       volatile immap_t *immr = (immap_t *) CONFIG_SYS_IMMR;
 
        immr->im_cpm.cp_scc[SCC_ENET].scc_gsmrl |=
                (SCC_GSMRL_ENR | SCC_GSMRL_ENT);
 }
 #endif
-#endif /* CFG_CMD_NET, SCC_ENET */
+#endif