aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging/et131x
diff options
context:
space:
mode:
authorAlan Cox <alan@linux.intel.com>2010-01-18 10:35:30 -0500
committerGreg Kroah-Hartman <gregkh@suse.de>2010-03-03 19:42:52 -0500
commitbd03d0d5bc253533a6d169a82f56626d552d9471 (patch)
tree32f3702ee27cdeae2bb5c613dc55a15f86cedbed /drivers/staging/et131x
parentfef5ba3ae9760fdc2688b7160fa056e7ef2700bb (diff)
Staging: et131x: kill off the rxmac ctrl type
Signed-off-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/et131x')
-rw-r--r--drivers/staging/et131x/et1310_address_map.h35
-rw-r--r--drivers/staging/et131x/et1310_mac.c4
-rw-r--r--drivers/staging/et131x/et131x_isr.c2
-rw-r--r--drivers/staging/et131x/et131x_netdev.c14
4 files changed, 20 insertions, 35 deletions
diff --git a/drivers/staging/et131x/et1310_address_map.h b/drivers/staging/et131x/et1310_address_map.h
index 5f6a7b54967..1e0ffcd1788 100644
--- a/drivers/staging/et131x/et1310_address_map.h
+++ b/drivers/staging/et131x/et1310_address_map.h
@@ -655,31 +655,16 @@ struct txmac_regs { /* Location: */
655/* 655/*
656 * structure for rxmac control reg in rxmac address map 656 * structure for rxmac control reg in rxmac address map
657 * located at address 0x4000 657 * located at address 0x4000
658 *
659 * 31-7: reserved
660 * 6: rxmac_int_disable
661 * 5: async_disable
662 * 4: mif_disable
663 * 3: wol_disable
664 * 2: pkt_filter_disable
665 * 1: mcif_disable
666 * 0: rxmac_en
658 */ 667 */
659typedef union _RXMAC_CTRL_t {
660 u32 value;
661 struct {
662#ifdef _BIT_FIELDS_HTOL
663 u32 reserved:25; /* bits 7-31 */
664 u32 rxmac_int_disable:1; /* bit 6 */
665 u32 async_disable:1; /* bit 5 */
666 u32 mif_disable:1; /* bit 4 */
667 u32 wol_disable:1; /* bit 3 */
668 u32 pkt_filter_disable:1; /* bit 2 */
669 u32 mcif_disable:1; /* bit 1 */
670 u32 rxmac_en:1; /* bit 0 */
671#else
672 u32 rxmac_en:1; /* bit 0 */
673 u32 mcif_disable:1; /* bit 1 */
674 u32 pkt_filter_disable:1; /* bit 2 */
675 u32 wol_disable:1; /* bit 3 */
676 u32 mif_disable:1; /* bit 4 */
677 u32 async_disable:1; /* bit 5 */
678 u32 rxmac_int_disable:1; /* bit 6 */
679 u32 reserved:25; /* bits 7-31 */
680#endif
681 } bits;
682} RXMAC_CTRL_t, *PRXMAC_CTRL_t;
683 668
684/* 669/*
685 * structure for Wake On Lan Control and CRC 0 reg in rxmac address map 670 * structure for Wake On Lan Control and CRC 0 reg in rxmac address map
@@ -904,7 +889,7 @@ typedef union _RXMAC_UNI_PF_ADDR3_t {
904 * Rx MAC Module of JAGCore Address Mapping 889 * Rx MAC Module of JAGCore Address Mapping
905 */ 890 */
906typedef struct _RXMAC_t { /* Location: */ 891typedef struct _RXMAC_t { /* Location: */
907 RXMAC_CTRL_t ctrl; /* 0x4000 */ 892 u32 ctrl; /* 0x4000 */
908 u32 crc0; /* 0x4004 */ 893 u32 crc0; /* 0x4004 */
909 u32 crc12; /* 0x4008 */ 894 u32 crc12; /* 0x4008 */
910 u32 crc34; /* 0x400C */ 895 u32 crc34; /* 0x400C */
diff --git a/drivers/staging/et131x/et1310_mac.c b/drivers/staging/et131x/et1310_mac.c
index a9f924dd6b0..a292b1edc41 100644
--- a/drivers/staging/et131x/et1310_mac.c
+++ b/drivers/staging/et131x/et1310_mac.c
@@ -244,7 +244,7 @@ void ConfigRxMacRegs(struct et131x_adapter *etdev)
244 u32 pf_ctrl = 0; 244 u32 pf_ctrl = 0;
245 245
246 /* Disable the MAC while it is being configured (also disable WOL) */ 246 /* Disable the MAC while it is being configured (also disable WOL) */
247 writel(0x8, &pRxMac->ctrl.value); 247 writel(0x8, &pRxMac->ctrl);
248 248
249 /* Initialize WOL to disabled. */ 249 /* Initialize WOL to disabled. */
250 writel(0, &pRxMac->crc0); 250 writel(0, &pRxMac->crc0);
@@ -363,7 +363,7 @@ void ConfigRxMacRegs(struct et131x_adapter *etdev)
363 * but we still leave the packet filter on. 363 * but we still leave the packet filter on.
364 */ 364 */
365 writel(pf_ctrl, &pRxMac->pf_ctrl); 365 writel(pf_ctrl, &pRxMac->pf_ctrl);
366 writel(0x9, &pRxMac->ctrl.value); 366 writel(0x9, &pRxMac->ctrl);
367} 367}
368 368
369void ConfigTxMacRegs(struct et131x_adapter *etdev) 369void ConfigTxMacRegs(struct et131x_adapter *etdev)
diff --git a/drivers/staging/et131x/et131x_isr.c b/drivers/staging/et131x/et131x_isr.c
index 87c8de63671..8b6e0b7ec56 100644
--- a/drivers/staging/et131x/et131x_isr.c
+++ b/drivers/staging/et131x/et131x_isr.c
@@ -445,7 +445,7 @@ void et131x_isr_handler(struct work_struct *work)
445 445
446 dev_warn(&etdev->pdev->dev, 446 dev_warn(&etdev->pdev->dev,
447 "Enable 0x%08x, Diag 0x%08x\n", 447 "Enable 0x%08x, Diag 0x%08x\n",
448 readl(&iomem->rxmac.ctrl.value), 448 readl(&iomem->rxmac.ctrl),
449 readl(&iomem->rxmac.rxq_diag)); 449 readl(&iomem->rxmac.rxq_diag));
450 450
451 /* 451 /*
diff --git a/drivers/staging/et131x/et131x_netdev.c b/drivers/staging/et131x/et131x_netdev.c
index 5cfebf0a218..226641acd95 100644
--- a/drivers/staging/et131x/et131x_netdev.c
+++ b/drivers/staging/et131x/et131x_netdev.c
@@ -342,16 +342,16 @@ int et131x_set_packet_filter(struct et131x_adapter *adapter)
342{ 342{
343 int status = 0; 343 int status = 0;
344 uint32_t filter = adapter->PacketFilter; 344 uint32_t filter = adapter->PacketFilter;
345 RXMAC_CTRL_t ctrl; 345 u32 ctrl;
346 u32 pf_ctrl; 346 u32 pf_ctrl;
347 347
348 ctrl.value = readl(&adapter->regs->rxmac.ctrl.value); 348 ctrl = readl(&adapter->regs->rxmac.ctrl);
349 pf_ctrl = readl(&adapter->regs->rxmac.pf_ctrl); 349 pf_ctrl = readl(&adapter->regs->rxmac.pf_ctrl);
350 350
351 /* Default to disabled packet filtering. Enable it in the individual 351 /* Default to disabled packet filtering. Enable it in the individual
352 * case statements that require the device to filter something 352 * case statements that require the device to filter something
353 */ 353 */
354 ctrl.bits.pkt_filter_disable = 1; 354 ctrl |= 0x04;
355 355
356 /* Set us to be in promiscuous mode so we receive everything, this 356 /* Set us to be in promiscuous mode so we receive everything, this
357 * is also true when we get a packet filter of 0 357 * is also true when we get a packet filter of 0
@@ -369,20 +369,20 @@ int et131x_set_packet_filter(struct et131x_adapter *adapter)
369 else { 369 else {
370 SetupDeviceForMulticast(adapter); 370 SetupDeviceForMulticast(adapter);
371 pf_ctrl |= 2; 371 pf_ctrl |= 2;
372 ctrl.bits.pkt_filter_disable = 0; 372 ctrl &= ~0x04;
373 } 373 }
374 374
375 /* Set us up with Unicast packet filtering */ 375 /* Set us up with Unicast packet filtering */
376 if (filter & ET131X_PACKET_TYPE_DIRECTED) { 376 if (filter & ET131X_PACKET_TYPE_DIRECTED) {
377 SetupDeviceForUnicast(adapter); 377 SetupDeviceForUnicast(adapter);
378 pf_ctrl |= 4; 378 pf_ctrl |= 4;
379 ctrl.bits.pkt_filter_disable = 0; 379 ctrl &= ~0x04;
380 } 380 }
381 381
382 /* Set us up with Broadcast packet filtering */ 382 /* Set us up with Broadcast packet filtering */
383 if (filter & ET131X_PACKET_TYPE_BROADCAST) { 383 if (filter & ET131X_PACKET_TYPE_BROADCAST) {
384 pf_ctrl |= 1; /* Broadcast filter bit */ 384 pf_ctrl |= 1; /* Broadcast filter bit */
385 ctrl.bits.pkt_filter_disable = 0; 385 ctrl &= ~0x04;
386 } else 386 } else
387 pf_ctrl &= ~1; 387 pf_ctrl &= ~1;
388 388
@@ -391,7 +391,7 @@ int et131x_set_packet_filter(struct et131x_adapter *adapter)
391 * in the control reg. 391 * in the control reg.
392 */ 392 */
393 writel(pf_ctrl, &adapter->regs->rxmac.pf_ctrl); 393 writel(pf_ctrl, &adapter->regs->rxmac.pf_ctrl);
394 writel(ctrl.value, &adapter->regs->rxmac.ctrl.value); 394 writel(ctrl, &adapter->regs->rxmac.ctrl);
395 } 395 }
396 return status; 396 return status;
397} 397}