diff options
author | Mike McCormack <mikem@ring3k.org> | 2011-03-10 08:32:16 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-03-14 15:24:42 -0400 |
commit | 9a77bd58f6bfe05df7ec807c22be40fb2dc62e23 (patch) | |
tree | ffae2907545cf9668ffd4a20a9cea8d71c3ec10d | |
parent | f19dbc0ca8aa8bac415857c14be4252c38b1d925 (diff) |
staging: rtl8192e: Store mem_start in priv struct
Signed-off-by: Mike McCormack <mikem@ring3k.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r-- | drivers/staging/rtl8192e/r8192E.h | 2 | ||||
-rw-r--r-- | drivers/staging/rtl8192e/r8192E_core.c | 38 |
2 files changed, 17 insertions, 23 deletions
diff --git a/drivers/staging/rtl8192e/r8192E.h b/drivers/staging/rtl8192e/r8192E.h index c18705ff8160..d59fc0e796da 100644 --- a/drivers/staging/rtl8192e/r8192E.h +++ b/drivers/staging/rtl8192e/r8192E.h | |||
@@ -868,6 +868,8 @@ struct rtl8192_tx_ring { | |||
868 | typedef struct r8192_priv | 868 | typedef struct r8192_priv |
869 | { | 869 | { |
870 | struct pci_dev *pdev; | 870 | struct pci_dev *pdev; |
871 | u8 *mem_start; | ||
872 | |||
871 | /* maintain info from eeprom */ | 873 | /* maintain info from eeprom */ |
872 | short epromtype; | 874 | short epromtype; |
873 | u16 eeprom_vid; | 875 | u16 eeprom_vid; |
diff --git a/drivers/staging/rtl8192e/r8192E_core.c b/drivers/staging/rtl8192e/r8192E_core.c index 06b35a234b49..8715d2cee8f1 100644 --- a/drivers/staging/rtl8192e/r8192E_core.c +++ b/drivers/staging/rtl8192e/r8192E_core.c | |||
@@ -210,40 +210,34 @@ u32 read_cam(struct r8192_priv *priv, u8 addr) | |||
210 | 210 | ||
211 | u8 read_nic_byte(struct r8192_priv *priv, int x) | 211 | u8 read_nic_byte(struct r8192_priv *priv, int x) |
212 | { | 212 | { |
213 | struct net_device *dev = priv->ieee80211->dev; | 213 | return 0xff & readb(priv->mem_start + x); |
214 | return 0xff&readb((u8*)dev->mem_start +x); | ||
215 | } | 214 | } |
216 | 215 | ||
217 | u32 read_nic_dword(struct r8192_priv *priv, int x) | 216 | u32 read_nic_dword(struct r8192_priv *priv, int x) |
218 | { | 217 | { |
219 | struct net_device *dev = priv->ieee80211->dev; | 218 | return readl(priv->mem_start + x); |
220 | return readl((u8*)dev->mem_start +x); | ||
221 | } | 219 | } |
222 | 220 | ||
223 | u16 read_nic_word(struct r8192_priv *priv, int x) | 221 | u16 read_nic_word(struct r8192_priv *priv, int x) |
224 | { | 222 | { |
225 | struct net_device *dev = priv->ieee80211->dev; | 223 | return readw(priv->mem_start + x); |
226 | return readw((u8*)dev->mem_start +x); | ||
227 | } | 224 | } |
228 | 225 | ||
229 | void write_nic_byte(struct r8192_priv *priv, int x,u8 y) | 226 | void write_nic_byte(struct r8192_priv *priv, int x,u8 y) |
230 | { | 227 | { |
231 | struct net_device *dev = priv->ieee80211->dev; | 228 | writeb(y, priv->mem_start + x); |
232 | writeb(y,(u8*)dev->mem_start +x); | ||
233 | udelay(20); | 229 | udelay(20); |
234 | } | 230 | } |
235 | 231 | ||
236 | void write_nic_dword(struct r8192_priv *priv, int x,u32 y) | 232 | void write_nic_dword(struct r8192_priv *priv, int x,u32 y) |
237 | { | 233 | { |
238 | struct net_device *dev = priv->ieee80211->dev; | 234 | writel(y, priv->mem_start + x); |
239 | writel(y,(u8*)dev->mem_start +x); | ||
240 | udelay(20); | 235 | udelay(20); |
241 | } | 236 | } |
242 | 237 | ||
243 | void write_nic_word(struct r8192_priv *priv, int x,u16 y) | 238 | void write_nic_word(struct r8192_priv *priv, int x,u16 y) |
244 | { | 239 | { |
245 | struct net_device *dev = priv->ieee80211->dev; | 240 | writew(y, priv->mem_start + x); |
246 | writew(y,(u8*)dev->mem_start +x); | ||
247 | udelay(20); | 241 | udelay(20); |
248 | } | 242 | } |
249 | 243 | ||
@@ -4568,7 +4562,6 @@ static const struct net_device_ops rtl8192_netdev_ops = { | |||
4568 | static int __devinit rtl8192_pci_probe(struct pci_dev *pdev, | 4562 | static int __devinit rtl8192_pci_probe(struct pci_dev *pdev, |
4569 | const struct pci_device_id *id) | 4563 | const struct pci_device_id *id) |
4570 | { | 4564 | { |
4571 | unsigned long ioaddr = 0; | ||
4572 | struct net_device *dev = NULL; | 4565 | struct net_device *dev = NULL; |
4573 | struct r8192_priv *priv= NULL; | 4566 | struct r8192_priv *priv= NULL; |
4574 | u8 unit = 0; | 4567 | u8 unit = 0; |
@@ -4619,16 +4612,15 @@ static int __devinit rtl8192_pci_probe(struct pci_dev *pdev, | |||
4619 | goto fail; | 4612 | goto fail; |
4620 | } | 4613 | } |
4621 | 4614 | ||
4622 | 4615 | priv->mem_start = ioremap_nocache(pmem_start, pmem_len); | |
4623 | ioaddr = (unsigned long)ioremap_nocache( pmem_start, pmem_len); | 4616 | if (!priv->mem_start) { |
4624 | if( ioaddr == (unsigned long)NULL ){ | ||
4625 | RT_TRACE(COMP_ERR,"ioremap failed!\n"); | 4617 | RT_TRACE(COMP_ERR,"ioremap failed!\n"); |
4626 | // release_mem_region( pmem_start, pmem_len ); | ||
4627 | goto fail1; | 4618 | goto fail1; |
4628 | } | 4619 | } |
4629 | 4620 | ||
4630 | dev->mem_start = ioaddr; // shared mem start | 4621 | dev->mem_start = (unsigned long) priv->mem_start; |
4631 | dev->mem_end = ioaddr + pci_resource_len(pdev, 0); // shared mem end | 4622 | dev->mem_end = (unsigned long) (priv->mem_start + |
4623 | pci_resource_len(pdev, 0)); | ||
4632 | 4624 | ||
4633 | /* We disable the RETRY_TIMEOUT register (0x41) to keep | 4625 | /* We disable the RETRY_TIMEOUT register (0x41) to keep |
4634 | * PCI Tx retries from interfering with C3 CPU state */ | 4626 | * PCI Tx retries from interfering with C3 CPU state */ |
@@ -4670,8 +4662,8 @@ static int __devinit rtl8192_pci_probe(struct pci_dev *pdev, | |||
4670 | 4662 | ||
4671 | fail1: | 4663 | fail1: |
4672 | 4664 | ||
4673 | if( dev->mem_start != (unsigned long)NULL ){ | 4665 | if (priv->mem_start) { |
4674 | iounmap( (void *)dev->mem_start ); | 4666 | iounmap(priv->mem_start); |
4675 | release_mem_region( pci_resource_start(pdev, 1), | 4667 | release_mem_region( pci_resource_start(pdev, 1), |
4676 | pci_resource_len(pdev, 1) ); | 4668 | pci_resource_len(pdev, 1) ); |
4677 | } | 4669 | } |
@@ -4747,8 +4739,8 @@ static void __devexit rtl8192_pci_disconnect(struct pci_dev *pdev) | |||
4747 | priv->irq=0; | 4739 | priv->irq=0; |
4748 | } | 4740 | } |
4749 | 4741 | ||
4750 | if( dev->mem_start != (unsigned long)NULL ){ | 4742 | if (priv->mem_start) { |
4751 | iounmap( (void *)dev->mem_start ); | 4743 | iounmap(priv->mem_start); |
4752 | release_mem_region( pci_resource_start(pdev, 1), | 4744 | release_mem_region( pci_resource_start(pdev, 1), |
4753 | pci_resource_len(pdev, 1) ); | 4745 | pci_resource_len(pdev, 1) ); |
4754 | } | 4746 | } |