diff options
author | Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com> | 2014-10-01 08:05:25 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2014-10-02 14:23:14 -0400 |
commit | dba4b74d2da8798626e2b702ad3f452671e335f7 (patch) | |
tree | 0b69811380cfc1aa121c5fd481c77829b830436d /drivers/net/wireless/ath/wil6210/netdev.c | |
parent | c33407a8c50430f1634a8809f9528b6888360e56 (diff) |
wil6210: atomic I/O for the card memory
Introduce netdev IOCTLs, to be used by the debug tools.
Allows to read/write single dword value or
memory block, aligned to dword
Different address modes supported:
- BAR offset
- Firmware "linker" address
- target's AHB bus
Signed-off-by: Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/wil6210/netdev.c')
-rw-r--r-- | drivers/net/wireless/ath/wil6210/netdev.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/wil6210/netdev.c b/drivers/net/wireless/ath/wil6210/netdev.c index c3f0ddfaa5da..239965106c05 100644 --- a/drivers/net/wireless/ath/wil6210/netdev.c +++ b/drivers/net/wireless/ath/wil6210/netdev.c | |||
@@ -52,6 +52,17 @@ static int wil_change_mtu(struct net_device *ndev, int new_mtu) | |||
52 | return 0; | 52 | return 0; |
53 | } | 53 | } |
54 | 54 | ||
55 | static int wil_do_ioctl(struct net_device *ndev, struct ifreq *ifr, int cmd) | ||
56 | { | ||
57 | struct wil6210_priv *wil = ndev_to_wil(ndev); | ||
58 | |||
59 | int ret = wil_ioctl(wil, ifr->ifr_data, cmd); | ||
60 | |||
61 | wil_dbg_misc(wil, "ioctl(0x%04x) -> %d\n", cmd, ret); | ||
62 | |||
63 | return ret; | ||
64 | } | ||
65 | |||
55 | static const struct net_device_ops wil_netdev_ops = { | 66 | static const struct net_device_ops wil_netdev_ops = { |
56 | .ndo_open = wil_open, | 67 | .ndo_open = wil_open, |
57 | .ndo_stop = wil_stop, | 68 | .ndo_stop = wil_stop, |
@@ -59,6 +70,7 @@ static const struct net_device_ops wil_netdev_ops = { | |||
59 | .ndo_set_mac_address = eth_mac_addr, | 70 | .ndo_set_mac_address = eth_mac_addr, |
60 | .ndo_validate_addr = eth_validate_addr, | 71 | .ndo_validate_addr = eth_validate_addr, |
61 | .ndo_change_mtu = wil_change_mtu, | 72 | .ndo_change_mtu = wil_change_mtu, |
73 | .ndo_do_ioctl = wil_do_ioctl, | ||
62 | }; | 74 | }; |
63 | 75 | ||
64 | static int wil6210_netdev_poll_rx(struct napi_struct *napi, int budget) | 76 | static int wil6210_netdev_poll_rx(struct napi_struct *napi, int budget) |