diff -r 74853e018898 -r ed15eef57d5c master/ethernet.c --- a/master/ethernet.c Mon Nov 17 15:04:28 2008 +0000 +++ b/master/ethernet.c Mon Nov 17 17:18:02 2008 +0000 @@ -92,7 +92,7 @@ ) { ec_eoe_t **priv; - int result, i; + int i, ret = 0; char name[EC_DATAGRAM_NAME_SIZE]; eoe->slave = slave; @@ -131,6 +131,7 @@ if (!(eoe->dev = alloc_netdev(sizeof(ec_eoe_t *), name, ether_setup))) { EC_ERR("Unable to allocate net_device %s for EoE handler!\n", name); + ret = -ENODEV; goto out_return; } @@ -156,8 +157,9 @@ #endif // connect the net_device to the kernel - if ((result = register_netdev(eoe->dev))) { - EC_ERR("Unable to register net_device: error %i\n", result); + ret = register_netdev(eoe->dev); + if (ret) { + EC_ERR("Unable to register net_device: error %i\n", ret); goto out_free; } @@ -169,7 +171,7 @@ free_netdev(eoe->dev); eoe->dev = NULL; out_return: - return -1; + return ret; } /*****************************************************************************/ @@ -272,9 +274,10 @@ printk("\n"); #endif - if (!(data = ec_slave_mbox_prepare_send(eoe->slave, &eoe->datagram, - 0x02, current_size + 4))) - return -1; + data = ec_slave_mbox_prepare_send(eoe->slave, &eoe->datagram, + 0x02, current_size + 4); + if (IS_ERR(data)) + return PTR_ERR(data); EC_WRITE_U8 (data, 0x00); // eoe fragment req. EC_WRITE_U8 (data + 1, last_fragment); @@ -415,8 +418,9 @@ return; } - if (!(data = ec_slave_mbox_fetch(eoe->slave, &eoe->datagram, - &mbox_prot, &rec_size))) { + data = ec_slave_mbox_fetch(eoe->slave, &eoe->datagram, + &mbox_prot, &rec_size); + if (IS_ERR(data)) { eoe->stats.rx_errors++; eoe->state = ec_eoe_state_tx_start; return;