Please test the attached patch once again. I guess attaching with email to the 
devel list is the appropriate method to submit patches ?
I've removed most of the warnings in the file that I could. I think I've not 
introduced any trailing spaces in the code, if that's what you were talking 
about.

Regards
Vipul Nayyar 
commit 12bcd143d7f4538decbd4a1c17e1d0bdae11a3cd
Author: Vipul Nayyar <nayyar_vi...@yahoo.com>
Date:   Fri Jul 5 23:25:00 2013 +0530

    Updated Legacy code in arm csb337

diff --git a/c/src/lib/libbsp/arm/csb337/network/network.c b/c/src/lib/libbsp/arm/csb337/network/network.c
index e31bcc0..e7de674 100644
--- a/c/src/lib/libbsp/arm/csb337/network/network.c
+++ b/c/src/lib/libbsp/arm/csb337/network/network.c
@@ -22,6 +22,7 @@
 
 #include <errno.h>
 #include <rtems/error.h>
+#include <assert.h>
 
 #include <sys/param.h>
 #include <sys/mbuf.h>
@@ -83,20 +84,9 @@
   #define START_TRANSMIT_EVENT    RTEMS_EVENT_2
 
 static void at91rm9200_emac_isr (rtems_irq_hdl_param unused);
-static void at91rm9200_emac_isr_on(const rtems_irq_connect_data *unused);
-static void at91rm9200_emac_isr_off(const rtems_irq_connect_data *unused);
-static int at91rm9200_emac_isr_is_on(const rtems_irq_connect_data *irq);
-
-/* Replace the first value with the clock's interrupt name. */
-rtems_irq_connect_data at91rm9200_emac_isr_data = {
-    AT91RM9200_INT_EMAC,
-    at91rm9200_emac_isr,
-    NULL,
-    at91rm9200_emac_isr_on,
-    at91rm9200_emac_isr_off,
-    at91rm9200_emac_isr_is_on
-};
-
+static void at91rm9200_emac_isr_on(void);
+static void at91rm9200_emac_isr_off(void);
+static int at91rm9200_emac_isr_is_on(void);
 
 /* use the values defined in linkcmds for our use of SRAM */
 extern void * at91rm9200_emac_rxbuf_hdrs;
@@ -208,6 +198,8 @@ void at91rm9200_emac_stats (at91rm9200_emac_softc_t *sc);
 static int at91rm9200_emac_ioctl (struct ifnet *ifp,
                                   ioctl_command_t command,
                                   caddr_t data);
+uint32_t phyread(uint8_t reg);
+void phywrite(uint8_t reg, uint16_t data);
 
 
 /*
@@ -358,6 +350,7 @@ void at91rm9200_emac_init(void *arg)
 {
     at91rm9200_emac_softc_t     *sc = arg;
     struct ifnet *ifp = &sc->arpcom.ac_if;
+    rtems_status_code status = RTEMS_SUCCESSFUL;
 
     /*
      *This is for stuff that only gets done once (at91rm9200_emac_init()
@@ -382,7 +375,15 @@ void at91rm9200_emac_init(void *arg)
     AIC_SMR_REG(AIC_SMR_EMAC) = AIC_SMR_PRIOR(EMAC_INT_PRIORITY);
 
     /* install the interrupt handler */
-    BSP_install_rtems_irq_handler(&at91rm9200_emac_isr_data);
+    status = rtems_interrupt_handler_install(
+        AT91RM9200_INT_EMAC,
+        "Network",
+        RTEMS_INTERRUPT_UNIQUE,
+        at91rm9200_emac_isr,
+        NULL
+    );  
+    assert(status == RTEMS_SUCCESSFUL);
+    at91rm9200_emac_isr_on();   
 
     /* EMAC doesn't support promiscuous, so ignore requests */
     if (ifp->if_flags & IFF_PROMISC) {
@@ -767,7 +768,7 @@ void at91rm9200_emac_stats (at91rm9200_emac_softc_t *sc)
 
 
 /* Enables at91rm9200_emac interrupts. */
-static void at91rm9200_emac_isr_on(const rtems_irq_connect_data *unused)
+static void at91rm9200_emac_isr_on()
 {
     /* Enable various TX/RX interrupts */
     EMAC_REG(EMAC_IER) = (EMAC_INT_RCOM | /* Receive complete */
@@ -780,7 +781,7 @@ static void at91rm9200_emac_isr_on(const rtems_irq_connect_data *unused)
 }
 
 /* Disables at91rm9200_emac interrupts */
-static void at91rm9200_emac_isr_off(const rtems_irq_connect_data *unused)
+static void at91rm9200_emac_isr_off()
 {
     /* disable all various TX/RX interrupts */
     EMAC_REG(EMAC_IDR) = 0xffffffff;
@@ -791,7 +792,7 @@ static void at91rm9200_emac_isr_off(const rtems_irq_connect_data *unused)
  * returns non-0 if so.
  * If interrupt is not enabled, returns 0.
  */
-static int at91rm9200_emac_isr_is_on(const rtems_irq_connect_data *irq)
+static int at91rm9200_emac_isr_is_on()
 {
     return EMAC_REG(EMAC_IMR); /* any interrupts enabled? */
 }
_______________________________________________
rtems-devel mailing list
rtems-devel@rtems.org
http://www.rtems.org/mailman/listinfo/rtems-devel

Reply via email to