Skip to contentSkip to conversation

IP100A Remove CONFIG_SUNDANCE_MMIO, mask of mapping address

PATCH NAK Jesse Huang 2 participants 2 messages Aug 17, 2006

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 3/6 IP100A Remove CONFIG_SUNDANCE_MMIO, mask of mapping address

From: Jesse Huang <[email protected]>

Remove CONFIG_SUNDANCE_MMIO, mask of mapping address

Change Logs:
Remove CONFIG_SUNDANCE_MMIO, mask of mapping address

---

 drivers/net/sundance.c |   13 ++++++-------
 1 files changed, 6 insertions(+), 7 deletions(-)

dc932975858ae18801620d04212c516ced6920bd

drivers/net/sundance.c +6 -7
index 910ea17..2bde1b3 100755
@@ -21,8 +21,8 @@
 */
 
 #define DRV_NAME	"sundance"
-#define DRV_VERSION	"1.2"
-#define DRV_RELDATE	"03-Aug-2006"
+#define DRV_VERSION	"1.01+LK1.13"
+#define DRV_RELDATE	"04-Aug-2006"
 
 
 /* The user-configurable values.
@@ -199,10 +199,6 @@ IVc. Errata
 
 */
 
-/* Work-around for Kendin chip bugs. */
-#ifndef CONFIG_SUNDANCE_MMIO
-#define USE_IO_OPS 1
-#endif
 
 static const struct pci_device_id sundance_pci_tbl[] = {
 	{ 0x1186, 0x1002, 0x1186, 0x1002, 0, 0, 0 },
@@ -491,10 +487,13 @@ #endif
 	if (pci_request_regions(pdev, DRV_NAME))
 		goto err_out_netdev;
 
-	ioaddr = pci_iomap(pdev, bar, netdev_io_size);
+	ioaddr =(void __iomem *)
+		 ((unsigned long)pci_iomap(pdev, bar, netdev_io_size) & 
+	          0xffffff80);
 	if (!ioaddr)
 		goto err_out_res;
 
+
 	for (i = 0; i < 3; i++)
 		((u16 *)dev->dev_addr)[i] =
 			le16_to_cpu(eeprom_read(ioaddr, i + EEPROM_SA_OFFSET));
Signature · 1 line
1.3.GIT
#1 lore raw

drivers/net/sundance.c IVc. Errata · line 205

Quoted 4 lines · Jesse Huang
drivers/net/sundance.c +0 -4
-/* Work-around for Kendin chip bugs. */
-#ifndef CONFIG_SUNDANCE_MMIO
-#define USE_IO_OPS 1
-#endif

Why? This simply eliminates the ability of the user to set the driver configuration at Kconfig time, requiring them to edit the driver to achieve the same functionality.

drivers/net/sundance.c #endif · line 492

Quoted 8 lines
drivers/net/sundance.c +3 -1
@@ -491,10 +487,13 @@ #endif
 	if (pci_request_regions(pdev, DRV_NAME))
 		goto err_out_netdev;
 
-	ioaddr = pci_iomap(pdev, bar, netdev_io_size);
+	ioaddr =(void __iomem *)
+		 ((unsigned long)pci_iomap(pdev, bar, netdev_io_size) & 
+	          0xffffff80);

NAK, this is very wrong. pci_iomap() returns a "cookie", which you are not allowed to modify in any way.

Jeff