Mercurial > flash_v2
changeset 1439:0c10dc3ed9d1
* src/if_lan91cxx.c: Add some missing endian swapping calls.
| author | asl |
|---|---|
| date | Wed, 10 Dec 2003 12:33:47 +0000 |
| parents | a683fa782034 |
| children | 4367d4c65982 |
| files | packages/devs/eth/smsc/lan91cxx/current/ChangeLog packages/devs/eth/smsc/lan91cxx/current/src/if_lan91cxx.c |
| diffstat | 2 files changed, 10 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/packages/devs/eth/smsc/lan91cxx/current/ChangeLog +++ b/packages/devs/eth/smsc/lan91cxx/current/ChangeLog @@ -1,3 +1,7 @@ +2003-12-10 Uwe Kindler <uwe_kindler@web.de> + + * src/if_lan91cxx.c: Add some missing endian swapping calls. + 2003-12-05 Nick Garnett <nickg@calivar.com> * src/if_lan91cxx.c: Added support for revA of the LAN91C111 which
--- a/packages/devs/eth/smsc/lan91cxx/current/src/if_lan91cxx.c +++ b/packages/devs/eth/smsc/lan91cxx/current/src/if_lan91cxx.c @@ -184,9 +184,8 @@ static cyg_interrupt lan91cxx_interrupt; static cyg_handle_t lan91cxx_interrupt_handle; // This ISR is called when the ethernet interrupt occurs -static int -lan91cxx_isr(cyg_vector_t vector, cyg_addrword_t data - /* , HAL_SavedRegisters *regs */ ) +static int lan91cxx_isr(cyg_vector_t vector, cyg_addrword_t data) + /* , HAL_SavedRegisters *regs */ { struct eth_drv_sc *sc = (struct eth_drv_sc *)data; struct lan91cxx_priv_data *cpd = @@ -870,7 +869,7 @@ lan91cxx_send(struct eth_drv_sc *sc, str control |= LAN91CXX_CONTROLBYTE_ODD; } control |= LAN91CXX_CONTROLBYTE_CRC; // Just in case... - put_data(sc, control); + put_data(sc, CYG_CPU_TO_LE16(control)); // Enqueue the packet put_reg(sc, LAN91CXX_MMU_COMMAND, LAN91CXX_MMU_enq_packet); @@ -1122,6 +1121,7 @@ lan91cxx_recv(struct eth_drv_sc *sc, str val = CYG_LE32_TO_CPU(val); plen = (val >> 16) - 6; #else + val = CYG_LE16_TO_CPU(val); plen = get_data(sc); plen = CYG_LE16_TO_CPU(plen) - 6; #endif @@ -1163,6 +1163,8 @@ lan91cxx_recv(struct eth_drv_sc *sc, str val >>= 16; mlen -= 2; } else +#else + val = CYG_LE16_TO_CPU(val); #endif cp = (unsigned char *)data;
