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