| 1dff9d0f | 22-Aug-2012 |
Lucas Stach <dev@lynxeye.de> |
net: asix: add AX88772B support
Add AX88772B ID together with two fixes needed to make this work.
1. The packet length check has to be adjusted, as all ASIX chips only use 11 bits to indicate the l
net: asix: add AX88772B support
Add AX88772B ID together with two fixes needed to make this work.
1. The packet length check has to be adjusted, as all ASIX chips only use 11 bits to indicate the length. AX88772B uses the other bits to indicate unrelated things, which cause the check to fail. This fix is based on a fix for the Linux kernel by Marek Vasut. Linux upstream commit: bca0beb9363f8487ac902931a50eb00180a2d14a
2. AX88772B provides several bulk endpoints. Only the first IN/OUT endpoints work in the default configuration. So stop enumeration after we found them to avoid overwriting the endpoint config with a non-working one.
Signed-off-by: Lucas Stach <dev@lynxeye.de> Reviewed-by: Marek Vasut <marex@denx.de> Acked-by: Marek Vasut <marex@denx.de> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
show more ...
|
| 02c8d8cc | 22-Aug-2012 |
Lucas Stach <dev@lynxeye.de> |
net: asix: add read_mac function
Initial device MAC should be read while getting info about the device, so it's wrong to only read it in asix_init().
Add a dedicated function to read the initial MA
net: asix: add read_mac function
Initial device MAC should be read while getting info about the device, so it's wrong to only read it in asix_init().
Add a dedicated function to read the initial MAC, which is also able to handle devices that have their initial MAC stored in EEPROM. Call this function inasix_eth_get_info().
Signed-off-by: Lucas Stach <dev@lynxeye.de> Reviewed-by: Marek Vasut <marex@denx.de> Acked-by: Marek Vasut <marex@denx.de> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
show more ...
|
| 58f8fab8 | 22-Aug-2012 |
Lucas Stach <dev@lynxeye.de> |
net: asix: add write_hwaddr function
All ASIX chipsets aside from AX88172 are able to set the MAC address on the hardware level. Add a function to expose this ability.
To differentiate between chip
net: asix: add write_hwaddr function
All ASIX chipsets aside from AX88172 are able to set the MAC address on the hardware level. Add a function to expose this ability.
To differentiate between chip types we now carry flags as driver private data. Also while touching the asix_dongles array constify this.
Signed-off-by: Lucas Stach <dev@lynxeye.de> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
show more ...
|
| 5fae53d0 | 22-Aug-2012 |
Lucas Stach <dev@lynxeye.de> |
net: asix: split out basic reset function
The basic device reset ensures that the device is ready to service commands and does not need to get redone before each network operation.
Split out the ba
net: asix: split out basic reset function
The basic device reset ensures that the device is ready to service commands and does not need to get redone before each network operation.
Split out the basic reset from asix_init() and instead call it from asix_eth_get_info(), so that it only gets called once.
Signed-off-by: Lucas Stach <dev@lynxeye.de> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
show more ...
|