net: Add SunGEM device emulation as found on Apple UniNorth
PATCH 1/1 net: Add SunGEM device emulation as found on Apple UniNorth
This adds a simplistic emulation of the Sun GEM ethernet controller found in Apple ASICs.
Currently we only support the Apple UniNorth 1.x variant, but the other Apple or Sun variants should mostly be a matter of adding PCI IDs options.
It doesn't (yet) support state saving, but neither does the Mac models at least not without additional patches. I will add it separately.
We have a very primitive emulation of a single Broadcom 5201 PHY which is supported by the MacOS driver.
This model brings out-of-the-box networking to MacOS 9, and all versions of OS X I tried with the mac99 platform.
--- hw/net/Makefile.objs | 2 + hw/net/sungem.c | 1036 ++++++++++++++++++++++++++++++++++++++++++++++ hw/net/sungem.h | 885 +++++++++++++++++++++++++++++++++++++++ hw/pci/pci.c | 2 + include/hw/pci/pci_ids.h | 1 + 5 files changed, 1926 insertions(+) create mode 100644 hw/net/sungem.c create mode 100644 hw/net/sungem.h
hw/net/Makefile.objs +2 -0
@@ -27,6 +27,8 @@ common-obj-$(CONFIG_CADENCE) += cadence_gem.o common-obj-$(CONFIG_STELLARIS_ENET) += stellaris_enet.o common-obj-$(CONFIG_LANCE) += lance.o +common-obj-$(CONFIG_SUNGEM) += sungem.o + obj-$(CONFIG_ETRAXFS) += etraxfs_eth.o obj-$(CONFIG_COLDFIRE) += mcf_fec.o obj-$(CONFIG_MILKYMIST) += milkymist-minimac2.o
hw/net/sungem.c new file +1036 -0
1,036 lines not on this page · raw message
hw/net/sungem.h new file +885 -0
885 lines not on this page · raw message
hw/pci/pci.c +2 -0
@@ -1758,6 +1758,7 @@ static const char * const pci_nic_models[] = {"e1000" ,"pcnet" ,"virtio" , +"sungem" , NULL };
@@ -1770,6 +1771,7 @@ static const char * const pci_nic_names[] = {"e1000" ,"pcnet" ,"virtio-net-pci" , +"sungem" , NULL };
include/hw/pci/pci_ids.h +1 -0
@@ -89,6 +89,7 @@#define PCI_VENDOR_ID_APPLE 0x106b#define PCI_DEVICE_ID_APPLE_UNI_N_AGP 0x0020#define PCI_DEVICE_ID_APPLE_U3_AGP 0x004b +#define PCI_DEVICE_ID_APPLE_UNI_N_GMAC 0x0021#define PCI_VENDOR_ID_SUN 0x108e#define PCI_DEVICE_ID_SUN_EBUS 0x1000
Your series seems to have some coding style problems. See output below for more information:
Hi,
Your series seems to have some coding style problems. See output below for more information:
Message-id: [email protected]
Subject: [Qemu-devel] [PATCH] net: Add SunGEM device emulation as found on Apple UniNorth
Type: series
=== TEST SCRIPT BEGIN ===
#!/bin/bash
BASE=base
n=1
total=$(git log --oneline $BASE.. | wc -l)
failed=0
commits="$(git log --format=%H --reverse $BASE..)" for c in $commits; do
echo "Checking PATCH $n/$total: $(git show --no-patch --format=%s $c)..."
if ! git show $c --format=email | ./scripts/checkpatch.pl --mailback -; then
failed=1
echo
fi
n=$((n+1))done
exit $failed
=== TEST SCRIPT END ===
Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384
From https://github.com/patchew-project/qemu
* [new tag] patchew/[email protected] -> patchew/[email protected]
Switched to a new branch 'test'
bc69242 net: Add SunGEM device emulation as found on Apple UniNorth
=== OUTPUT BEGIN ===
Checking PATCH 1/1: net: Add SunGEM device emulation as found on Apple UniNorth...
ERROR: spaces required around that '<<' (ctx:VxV)
#69: FILE: hw/net/sungem.c:26:
+#define DBGBIT(x) (1<<DEBUG_##x)
^
WARNING: line over 80 characters
#71: FILE: hw/net/sungem.c:28:
+//static int debugflags = DBGBIT(ERR) | DBGBIT(INTERRUPT) | DBGBIT(RX) | DBGBIT(TX);
ERROR: do not use C99 // comments
#71: FILE: hw/net/sungem.c:28:
+//static int debugflags = DBGBIT(ERR) | DBGBIT(INTERRUPT) | DBGBIT(RX) | DBGBIT(TX);
ERROR: braces {} are necessary for all arms of this statement #74: FILE: hw/net/sungem.c:31:
+ if (debugflags & DBGBIT(what)) \
[...]
ERROR: braces {} are necessary for all arms of this statement #127: FILE: hw/net/sungem.c:84:
+ if (reg <= 0x1c)
[...]
+ else if (reg >= 0x1000 && reg <= 0x1010)
[...]
+ else if (reg >= 0x2000 && reg <= 0x2034)
[...]
+ else if (reg >= 0x2100 && reg <= 0x2118)
[...]
+ else if (reg >= 0x3000 && reg <= 0x3010)
[...]
+ else if (reg >= 0x4000 && reg <= 0x4028)
[...]
+ else if (reg >= 0x4100 && reg <= 0x4120)
[...]
+ else if (reg >= 0x6000 && reg <= 0x6134)
[...]
+ else if (reg >= 0x6200 && reg <= 0x621c)
[...]
+ else if (reg >= 0x9000 && reg <= 0x9018)
[...]
+ else if (reg >= 0x9050 && reg <= 0x905c)
[...]
ERROR: braces {} are necessary for all arms of this statement #129: FILE: hw/net/sungem.c:86:
+ else if (reg >= 0x1000 && reg <= 0x1010)
[...]
+ else if (reg >= 0x2000 && reg <= 0x2034)
[...]
+ else if (reg >= 0x2100 && reg <= 0x2118)
[...]
+ else if (reg >= 0x3000 && reg <= 0x3010)
[...]
+ else if (reg >= 0x4000 && reg <= 0x4028)
[...]
+ else if (reg >= 0x4100 && reg <= 0x4120)
[...]
+ else if (reg >= 0x6000 && reg <= 0x6134)
[...]
+ else if (reg >= 0x6200 && reg <= 0x621c)
[...]
+ else if (reg >= 0x9000 && reg <= 0x9018)
[...]
+ else if (reg >= 0x9050 && reg <= 0x905c)
[...]
ERROR: braces {} are necessary for all arms of this statement #131: FILE: hw/net/sungem.c:88:
+ else if (reg >= 0x2000 && reg <= 0x2034)
[...]
+ else if (reg >= 0x2100 && reg <= 0x2118)
[...]
+ else if (reg >= 0x3000 && reg <= 0x3010)
[...]
+ else if (reg >= 0x4000 && reg <= 0x4028)
[...]
+ else if (reg >= 0x4100 && reg <= 0x4120)
[...]
+ else if (reg >= 0x6000 && reg <= 0x6134)
[...]
+ else if (reg >= 0x6200 && reg <= 0x621c)
[...]
+ else if (reg >= 0x9000 && reg <= 0x9018)
[...]
+ else if (reg >= 0x9050 && reg <= 0x905c)
[...]
ERROR: braces {} are necessary for all arms of this statement #133: FILE: hw/net/sungem.c:90:
+ else if (reg >= 0x2100 && reg <= 0x2118)
[...]
+ else if (reg >= 0x3000 && reg <= 0x3010)
[...]
+ else if (reg >= 0x4000 && reg <= 0x4028)
[...]
+ else if (reg >= 0x4100 && reg <= 0x4120)
[...]
+ else if (reg >= 0x6000 && reg <= 0x6134)
[...]
+ else if (reg >= 0x6200 && reg <= 0x621c)
[...]
+ else if (reg >= 0x9000 && reg <= 0x9018)
[...]
+ else if (reg >= 0x9050 && reg <= 0x905c)
[...]
ERROR: braces {} are necessary for all arms of this statement #135: FILE: hw/net/sungem.c:92:
+ else if (reg >= 0x3000 && reg <= 0x3010)
[...]
+ else if (reg >= 0x4000 && reg <= 0x4028)
[...]
+ else if (reg >= 0x4100 && reg <= 0x4120)
[...]
+ else if (reg >= 0x6000 && reg <= 0x6134)
[...]
+ else if (reg >= 0x6200 && reg <= 0x621c)
[...]
+ else if (reg >= 0x9000 && reg <= 0x9018)
[...]
+ else if (reg >= 0x9050 && reg <= 0x905c)
[...]
ERROR: braces {} are necessary for all arms of this statement #137: FILE: hw/net/sungem.c:94:
+ else if (reg >= 0x4000 && reg <= 0x4028)
[...]
+ else if (reg >= 0x4100 && reg <= 0x4120)
[...]
+ else if (reg >= 0x6000 && reg <= 0x6134)
[...]
+ else if (reg >= 0x6200 && reg <= 0x621c)
[...]
+ else if (reg >= 0x9000 && reg <= 0x9018)
[...]
+ else if (reg >= 0x9050 && reg <= 0x905c)
[...]
ERROR: braces {} are necessary for all arms of this statement #139: FILE: hw/net/sungem.c:96:
+ else if (reg >= 0x4100 && reg <= 0x4120)
[...]
+ else if (reg >= 0x6000 && reg <= 0x6134)
[...]
+ else if (reg >= 0x6200 && reg <= 0x621c)
[...]
+ else if (reg >= 0x9000 && reg <= 0x9018)
[...]
+ else if (reg >= 0x9050 && reg <= 0x905c)
[...]
ERROR: braces {} are necessary for all arms of this statement #141: FILE: hw/net/sungem.c:98:
+ else if (reg >= 0x6000 && reg <= 0x6134)
[...]
+ else if (reg >= 0x6200 && reg <= 0x621c)
[...]
+ else if (reg >= 0x9000 && reg <= 0x9018)
[...]
+ else if (reg >= 0x9050 && reg <= 0x905c)
[...]
ERROR: braces {} are necessary for all arms of this statement #143: FILE: hw/net/sungem.c:100:
+ else if (reg >= 0x6200 && reg <= 0x621c)
[...]
+ else if (reg >= 0x9000 && reg <= 0x9018)
[...]
+ else if (reg >= 0x9050 && reg <= 0x905c)
[...]
ERROR: braces {} are necessary for all arms of this statement #145: FILE: hw/net/sungem.c:102:
+ else if (reg >= 0x9000 && reg <= 0x9018)
[...]
+ else if (reg >= 0x9050 && reg <= 0x905c)
[...]
ERROR: braces {} are necessary for all arms of this statement #147: FILE: hw/net/sungem.c:104:
+ else if (reg >= 0x9050 && reg <= 0x905c)
[...]
ERROR: space required before the open parenthesis '(' #157: FILE: hw/net/sungem.c:114:
+ } while(0)
ERROR: space required before the open parenthesis '(' #722: FILE: hw/net/sungem.c:679:
+ switch(reg_addr) {
ERROR: space required before the open parenthesis '(' #804: FILE: hw/net/sungem.c:761:
+ switch(addr) {
ERROR: space required before the open parenthesis '(' #859: FILE: hw/net/sungem.c:816:
+ switch(addr) {
ERROR: space required before the open parenthesis '(' #870: FILE: hw/net/sungem.c:827:
+ switch(val & (GREG_SWRST_TXRST | GREG_SWRST_RXRST)) {
ERROR: space required after that ',' (ctx:VxV)
#915: FILE: hw/net/sungem.c:872:
+ qemu_log_mask(LOG_GUEST_ERROR,"%s: read from unknown register 0x%04x\n",
^
ERROR: space required before the open parenthesis '(' #923: FILE: hw/net/sungem.c:880:
+ switch(addr) {
ERROR: code indent should never use tabs
#1101: FILE: hw/net/sungem.h:16:
+#define GREG_SEBSTATE^I0x0000UL^I/* SEB State Register^I^I*/$
ERROR: code indent should never use tabs
#1102: FILE: hw/net/sungem.h:17:
+#define GREG_CFG^I0x0004UL^I/* Configuration Register^I*/$
ERROR: code indent should never use tabs #1103: FILE: hw/net/sungem.h:18:
+#define GREG_STAT^I0x000CUL^I/* Status Register^I^I*/$
ERROR: code indent should never use tabs
#1104: FILE: hw/net/sungem.h:19:
+#define GREG_IMASK^I0x0010UL^I/* Interrupt Mask Register^I*/$
ERROR: code indent should never use tabs
#1105: FILE: hw/net/sungem.h:20:
+#define GREG_IACK^I0x0014UL^I/* Interrupt ACK Register^I*/$
ERROR: code indent should never use tabs
#1106: FILE: hw/net/sungem.h:21:
+#define GREG_STAT2^I0x001CUL^I/* Alias of GREG_STAT^I^I*/$
ERROR: code indent should never use tabs
#1107: FILE: hw/net/sungem.h:22:
+#define GREG_PCIESTAT^I0x1000UL^I/* PCI Error Status Register^I*/$
ERROR: code indent should never use tabs
#1108: FILE: hw/net/sungem.h:23:
+#define GREG_PCIEMASK^I0x1004UL^I/* PCI Error Mask Register^I*/$
ERROR: code indent should never use tabs
#1109: FILE: hw/net/sungem.h:24:
+#define GREG_BIFCFG^I0x1008UL^I/* BIF Configuration Register^I*/$
ERROR: code indent should never use tabs
#1110: FILE: hw/net/sungem.h:25:
+#define GREG_BIFDIAG^I0x100CUL^I/* BIF Diagnostics Register^I*/$
ERROR: code indent should never use tabs
#1111: FILE: hw/net/sungem.h:26:
+#define GREG_SWRST^I0x1010UL^I/* Software Reset Register^I*/$
WARNING: line over 80 characters
#1114: FILE: hw/net/sungem.h:29:
+#define GREG_SEBSTATE_ARB 0x00000003 /* State of Arbiter */
ERROR: code indent should never use tabs
#1114: FILE: hw/net/sungem.h:29:
+#define GREG_SEBSTATE_ARB^I0x00000003^I/* State of Arbiter^I^I*/$
WARNING: line over 80 characters
#1115: FILE: hw/net/sungem.h:30:
+#define GREG_SEBSTATE_RXWON 0x00000004 /* RX won internal arbitration */
ERROR: code indent should never use tabs
#1115: FILE: hw/net/sungem.h:30:
+#define GREG_SEBSTATE_RXWON^I0x00000004^I/* RX won internal arbitration^I*/$
WARNING: line over 80 characters
#1118: FILE: hw/net/sungem.h:33:
+#define GREG_CFG_IBURST 0x00000001 /* Infinite Burst */
ERROR: code indent should never use tabs
#1118: FILE: hw/net/sungem.h:33:
+#define GREG_CFG_IBURST^I^I0x00000001^I/* Infinite Burst^I^I*/$
WARNING: line over 80 characters
#1119: FILE: hw/net/sungem.h:34:
+#define GREG_CFG_TXDMALIM 0x0000003e /* TX DMA grant limit */
ERROR: code indent should never use tabs
#1119: FILE: hw/net/sungem.h:34:
+#define GREG_CFG_TXDMALIM^I0x0000003e^I/* TX DMA grant limit^I^I*/$
WARNING: line over 80 characters
#1120: FILE: hw/net/sungem.h:35:
+#define GREG_CFG_RXDMALIM 0x000007c0 /* RX DMA grant limit */
ERROR: code indent should never use tabs
#1120: FILE: hw/net/sungem.h:35:
+#define GREG_CFG_RXDMALIM^I0x000007c0^I/* RX DMA grant limit^I^I*/$
WARNING: line over 80 characters
#1121: FILE: hw/net/sungem.h:36:
+#define GREG_CFG_RONPAULBIT 0x00000800 /* Use mem read multiple for PCI read
ERROR: code indent should never use tabs
#1121: FILE: hw/net/sungem.h:36:
+#define GREG_CFG_RONPAULBIT^I0x00000800^I/* Use mem read multiple for PCI read$
WARNING: line over 80 characters
#1122: FILE: hw/net/sungem.h:37:
+ * after infinite burst (Apple) */
ERROR: code indent should never use tabs
#1122: FILE: hw/net/sungem.h:37:
+^I^I^I^I^I^I * after infinite burst (Apple) */$
ERROR: code indent should never use tabs
#1123: FILE: hw/net/sungem.h:38:
+#define GREG_CFG_ENBUG2FIX^I0x00001000^I/* Fix Rx hang after overflow */$
WARNING: line over 80 characters
#1134: FILE: hw/net/sungem.h:49:
+#define GREG_STAT_TXINTME 0x00000001 /* TX INTME frame transferred */
ERROR: code indent should never use tabs
#1134: FILE: hw/net/sungem.h:49:
+#define GREG_STAT_TXINTME^I0x00000001^I/* TX INTME frame transferred^I*/$
WARNING: line over 80 characters
#1135: FILE: hw/net/sungem.h:50:
+#define GREG_STAT_TXALL 0x00000002 /* All TX frames transferred */
ERROR: code indent should never use tabs
#1135: FILE: hw/net/sungem.h:50:
+#define GREG_STAT_TXALL^I^I0x00000002^I/* All TX frames transferred^I*/$
WARNING: line over 80 characters
#1136: FILE: hw/net/sungem.h:51:
+#define GREG_STAT_TXDONE 0x00000004 /* One TX frame transferred */
ERROR: code indent should never use tabs
#1136: FILE: hw/net/sungem.h:51:
+#define GREG_STAT_TXDONE^I0x00000004^I/* One TX frame transferred^I*/$
WARNING: line over 80 characters
#1137: FILE: hw/net/sungem.h:52:
+#define GREG_STAT_RXDONE 0x00000010 /* One RX frame arrived */
ERROR: code indent should never use tabs
#1137: FILE: hw/net/sungem.h:52:
+#define GREG_STAT_RXDONE^I0x00000010^I/* One RX frame arrived^I^I*/$
WARNING: line over 80 characters
#1138: FILE: hw/net/sungem.h:53:
+#define GREG_STAT_RXNOBUF 0x00000020 /* No free RX buffers available */
ERROR: code indent should never use tabs
#1138: FILE: hw/net/sungem.h:53:
+#define GREG_STAT_RXNOBUF^I0x00000020^I/* No free RX buffers available^I*/$
WARNING: line over 80 characters
#1139: FILE: hw/net/sungem.h:54:
+#define GREG_STAT_RXTAGERR 0x00000040 /* RX tag framing is corrupt */
ERROR: code indent should never use tabs
#1139: FILE: hw/net/sungem.h:54:
+#define GREG_STAT_RXTAGERR^I0x00000040^I/* RX tag framing is corrupt^I*/$
WARNING: line over 80 characters
#1140: FILE: hw/net/sungem.h:55:
+#define GREG_STAT_PCS 0x00002000 /* PCS signalled interrupt */
ERROR: code indent should never use tabs
#1140: FILE: hw/net/sungem.h:55:
+#define GREG_STAT_PCS^I^I0x00002000^I/* PCS signalled interrupt^I*/$
WARNING: line over 80 characters
#1141: FILE: hw/net/sungem.h:56:
+#define GREG_STAT_TXMAC 0x00004000 /* TX MAC signalled interrupt */
ERROR: code indent should never use tabs
#1141: FILE: hw/net/sungem.h:56:
+#define GREG_STAT_TXMAC^I^I0x00004000^I/* TX MAC signalled interrupt^I*/$
WARNING: line over 80 characters
#1142: FILE: hw/net/sungem.h:57:
+#define GREG_STAT_RXMAC 0x00008000 /* RX MAC signalled interrupt */
ERROR: code indent should never use tabs
#1142: FILE: hw/net/sungem.h:57:
+#define GREG_STAT_RXMAC^I^I0x00008000^I/* RX MAC signalled interrupt^I*/$
WARNING: line over 80 characters
#1143: FILE: hw/net/sungem.h:58:
+#define GREG_STAT_MAC 0x00010000 /* MAC Control signalled irq */
ERROR: code indent should never use tabs
#1143: FILE: hw/net/sungem.h:58:
+#define GREG_STAT_MAC^I^I0x00010000^I/* MAC Control signalled irq^I*/$
WARNING: line over 80 characters
#1144: FILE: hw/net/sungem.h:59:
+#define GREG_STAT_MIF 0x00020000 /* MIF signalled interrupt */
ERROR: code indent should never use tabs
#1144: FILE: hw/net/sungem.h:59:
+#define GREG_STAT_MIF^I^I0x00020000^I/* MIF signalled interrupt^I*/$
WARNING: line over 80 characters
#1145: FILE: hw/net/sungem.h:60:
+#define GREG_STAT_PCIERR 0x00040000 /* PCI Error interrupt */
ERROR: code indent should never use tabs
#1145: FILE: hw/net/sungem.h:60:
+#define GREG_STAT_PCIERR^I0x00040000^I/* PCI Error interrupt^I^I*/$
WARNING: line over 80 characters
#1146: FILE: hw/net/sungem.h:61:
+#define GREG_STAT_TXNR 0xfff80000 /* == TXDMA_TXDONE reg val */
ERROR: code indent should never use tabs
#1146: FILE: hw/net/sungem.h:61:
+#define GREG_STAT_TXNR^I^I0xfff80000^I/* == TXDMA_TXDONE reg val^I*/$
ERROR: code indent should never use tabs
#1147: FILE: hw/net/sungem.h:62:
+#define GREG_STAT_TXNR_SHIFT^I19$
ERROR: code indent should never use tabs
#1153: FILE: hw/net/sungem.h:68:
+#define GREG_STAT_LATCH^I (GREG_STAT_TXALL | GREG_STAT_TXINTME | \$
WARNING: line over 80 characters
#1166: FILE: hw/net/sungem.h:81:
+#define GREG_PCIESTAT_BADACK 0x00000001 /* No ACK64# during ABS64 cycle */
ERROR: code indent should never use tabs
#1166: FILE: hw/net/sungem.h:81:
+#define GREG_PCIESTAT_BADACK^I0x00000001^I/* No ACK64# during ABS64 cycle^I*/$
WARNING: line over 80 characters
#1167: FILE: hw/net/sungem.h:82:
+#define GREG_PCIESTAT_DTRTO 0x00000002 /* Delayed transaction timeout */
ERROR: code indent should never use tabs
#1167: FILE: hw/net/sungem.h:82:
+#define GREG_PCIESTAT_DTRTO^I0x00000002^I/* Delayed transaction timeout^I*/$
WARNING: line over 80 characters
#1168: FILE: hw/net/sungem.h:83:
+#define GREG_PCIESTAT_OTHER 0x00000004 /* Other PCI error, check cfg space */
ERROR: code indent should never use tabs
#1168: FILE: hw/net/sungem.h:83:
+#define GREG_PCIESTAT_OTHER^I0x00000004^I/* Other PCI error, check cfg space */$
WARNING: line over 80 characters
#1176: FILE: hw/net/sungem.h:91:
+#define GREG_BIFCFG_SLOWCLK 0x00000001 /* Set if PCI runs < 25Mhz */
ERROR: code indent should never use tabs
#1176: FILE: hw/net/sungem.h:91:
+#define GREG_BIFCFG_SLOWCLK^I0x00000001^I/* Set if PCI runs < 25Mhz^I*/$
WARNING: line over 80 characters
#1177: FILE: hw/net/sungem.h:92:
+#define GREG_BIFCFG_B64DIS 0x00000002 /* Disable 64bit wide data cycle*/
ERROR: code indent should never use tabs
#1177: FILE: hw/net/sungem.h:92:
+#define GREG_BIFCFG_B64DIS^I0x00000002^I/* Disable 64bit wide data cycle*/$
WARNING: line over 80 characters
#1178: FILE: hw/net/sungem.h:93:
+#define GREG_BIFCFG_M66EN 0x00000004 /* Set if on 66Mhz PCI segment */
ERROR: code indent should never use tabs
#1178: FILE: hw/net/sungem.h:93:
+#define GREG_BIFCFG_M66EN^I0x00000004^I/* Set if on 66Mhz PCI segment^I*/$
WARNING: line over 80 characters
#1181: FILE: hw/net/sungem.h:96:
+#define GREG_BIFDIAG_BURSTSM 0x007f0000 /* PCI Burst state machine */
ERROR: code indent should never use tabs
#1181: FILE: hw/net/sungem.h:96:
+#define GREG_BIFDIAG_BURSTSM^I0x007f0000^I/* PCI Burst state machine^I*/$
WARNING: line over 80 characters
#1182: FILE: hw/net/sungem.h:97:
+#define GREG_BIFDIAG_BIFSM 0xff000000 /* BIF state machine */
ERROR: code indent should never use tabs
#1182: FILE: hw/net/sungem.h:97:
+#define GREG_BIFDIAG_BIFSM^I0xff000000^I/* BIF state machine^I^I*/$
WARNING: line over 80 characters
#1191: FILE: hw/net/sungem.h:106:
+#define GREG_SWRST_TXRST 0x00000001 /* TX Software Reset */
ERROR: code indent should never use tabs
#1191: FILE: hw/net/sungem.h:106:
+#define GREG_SWRST_TXRST^I0x00000001^I/* TX Software Reset^I^I*/$
WARNING: line over 80 characters
#1192: FILE: hw/net/sungem.h:107:
+#define GREG_SWRST_RXRST 0x00000002 /* RX Software Reset */
ERROR: code indent should never use tabs
#1192: FILE: hw/net/sungem.h:107:
+#define GREG_SWRST_RXRST^I0x00000002^I/* RX Software Reset^I^I*/$
WARNING: line over 80 characters
#1193: FILE: hw/net/sungem.h:108:
+#define GREG_SWRST_RSTOUT 0x00000004 /* Force RST# pin active */
ERROR: code indent should never use tabs
#1193: FILE: hw/net/sungem.h:108:
+#define GREG_SWRST_RSTOUT^I0x00000004^I/* Force RST# pin active^I*/$
WARNING: line over 80 characters
#1194: FILE: hw/net/sungem.h:109:
+#define GREG_SWRST_CACHESIZE 0x00ff0000 /* RIO only: cache line size */
ERROR: code indent should never use tabs
#1194: FILE: hw/net/sungem.h:109:
+#define GREG_SWRST_CACHESIZE^I0x00ff0000^I/* RIO only: cache line size^I*/$
ERROR: code indent should never use tabs
#1195: FILE: hw/net/sungem.h:110:
+#define GREG_SWRST_CACHE_SHIFT^I16$
ERROR: code indent should never use tabs
#1198: FILE: hw/net/sungem.h:113:
+#define TXDMA_KICK^I0x2000UL^I/* TX Kick Register^I^I*/$
ERROR: code indent should never use tabs
#1199: FILE: hw/net/sungem.h:114:
+#define TXDMA_CFG^I0x2004UL^I/* TX Configuration Register^I*/$
ERROR: code indent should never use tabs
#1200: FILE: hw/net/sungem.h:115:
+#define TXDMA_DBLOW^I0x2008UL^I/* TX Desc. Base Low^I^I*/$
ERROR: code indent should never use tabs
#1201: FILE: hw/net/sungem.h:116:
+#define TXDMA_DBHI^I0x200CUL^I/* TX Desc. Base High^I^I*/$
ERROR: code indent should never use tabs
#1202: FILE: hw/net/sungem.h:117:
+#define TXDMA_FWPTR^I0x2014UL^I/* TX FIFO Write Pointer^I*/$
ERROR: code indent should never use tabs
#1203: FILE: hw/net/sungem.h:118:
+#define TXDMA_FSWPTR^I0x2018UL^I/* TX FIFO Shadow Write Pointer^I*/$
ERROR: code indent should never use tabs
#1204: FILE: hw/net/sungem.h:119:
+#define TXDMA_FRPTR^I0x201CUL^I/* TX FIFO Read Pointer^I^I*/$
ERROR: code indent should never use tabs
#1205: FILE: hw/net/sungem.h:120:
+#define TXDMA_FSRPTR^I0x2020UL^I/* TX FIFO Shadow Read Pointer^I*/$
ERROR: code indent should never use tabs
#1206: FILE: hw/net/sungem.h:121:
+#define TXDMA_PCNT^I0x2024UL^I/* TX FIFO Packet Counter^I*/$
ERROR: code indent should never use tabs
#1207: FILE: hw/net/sungem.h:122:
+#define TXDMA_SMACHINE^I0x2028UL^I/* TX State Machine Register^I*/$
ERROR: code indent should never use tabs
#1208: FILE: hw/net/sungem.h:123:
+#define TXDMA_DPLOW^I0x2030UL^I/* TX Data Pointer Low^I^I*/$
ERROR: code indent should never use tabs
#1209: FILE: hw/net/sungem.h:124:
+#define TXDMA_DPHI^I0x2034UL^I/* TX Data Pointer High^I^I*/$
ERROR: code indent should never use tabs
#1210: FILE: hw/net/sungem.h:125:
+#define TXDMA_TXDONE^I0x2100UL^I/* TX Completion Register^I*/$
ERROR: code indent should never use tabs
#1211: FILE: hw/net/sungem.h:126:
+#define TXDMA_FADDR^I0x2104UL^I/* TX FIFO Address^I^I*/$
ERROR: code indent should never use tabs #1212: FILE: hw/net/sungem.h:127:
+#define TXDMA_FTAG^I0x2108UL^I/* TX FIFO Tag^I^I^I*/$
ERROR: code indent should never use tabs
#1213: FILE: hw/net/sungem.h:128:
+#define TXDMA_DLOW^I0x210CUL^I/* TX FIFO Data Low^I^I*/$
ERROR: code indent should never use tabs
#1214: FILE: hw/net/sungem.h:129:
+#define TXDMA_DHIT1^I0x2110UL^I/* TX FIFO Data HighT1^I^I*/$
ERROR: code indent should never use tabs
#1215: FILE: hw/net/sungem.h:130:
+#define TXDMA_DHIT0^I0x2114UL^I/* TX FIFO Data HighT0^I^I*/$
ERROR: code indent should never use tabs #1216: FILE: hw/net/sungem.h:131:
+#define TXDMA_FSZ^I0x2118UL^I/* TX FIFO Size^I^I^I*/$
WARNING: line over 80 characters
#1238: FILE: hw/net/sungem.h:153:
+#define TXDMA_CFG_ENABLE 0x00000001 /* Enable TX DMA channel */
ERROR: code indent should never use tabs
#1238: FILE: hw/net/sungem.h:153:
+#define TXDMA_CFG_ENABLE^I0x00000001^I/* Enable TX DMA channel^I*/$
WARNING: line over 80 characters
#1239: FILE: hw/net/sungem.h:154:
+#define TXDMA_CFG_RINGSZ 0x0000001e /* TX descriptor ring size */
ERROR: code indent should never use tabs
#1239: FILE: hw/net/sungem.h:154:
+#define TXDMA_CFG_RINGSZ^I0x0000001e^I/* TX descriptor ring size^I*/$
WARNING: line over 80 characters
#1240: FILE: hw/net/sungem.h:155:
+#define TXDMA_CFG_RINGSZ_32 0x00000000 /* 32 TX descriptors */
ERROR: code indent should never use tabs
#1240: FILE: hw/net/sungem.h:155:
+#define TXDMA_CFG_RINGSZ_32^I0x00000000^I/* 32 TX descriptors^I^I*/$
WARNING: line over 80 characters
#1241: FILE: hw/net/sungem.h:156:
+#define TXDMA_CFG_RINGSZ_64 0x00000002 /* 64 TX descriptors */
ERROR: code indent should never use tabs
#1241: FILE: hw/net/sungem.h:156:
+#define TXDMA_CFG_RINGSZ_64^I0x00000002^I/* 64 TX descriptors^I^I*/$
WARNING: line over 80 characters
#1242: FILE: hw/net/sungem.h:157:
+#define TXDMA_CFG_RINGSZ_128 0x00000004 /* 128 TX descriptors */
ERROR: code indent should never use tabs
#1242: FILE: hw/net/sungem.h:157:
+#define TXDMA_CFG_RINGSZ_128^I0x00000004^I/* 128 TX descriptors^I^I*/$
WARNING: line over 80 characters
#1243: FILE: hw/net/sungem.h:158:
+#define TXDMA_CFG_RINGSZ_256 0x00000006 /* 256 TX descriptors */
ERROR: code indent should never use tabs
#1243: FILE: hw/net/sungem.h:158:
+#define TXDMA_CFG_RINGSZ_256^I0x00000006^I/* 256 TX descriptors^I^I*/$
WARNING: line over 80 characters
#1244: FILE: hw/net/sungem.h:159:
+#define TXDMA_CFG_RINGSZ_512 0x00000008 /* 512 TX descriptors */
ERROR: code indent should never use tabs
#1244: FILE: hw/net/sungem.h:159:
+#define TXDMA_CFG_RINGSZ_512^I0x00000008^I/* 512 TX descriptors^I^I*/$
WARNING: line over 80 characters
#1245: FILE: hw/net/sungem.h:160:
+#define TXDMA_CFG_RINGSZ_1K 0x0000000a /* 1024 TX descriptors */
ERROR: code indent should never use tabs
#1245: FILE: hw/net/sungem.h:160:
+#define TXDMA_CFG_RINGSZ_1K^I0x0000000a^I/* 1024 TX descriptors^I^I*/$
WARNING: line over 80 characters
#1246: FILE: hw/net/sungem.h:161:
+#define TXDMA_CFG_RINGSZ_2K 0x0000000c /* 2048 TX descriptors */
ERROR: code indent should never use tabs
#1246: FILE: hw/net/sungem.h:161:
+#define TXDMA_CFG_RINGSZ_2K^I0x0000000c^I/* 2048 TX descriptors^I^I*/$
WARNING: line over 80 characters
#1247: FILE: hw/net/sungem.h:162:
+#define TXDMA_CFG_RINGSZ_4K 0x0000000e /* 4096 TX descriptors */
ERROR: code indent should never use tabs
#1247: FILE: hw/net/sungem.h:162:
+#define TXDMA_CFG_RINGSZ_4K^I0x0000000e^I/* 4096 TX descriptors^I^I*/$
WARNING: line over 80 characters
#1248: FILE: hw/net/sungem.h:163:
+#define TXDMA_CFG_RINGSZ_8K 0x00000010 /* 8192 TX descriptors */
ERROR: code indent should never use tabs
#1248: FILE: hw/net/sungem.h:163:
+#define TXDMA_CFG_RINGSZ_8K^I0x00000010^I/* 8192 TX descriptors^I^I*/$
WARNING: line over 80 characters
#1249: FILE: hw/net/sungem.h:164:
+#define TXDMA_CFG_PIOSEL 0x00000020 /* Enable TX FIFO PIO from cpu */
ERROR: code indent should never use tabs
#1249: FILE: hw/net/sungem.h:164:
+#define TXDMA_CFG_PIOSEL^I0x00000020^I/* Enable TX FIFO PIO from cpu^I*/$
WARNING: line over 80 characters
#1250: FILE: hw/net/sungem.h:165:
+#define TXDMA_CFG_FTHRESH 0x001ffc00 /* TX FIFO Threshold, obsolete */
ERROR: code indent should never use tabs
#1250: FILE: hw/net/sungem.h:165:
+#define TXDMA_CFG_FTHRESH^I0x001ffc00^I/* TX FIFO Threshold, obsolete^I*/$
WARNING: line over 80 characters
#1251: FILE: hw/net/sungem.h:166:
+#define TXDMA_CFG_PMODE 0x00200000 /* TXALL irq means TX FIFO empty*/
ERROR: code indent should never use tabs
#1251: FILE: hw/net/sungem.h:166:
+#define TXDMA_CFG_PMODE^I^I0x00200000^I/* TXALL irq means TX FIFO empty*/$
WARNING: line over 80 characters
#1260: FILE: hw/net/sungem.h:175:
+/* The rest of the TXDMA_* registers are for diagnostics and debug, I will document
ERROR: code indent should never use tabs
#1264: FILE: hw/net/sungem.h:179:
+/* WakeOnLan Registers^I*/$
ERROR: code indent should never use tabs
#1265: FILE: hw/net/sungem.h:180:
+#define WOL_MATCH0^I0x3000UL$
ERROR: code indent should never use tabs
#1266: FILE: hw/net/sungem.h:181:
+#define WOL_MATCH1^I0x3004UL$
ERROR: code indent should never use tabs
#1267: FILE: hw/net/sungem.h:182:
+#define WOL_MATCH2^I0x3008UL$
ERROR: code indent should never use tabs
#1268: FILE: hw/net/sungem.h:183:
+#define WOL_MCOUNT^I0x300CUL$
ERROR: code indent should never use tabs
#1269: FILE: hw/net/sungem.h:184:
+#define WOL_WAKECSR^I0x3010UL$
ERROR: code indent should never use tabs
#1273: FILE: hw/net/sungem.h:188:
+#define WOL_MCOUNT_N^I^I0x00000010$
ERROR: code indent should never use tabs
#1274: FILE: hw/net/sungem.h:189:
+#define WOL_MCOUNT_M^I^I0x00000000 /* 0 << 8 */$
ERROR: code indent should never use tabs
#1276: FILE: hw/net/sungem.h:191:
+#define WOL_WAKECSR_ENABLE^I0x00000001$
ERROR: code indent should never use tabs
#1277: FILE: hw/net/sungem.h:192:
+#define WOL_WAKECSR_MII^I^I0x00000002$
ERROR: code indent should never use tabs
#1278: FILE: hw/net/sungem.h:193:
+#define WOL_WAKECSR_SEEN^I0x00000004$
ERROR: code indent should never use tabs
#1279: FILE: hw/net/sungem.h:194:
+#define WOL_WAKECSR_FILT_UCAST^I0x00000008$
ERROR: code indent should never use tabs
#1280: FILE: hw/net/sungem.h:195:
+#define WOL_WAKECSR_FILT_MCAST^I0x00000010$
ERROR: code indent should never use tabs
#1281: FILE: hw/net/sungem.h:196:
+#define WOL_WAKECSR_FILT_BCAST^I0x00000020$
ERROR: code indent should never use tabs
#1282: FILE: hw/net/sungem.h:197:
+#define WOL_WAKECSR_FILT_SEEN^I0x00000040$
ERROR: code indent should never use tabs
#1286: FILE: hw/net/sungem.h:201:
+#define RXDMA_CFG^I0x4000UL^I/* RX Configuration Register^I*/$
ERROR: code indent should never use tabs
#1287: FILE: hw/net/sungem.h:202:
+#define RXDMA_DBLOW^I0x4004UL^I/* RX Descriptor Base Low^I*/$
ERROR: code indent should never use tabs
#1288: FILE: hw/net/sungem.h:203:
+#define RXDMA_DBHI^I0x4008UL^I/* RX Descriptor Base High^I*/$
ERROR: code indent should never use tabs
#1289: FILE: hw/net/sungem.h:204:
+#define RXDMA_FWPTR^I0x400CUL^I/* RX FIFO Write Pointer^I*/$
ERROR: code indent should never use tabs
#1290: FILE: hw/net/sungem.h:205:
+#define RXDMA_FSWPTR^I0x4010UL^I/* RX FIFO Shadow Write Pointer^I*/$
ERROR: code indent should never use tabs
#1291: FILE: hw/net/sungem.h:206:
+#define RXDMA_FRPTR^I0x4014UL^I/* RX FIFO Read Pointer^I^I*/$
ERROR: code indent should never use tabs
#1292: FILE: hw/net/sungem.h:207:
+#define RXDMA_PCNT^I0x4018UL^I/* RX FIFO Packet Counter^I*/$
ERROR: code indent should never use tabs
#1293: FILE: hw/net/sungem.h:208:
+#define RXDMA_SMACHINE^I0x401CUL^I/* RX State Machine Register^I*/$
ERROR: code indent should never use tabs
#1294: FILE: hw/net/sungem.h:209:
+#define RXDMA_PTHRESH^I0x4020UL^I/* Pause Thresholds^I^I*/$
ERROR: code indent should never use tabs
#1295: FILE: hw/net/sungem.h:210:
+#define RXDMA_DPLOW^I0x4024UL^I/* RX Data Pointer Low^I^I*/$
ERROR: code indent should never use tabs
#1296: FILE: hw/net/sungem.h:211:
+#define RXDMA_DPHI^I0x4028UL^I/* RX Data Pointer High^I^I*/$
ERROR: code indent should never use tabs
#1297: FILE: hw/net/sungem.h:212:
+#define RXDMA_KICK^I0x4100UL^I/* RX Kick Register^I^I*/$
ERROR: code indent should never use tabs
#1298: FILE: hw/net/sungem.h:213:
+#define RXDMA_DONE^I0x4104UL^I/* RX Completion Register^I*/$
ERROR: code indent should never use tabs
#1299: FILE: hw/net/sungem.h:214:
+#define RXDMA_BLANK^I0x4108UL^I/* RX Blanking Register^I^I*/$
ERROR: code indent should never use tabs
#1300: FILE: hw/net/sungem.h:215:
+#define RXDMA_FADDR^I0x410CUL^I/* RX FIFO Address^I^I*/$
ERROR: code indent should never use tabs #1301: FILE: hw/net/sungem.h:216:
+#define RXDMA_FTAG^I0x4110UL^I/* RX FIFO Tag^I^I^I*/$
ERROR: code indent should never use tabs
#1302: FILE: hw/net/sungem.h:217:
+#define RXDMA_DLOW^I0x4114UL^I/* RX FIFO Data Low^I^I*/$
ERROR: code indent should never use tabs
#1303: FILE: hw/net/sungem.h:218:
+#define RXDMA_DHIT1^I0x4118UL^I/* RX FIFO Data HighT0^I^I*/$
ERROR: code indent should never use tabs
#1304: FILE: hw/net/sungem.h:219:
+#define RXDMA_DHIT0^I0x411CUL^I/* RX FIFO Data HighT1^I^I*/$
ERROR: code indent should never use tabs #1305: FILE: hw/net/sungem.h:220:
+#define RXDMA_FSZ^I0x4120UL^I/* RX FIFO Size^I^I^I*/$
WARNING: line over 80 characters
#1308: FILE: hw/net/sungem.h:223:
+#define RXDMA_CFG_ENABLE 0x00000001 /* Enable RX DMA channel */
ERROR: code indent should never use tabs
#1308: FILE: hw/net/sungem.h:223:
+#define RXDMA_CFG_ENABLE^I0x00000001^I/* Enable RX DMA channel^I*/$
WARNING: line over 80 characters
#1309: FILE: hw/net/sungem.h:224:
+#define RXDMA_CFG_RINGSZ 0x0000001e /* RX descriptor ring size */
ERROR: code indent should never use tabs
#1309: FILE: hw/net/sungem.h:224:
+#define RXDMA_CFG_RINGSZ^I0x0000001e^I/* RX descriptor ring size^I*/$
WARNING: line over 80 characters
#1310: FILE: hw/net/sungem.h:225:
+#define RXDMA_CFG_RINGSZ_32 0x00000000 /* - 32 entries */
ERROR: code indent should never use tabs
#1310: FILE: hw/net/sungem.h:225:
+#define RXDMA_CFG_RINGSZ_32^I0x00000000^I/* - 32 entries^I^I*/$
WARNING: line over 80 characters
#1311: FILE: hw/net/sungem.h:226:
+#define RXDMA_CFG_RINGSZ_64 0x00000002 /* - 64 entries */
ERROR: code indent should never use tabs
#1311: FILE: hw/net/sungem.h:226:
+#define RXDMA_CFG_RINGSZ_64^I0x00000002^I/* - 64 entries^I^I*/$
WARNING: line over 80 characters
#1312: FILE: hw/net/sungem.h:227:
+#define RXDMA_CFG_RINGSZ_128 0x00000004 /* - 128 entries */
ERROR: code indent should never use tabs
#1312: FILE: hw/net/sungem.h:227:
+#define RXDMA_CFG_RINGSZ_128^I0x00000004^I/* - 128 entries^I^I*/$
WARNING: line over 80 characters
#1313: FILE: hw/net/sungem.h:228:
+#define RXDMA_CFG_RINGSZ_256 0x00000006 /* - 256 entries */
ERROR: code indent should never use tabs
#1313: FILE: hw/net/sungem.h:228:
+#define RXDMA_CFG_RINGSZ_256^I0x00000006^I/* - 256 entries^I^I*/$
WARNING: line over 80 characters
#1314: FILE: hw/net/sungem.h:229:
+#define RXDMA_CFG_RINGSZ_512 0x00000008 /* - 512 entries */
ERROR: code indent should never use tabs
#1314: FILE: hw/net/sungem.h:229:
+#define RXDMA_CFG_RINGSZ_512^I0x00000008^I/* - 512 entries^I^I*/$
WARNING: line over 80 characters
#1315: FILE: hw/net/sungem.h:230:
+#define RXDMA_CFG_RINGSZ_1K 0x0000000a /* - 1024 entries */
ERROR: code indent should never use tabs
#1315: FILE: hw/net/sungem.h:230:
+#define RXDMA_CFG_RINGSZ_1K^I0x0000000a^I/* - 1024 entries^I^I*/$
WARNING: line over 80 characters
#1316: FILE: hw/net/sungem.h:231:
+#define RXDMA_CFG_RINGSZ_2K 0x0000000c /* - 2048 entries */
ERROR: code indent should never use tabs
#1316: FILE: hw/net/sungem.h:231:
+#define RXDMA_CFG_RINGSZ_2K^I0x0000000c^I/* - 2048 entries^I^I*/$
WARNING: line over 80 characters
#1317: FILE: hw/net/sungem.h:232:
+#define RXDMA_CFG_RINGSZ_4K 0x0000000e /* - 4096 entries */
ERROR: code indent should never use tabs
#1317: FILE: hw/net/sungem.h:232:
+#define RXDMA_CFG_RINGSZ_4K^I0x0000000e^I/* - 4096 entries^I^I*/$
WARNING: line over 80 characters
#1318: FILE: hw/net/sungem.h:233:
+#define RXDMA_CFG_RINGSZ_8K 0x00000010 /* - 8192 entries */
ERROR: code indent should never use tabs
#1318: FILE: hw/net/sungem.h:233:
+#define RXDMA_CFG_RINGSZ_8K^I0x00000010^I/* - 8192 entries^I^I*/$
WARNING: line over 80 characters
#1319: FILE: hw/net/sungem.h:234:
+#define RXDMA_CFG_RINGSZ_BDISAB 0x00000020 /* Disable RX desc batching */
ERROR: code indent should never use tabs
#1319: FILE: hw/net/sungem.h:234:
+#define RXDMA_CFG_RINGSZ_BDISAB^I0x00000020^I/* Disable RX desc batching^I*/$
WARNING: line over 80 characters
#1320: FILE: hw/net/sungem.h:235:
+#define RXDMA_CFG_FBOFF 0x00001c00 /* Offset of first data byte */
ERROR: code indent should never use tabs
#1320: FILE: hw/net/sungem.h:235:
+#define RXDMA_CFG_FBOFF^I^I0x00001c00^I/* Offset of first data byte^I*/$
WARNING: line over 80 characters
#1321: FILE: hw/net/sungem.h:236:
+#define RXDMA_CFG_CSUMOFF 0x000fe000 /* Skip bytes before csum calc */
ERROR: code indent should never use tabs
#1321: FILE: hw/net/sungem.h:236:
+#define RXDMA_CFG_CSUMOFF^I0x000fe000^I/* Skip bytes before csum calc^I*/$
WARNING: line over 80 characters
#1322: FILE: hw/net/sungem.h:237:
+#define RXDMA_CFG_FTHRESH 0x07000000 /* RX FIFO dma start threshold */
ERROR: code indent should never use tabs
#1322: FILE: hw/net/sungem.h:237:
+#define RXDMA_CFG_FTHRESH^I0x07000000^I/* RX FIFO dma start threshold^I*/$
WARNING: line over 80 characters
#1323: FILE: hw/net/sungem.h:238:
+#define RXDMA_CFG_FTHRESH_64 0x00000000 /* - 64 bytes */
ERROR: code indent should never use tabs
#1323: FILE: hw/net/sungem.h:238:
+#define RXDMA_CFG_FTHRESH_64^I0x00000000^I/* - 64 bytes^I^I^I*/$
WARNING: line over 80 characters
#1324: FILE: hw/net/sungem.h:239:
+#define RXDMA_CFG_FTHRESH_128 0x01000000 /* - 128 bytes */
ERROR: code indent should never use tabs
#1324: FILE: hw/net/sungem.h:239:
+#define RXDMA_CFG_FTHRESH_128^I0x01000000^I/* - 128 bytes^I^I^I*/$
WARNING: line over 80 characters
#1325: FILE: hw/net/sungem.h:240:
+#define RXDMA_CFG_FTHRESH_256 0x02000000 /* - 256 bytes */
ERROR: code indent should never use tabs
#1325: FILE: hw/net/sungem.h:240:
+#define RXDMA_CFG_FTHRESH_256^I0x02000000^I/* - 256 bytes^I^I^I*/$
WARNING: line over 80 characters
#1326: FILE: hw/net/sungem.h:241:
+#define RXDMA_CFG_FTHRESH_512 0x03000000 /* - 512 bytes */
ERROR: code indent should never use tabs
#1326: FILE: hw/net/sungem.h:241:
+#define RXDMA_CFG_FTHRESH_512^I0x03000000^I/* - 512 bytes^I^I^I*/$
WARNING: line over 80 characters
#1327: FILE: hw/net/sungem.h:242:
+#define RXDMA_CFG_FTHRESH_1K 0x04000000 /* - 1024 bytes */
ERROR: code indent should never use tabs
#1327: FILE: hw/net/sungem.h:242:
+#define RXDMA_CFG_FTHRESH_1K^I0x04000000^I/* - 1024 bytes^I^I^I*/$
WARNING: line over 80 characters
#1328: FILE: hw/net/sungem.h:243:
+#define RXDMA_CFG_FTHRESH_2K 0x05000000 /* - 2048 bytes */
ERROR: code indent should never use tabs
#1328: FILE: hw/net/sungem.h:243:
+#define RXDMA_CFG_FTHRESH_2K^I0x05000000^I/* - 2048 bytes^I^I^I*/$
WARNING: line over 80 characters
#1342: FILE: hw/net/sungem.h:257:
+#define RXDMA_PTHRESH_OFF 0x000001ff /* XOFF emitted w/FIFO > this */
ERROR: code indent should never use tabs
#1342: FILE: hw/net/sungem.h:257:
+#define RXDMA_PTHRESH_OFF^I0x000001ff^I/* XOFF emitted w/FIFO > this^I*/$
WARNING: line over 80 characters
#1343: FILE: hw/net/sungem.h:258:
+#define RXDMA_PTHRESH_ON 0x001ff000 /* XON emitted w/FIFO < this */
ERROR: code indent should never use tabs
#1343: FILE: hw/net/sungem.h:258:
+#define RXDMA_PTHRESH_ON^I0x001ff000^I/* XON emitted w/FIFO < this^I*/$
ERROR: code indent should never use tabs
#1369: FILE: hw/net/sungem.h:284:
+#define RXDMA_BLANK_IPKTS^I0x000001ff^I/* RX_DONE asserted after this$
ERROR: code indent should never use tabs
#1370: FILE: hw/net/sungem.h:285:
+^I^I^I^I^I^I * many packets received since$
ERROR: code indent should never use tabs
#1371: FILE: hw/net/sungem.h:286:
+^I^I^I^I^I^I * previous RX_DONE.$
ERROR: code indent should never use tabs
#1372: FILE: hw/net/sungem.h:287:
+^I^I^I^I^I^I */$
ERROR: code indent should never use tabs
#1373: FILE: hw/net/sungem.h:288:
+#define RXDMA_BLANK_ITIME^I0x000ff000^I/* RX_DONE asserted after this$
ERROR: code indent should never use tabs
#1374: FILE: hw/net/sungem.h:289:
+^I^I^I^I^I^I * many clocks (measured in 2048$
WARNING: line over 80 characters
#1375: FILE: hw/net/sungem.h:290:
+ * PCI clocks) were counted since
ERROR: code indent should never use tabs
#1375: FILE: hw/net/sungem.h:290:
+^I^I^I^I^I^I * PCI clocks) were counted since$
ERROR: code indent should never use tabs
#1376: FILE: hw/net/sungem.h:291:
+^I^I^I^I^I^I * the previous RX_DONE.$
ERROR: code indent should never use tabs
#1377: FILE: hw/net/sungem.h:292:
+^I^I^I^I^I^I */$
WARNING: line over 80 characters
#1386: FILE: hw/net/sungem.h:301:
+/* The rest of the RXDMA_* registers are for diagnostics and debug, I will document
ERROR: code indent should never use tabs
#1391: FILE: hw/net/sungem.h:306:
+#define MAC_TXRST^I0x6000UL^I/* TX MAC Software Reset Command*/$
ERROR: code indent should never use tabs
#1392: FILE: hw/net/sungem.h:307:
+#define MAC_RXRST^I0x6004UL^I/* RX MAC Software Reset Command*/$
ERROR: code indent should never use tabs
#1393: FILE: hw/net/sungem.h:308:
+#define MAC_SNDPAUSE^I0x6008UL^I/* Send Pause Command Register^I*/$
ERROR: code indent should never use tabs
#1394: FILE: hw/net/sungem.h:309:
+#define MAC_TXSTAT^I0x6010UL^I/* TX MAC Status Register^I*/$
ERROR: code indent should never use tabs
#1395: FILE: hw/net/sungem.h:310:
+#define MAC_RXSTAT^I0x6014UL^I/* RX MAC Status Register^I*/$
ERROR: code indent should never use tabs
#1396: FILE: hw/net/sungem.h:311:
+#define MAC_CSTAT^I0x6018UL^I/* MAC Control Status Register^I*/$
ERROR: code indent should never use tabs
#1397: FILE: hw/net/sungem.h:312:
+#define MAC_TXMASK^I0x6020UL^I/* TX MAC Mask Register^I^I*/$
ERROR: code indent should never use tabs
#1398: FILE: hw/net/sungem.h:313:
+#define MAC_RXMASK^I0x6024UL^I/* RX MAC Mask Register^I^I*/$
ERROR: code indent should never use tabs
#1399: FILE: hw/net/sungem.h:314:
+#define MAC_MCMASK^I0x6028UL^I/* MAC Control Mask Register^I*/$
ERROR: code indent should never use tabs
#1400: FILE: hw/net/sungem.h:315:
+#define MAC_TXCFG^I0x6030UL^I/* TX MAC Configuration Register*/$
ERROR: code indent should never use tabs
#1401: FILE: hw/net/sungem.h:316:
+#define MAC_RXCFG^I0x6034UL^I/* RX MAC Configuration Register*/$
ERROR: code indent should never use tabs
#1402: FILE: hw/net/sungem.h:317:
+#define MAC_MCCFG^I0x6038UL^I/* MAC Control Config Register^I*/$
ERROR: code indent should never use tabs
#1403: FILE: hw/net/sungem.h:318:
+#define MAC_XIFCFG^I0x603CUL^I/* XIF Configuration Register^I*/$
ERROR: code indent should never use tabs
#1404: FILE: hw/net/sungem.h:319:
+#define MAC_IPG0^I0x6040UL^I/* InterPacketGap0 Register^I*/$
ERROR: code indent should never use tabs
#1405: FILE: hw/net/sungem.h:320:
+#define MAC_IPG1^I0x6044UL^I/* InterPacketGap1 Register^I*/$
ERROR: code indent should never use tabs
#1406: FILE: hw/net/sungem.h:321:
+#define MAC_IPG2^I0x6048UL^I/* InterPacketGap2 Register^I*/$
ERROR: code indent should never use tabs
#1407: FILE: hw/net/sungem.h:322:
+#define MAC_STIME^I0x604CUL^I/* SlotTime Register^I^I*/$
ERROR: code indent should never use tabs
#1408: FILE: hw/net/sungem.h:323:
+#define MAC_MINFSZ^I0x6050UL^I/* MinFrameSize Register^I*/$
ERROR: code indent should never use tabs
#1409: FILE: hw/net/sungem.h:324:
+#define MAC_MAXFSZ^I0x6054UL^I/* MaxFrameSize Register^I*/$
ERROR: code indent should never use tabs
#1410: FILE: hw/net/sungem.h:325:
+#define MAC_PASIZE^I0x6058UL^I/* PA Size Register^I^I*/$
ERROR: code indent should never use tabs
#1411: FILE: hw/net/sungem.h:326:
+#define MAC_JAMSIZE^I0x605CUL^I/* JamSize Register^I^I*/$
ERROR: code indent should never use tabs
#1412: FILE: hw/net/sungem.h:327:
+#define MAC_ATTLIM^I0x6060UL^I/* Attempt Limit Register^I*/$
ERROR: code indent should never use tabs
#1413: FILE: hw/net/sungem.h:328:
+#define MAC_MCTYPE^I0x6064UL^I/* MAC Control Type Register^I*/$
ERROR: code indent should never use tabs
#1414: FILE: hw/net/sungem.h:329:
+#define MAC_ADDR0^I0x6080UL^I/* MAC Address 0 Register^I*/$
ERROR: code indent should never use tabs
#1415: FILE: hw/net/sungem.h:330:
+#define MAC_ADDR1^I0x6084UL^I/* MAC Address 1 Register^I*/$
ERROR: code indent should never use tabs
#1416: FILE: hw/net/sungem.h:331:
+#define MAC_ADDR2^I0x6088UL^I/* MAC Address 2 Register^I*/$
ERROR: code indent should never use tabs
#1417: FILE: hw/net/sungem.h:332:
+#define MAC_ADDR3^I0x608CUL^I/* MAC Address 3 Register^I*/$
ERROR: code indent should never use tabs
#1418: FILE: hw/net/sungem.h:333:
+#define MAC_ADDR4^I0x6090UL^I/* MAC Address 4 Register^I*/$
ERROR: code indent should never use tabs
#1419: FILE: hw/net/sungem.h:334:
+#define MAC_ADDR5^I0x6094UL^I/* MAC Address 5 Register^I*/$
ERROR: code indent should never use tabs
#1420: FILE: hw/net/sungem.h:335:
+#define MAC_ADDR6^I0x6098UL^I/* MAC Address 6 Register^I*/$
ERROR: code indent should never use tabs
#1421: FILE: hw/net/sungem.h:336:
+#define MAC_ADDR7^I0x609CUL^I/* MAC Address 7 Register^I*/$
ERROR: code indent should never use tabs
#1422: FILE: hw/net/sungem.h:337:
+#define MAC_ADDR8^I0x60A0UL^I/* MAC Address 8 Register^I*/$
ERROR: code indent should never use tabs
#1423: FILE: hw/net/sungem.h:338:
+#define MAC_AFILT0^I0x60A4UL^I/* Address Filter 0 Register^I*/$
ERROR: code indent should never use tabs
#1424: FILE: hw/net/sungem.h:339:
+#define MAC_AFILT1^I0x60A8UL^I/* Address Filter 1 Register^I*/$
ERROR: code indent should never use tabs
#1425: FILE: hw/net/sungem.h:340:
+#define MAC_AFILT2^I0x60ACUL^I/* Address Filter 2 Register^I*/$
ERROR: code indent should never use tabs
#1426: FILE: hw/net/sungem.h:341:
+#define MAC_AF21MSK^I0x60B0UL^I/* Address Filter 2&1 Mask Reg^I*/$
ERROR: code indent should never use tabs
#1427: FILE: hw/net/sungem.h:342:
+#define MAC_AF0MSK^I0x60B4UL^I/* Address Filter 0 Mask Reg^I*/$
ERROR: code indent should never use tabs
#1428: FILE: hw/net/sungem.h:343:
+#define MAC_HASH0^I0x60C0UL^I/* Hash Table 0 Register^I*/$
ERROR: code indent should never use tabs
#1429: FILE: hw/net/sungem.h:344:
+#define MAC_HASH1^I0x60C4UL^I/* Hash Table 1 Register^I*/$
ERROR: code indent should never use tabs
#1430: FILE: hw/net/sungem.h:345:
+#define MAC_HASH2^I0x60C8UL^I/* Hash Table 2 Register^I*/$
ERROR: code indent should never use tabs
#1431: FILE: hw/net/sungem.h:346:
+#define MAC_HASH3^I0x60CCUL^I/* Hash Table 3 Register^I*/$
ERROR: code indent should never use tabs
#1432: FILE: hw/net/sungem.h:347:
+#define MAC_HASH4^I0x60D0UL^I/* Hash Table 4 Register^I*/$
ERROR: code indent should never use tabs
#1433: FILE: hw/net/sungem.h:348:
+#define MAC_HASH5^I0x60D4UL^I/* Hash Table 5 Register^I*/$
ERROR: code indent should never use tabs
#1434: FILE: hw/net/sungem.h:349:
+#define MAC_HASH6^I0x60D8UL^I/* Hash Table 6 Register^I*/$
ERROR: code indent should never use tabs
#1435: FILE: hw/net/sungem.h:350:
+#define MAC_HASH7^I0x60DCUL^I/* Hash Table 7 Register^I*/$
ERROR: code indent should never use tabs
#1436: FILE: hw/net/sungem.h:351:
+#define MAC_HASH8^I0x60E0UL^I/* Hash Table 8 Register^I*/$
ERROR: code indent should never use tabs
#1437: FILE: hw/net/sungem.h:352:
+#define MAC_HASH9^I0x60E4UL^I/* Hash Table 9 Register^I*/$
ERROR: code indent should never use tabs
#1438: FILE: hw/net/sungem.h:353:
+#define MAC_HASH10^I0x60E8UL^I/* Hash Table 10 Register^I*/$
ERROR: code indent should never use tabs
#1439: FILE: hw/net/sungem.h:354:
+#define MAC_HASH11^I0x60ECUL^I/* Hash Table 11 Register^I*/$
ERROR: code indent should never use tabs
#1440: FILE: hw/net/sungem.h:355:
+#define MAC_HASH12^I0x60F0UL^I/* Hash Table 12 Register^I*/$
ERROR: code indent should never use tabs
#1441: FILE: hw/net/sungem.h:356:
+#define MAC_HASH13^I0x60F4UL^I/* Hash Table 13 Register^I*/$
ERROR: code indent should never use tabs
#1442: FILE: hw/net/sungem.h:357:
+#define MAC_HASH14^I0x60F8UL^I/* Hash Table 14 Register^I*/$
ERROR: code indent should never use tabs
#1443: FILE: hw/net/sungem.h:358:
+#define MAC_HASH15^I0x60FCUL^I/* Hash Table 15 Register^I*/$
ERROR: code indent should never use tabs
#1444: FILE: hw/net/sungem.h:359:
+#define MAC_NCOLL^I0x6100UL^I/* Normal Collision Counter^I*/$
ERROR: code indent should never use tabs
#1445: FILE: hw/net/sungem.h:360:
+#define MAC_FASUCC^I0x6104UL^I/* First Attmpt. Succ Coll Ctr.^I*/$
ERROR: code indent should never use tabs
#1446: FILE: hw/net/sungem.h:361:
+#define MAC_ECOLL^I0x6108UL^I/* Excessive Collision Counter^I*/$
ERROR: code indent should never use tabs
#1447: FILE: hw/net/sungem.h:362:
+#define MAC_LCOLL^I0x610CUL^I/* Late Collision Counter^I*/$
ERROR: code indent should never use tabs #1448: FILE: hw/net/sungem.h:363:
+#define MAC_DTIMER^I0x6110UL^I/* Defer Timer^I^I^I*/$
ERROR: code indent should never use tabs
#1449: FILE: hw/net/sungem.h:364:
+#define MAC_PATMPS^I0x6114UL^I/* Peak Attempts Register^I*/$
ERROR: code indent should never use tabs
#1450: FILE: hw/net/sungem.h:365:
+#define MAC_RFCTR^I0x6118UL^I/* Receive Frame Counter^I*/$
ERROR: code indent should never use tabs
#1451: FILE: hw/net/sungem.h:366:
+#define MAC_LERR^I0x611CUL^I/* Length Error Counter^I^I*/$
ERROR: code indent should never use tabs
#1452: FILE: hw/net/sungem.h:367:
+#define MAC_AERR^I0x6120UL^I/* Alignment Error Counter^I*/$
ERROR: code indent should never use tabs
#1453: FILE: hw/net/sungem.h:368:
+#define MAC_FCSERR^I0x6124UL^I/* FCS Error Counter^I^I*/$
ERROR: code indent should never use tabs
#1454: FILE: hw/net/sungem.h:369:
+#define MAC_RXCVERR^I0x6128UL^I/* RX code Violation Error Ctr^I*/$
ERROR: code indent should never use tabs
#1455: FILE: hw/net/sungem.h:370:
+#define MAC_RANDSEED^I0x6130UL^I/* Random Number Seed Register^I*/$
ERROR: code indent should never use tabs
#1456: FILE: hw/net/sungem.h:371:
+#define MAC_SMACHINE^I0x6134UL^I/* State Machine Register^I*/$
ERROR: code indent should never use tabs
#1459: FILE: hw/net/sungem.h:374:
+#define MAC_TXRST_CMD^I0x00000001^I/* Start sw reset, self-clears^I*/$
ERROR: code indent should never use tabs
#1462: FILE: hw/net/sungem.h:377:
+#define MAC_RXRST_CMD^I0x00000001^I/* Start sw reset, self-clears^I*/$
ERROR: code indent should never use tabs
#1465: FILE: hw/net/sungem.h:380:
+#define MAC_SNDPAUSE_TS^I0x0000ffff^I/* The pause_time operand used in$
ERROR: code indent should never use tabs
#1466: FILE: hw/net/sungem.h:381:
+^I^I^I^I^I * Send_Pause and flow-control$
ERROR: code indent should never use tabs
#1467: FILE: hw/net/sungem.h:382:
+^I^I^I^I^I * handshakes.$
ERROR: code indent should never use tabs
#1468: FILE: hw/net/sungem.h:383:
+^I^I^I^I^I */$
ERROR: code indent should never use tabs
#1469: FILE: hw/net/sungem.h:384:
+#define MAC_SNDPAUSE_SP^I0x00010000^I/* Setting this bit instructs the MAC$
ERROR: code indent should never use tabs
#1470: FILE: hw/net/sungem.h:385:
+^I^I^I^I^I * to send a Pause Flow Control$
ERROR: code indent should never use tabs
#1471: FILE: hw/net/sungem.h:386:
+^I^I^I^I^I * frame onto the network.$
ERROR: code indent should never use tabs
#1472: FILE: hw/net/sungem.h:387:
+^I^I^I^I^I */$
ERROR: code indent should never use tabs
#1475: FILE: hw/net/sungem.h:390:
+#define MAC_TXSTAT_XMIT^I0x00000001^I/* Frame Transmitted^I^I*/$
ERROR: code indent should never use tabs
#1476: FILE: hw/net/sungem.h:391:
+#define MAC_TXSTAT_URUN^I0x00000002^I/* TX Underrun^I^I^I*/$
ERROR: code indent should never use tabs
#1477: FILE: hw/net/sungem.h:392:
+#define MAC_TXSTAT_MPE^I0x00000004^I/* Max Packet Size Error^I*/$
ERROR: code indent should never use tabs
#1478: FILE: hw/net/sungem.h:393:
+#define MAC_TXSTAT_NCE^I0x00000008^I/* Normal Collision Cntr Expire^I*/$
ERROR: code indent should never use tabs
#1479: FILE: hw/net/sungem.h:394:
+#define MAC_TXSTAT_ECE^I0x00000010^I/* Excess Collision Cntr Expire^I*/$
ERROR: code indent should never use tabs
#1480: FILE: hw/net/sungem.h:395:
+#define MAC_TXSTAT_LCE^I0x00000020^I/* Late Collision Cntr Expire^I*/$
ERROR: code indent should never use tabs
#1481: FILE: hw/net/sungem.h:396:
+#define MAC_TXSTAT_FCE^I0x00000040^I/* First Collision Cntr Expire^I*/$
ERROR: code indent should never use tabs
#1482: FILE: hw/net/sungem.h:397:
+#define MAC_TXSTAT_DTE^I0x00000080^I/* Defer Timer Expire^I^I*/$
ERROR: code indent should never use tabs
#1483: FILE: hw/net/sungem.h:398:
+#define MAC_TXSTAT_PCE^I0x00000100^I/* Peak Attempts Cntr Expire^I*/$
ERROR: code indent should never use tabs
#1486: FILE: hw/net/sungem.h:401:
+#define MAC_RXSTAT_RCV^I0x00000001^I/* Frame Received^I^I*/$
ERROR: code indent should never use tabs
#1487: FILE: hw/net/sungem.h:402:
+#define MAC_RXSTAT_OFLW^I0x00000002^I/* Receive Overflow^I^I*/$
ERROR: code indent should never use tabs
#1488: FILE: hw/net/sungem.h:403:
+#define MAC_RXSTAT_FCE^I0x00000004^I/* Frame Cntr Expire^I^I*/$
ERROR: code indent should never use tabs
#1489: FILE: hw/net/sungem.h:404:
+#define MAC_RXSTAT_ACE^I0x00000008^I/* Align Error Cntr Expire^I*/$
ERROR: code indent should never use tabs
#1490: FILE: hw/net/sungem.h:405:
+#define MAC_RXSTAT_CCE^I0x00000010^I/* CRC Error Cntr Expire^I*/$
ERROR: code indent should never use tabs
#1491: FILE: hw/net/sungem.h:406:
+#define MAC_RXSTAT_LCE^I0x00000020^I/* Length Error Cntr Expire^I*/$
ERROR: code indent should never use tabs
#1492: FILE: hw/net/sungem.h:407:
+#define MAC_RXSTAT_VCE^I0x00000040^I/* Code Violation Cntr Expire^I*/$
ERROR: code indent should never use tabs
#1495: FILE: hw/net/sungem.h:410:
+#define MAC_CSTAT_PRCV^I0x00000001^I/* Pause Received^I^I*/$
ERROR: code indent should never use tabs
#1496: FILE: hw/net/sungem.h:411:
+#define MAC_CSTAT_PS^I0x00000002^I/* Paused State^I^I^I*/$
ERROR: code indent should never use tabs
#1497: FILE: hw/net/sungem.h:412:
+#define MAC_CSTAT_NPS^I0x00000004^I/* Not Paused State^I^I*/$
ERROR: code indent should never use tabs
#1498: FILE: hw/net/sungem.h:413:
+#define MAC_CSTAT_PTR^I0xffff0000^I/* Pause Time Received^I^I*/$
ERROR: code indent should never use tabs
#1510: FILE: hw/net/sungem.h:425:
+ *^I zero before any other bits in this register are changed.$
ERROR: code indent should never use tabs
#1512: FILE: hw/net/sungem.h:427:
+ *^I Also, enabling the Carrier Extension feature of GEM is$
ERROR: code indent should never use tabs
#1513: FILE: hw/net/sungem.h:428:
+ *^I a 3 step process 1) Set TX Carrier Extension 2) Set$
ERROR: code indent should never use tabs
#1514: FILE: hw/net/sungem.h:429:
+ *^I RX Carrier Extension 3) Set Slot Time to 0x200. This$
ERROR: code indent should never use tabs
#1515: FILE: hw/net/sungem.h:430:
+ *^I mode must be enabled when in half-duplex at 1Gbps, else$
ERROR: code indent should never use tabs
#1516: FILE: hw/net/sungem.h:431:
+ *^I it must be disabled.$
ERROR: code indent should never use tabs
#1518: FILE: hw/net/sungem.h:433:
+#define MAC_TXCFG_ENAB^I0x00000001^I/* TX MAC Enable^I^I*/$
ERROR: code indent should never use tabs
#1519: FILE: hw/net/sungem.h:434:
+#define MAC_TXCFG_ICS^I0x00000002^I/* Ignore Carrier Sense^I^I*/$
ERROR: code indent should never use tabs
#1520: FILE: hw/net/sungem.h:435:
+#define MAC_TXCFG_ICOLL^I0x00000004^I/* Ignore Collisions^I^I*/$
ERROR: code indent should never use tabs
#1521: FILE: hw/net/sungem.h:436:
+#define MAC_TXCFG_EIPG0^I0x00000008^I/* Enable IPG0^I^I^I*/$
ERROR: code indent should never use tabs
#1522: FILE: hw/net/sungem.h:437:
+#define MAC_TXCFG_NGU^I0x00000010^I/* Never Give Up^I^I*/$
ERROR: code indent should never use tabs
#1523: FILE: hw/net/sungem.h:438:
+#define MAC_TXCFG_NGUL^I0x00000020^I/* Never Give Up Limit^I^I*/$
ERROR: code indent should never use tabs
#1524: FILE: hw/net/sungem.h:439:
+#define MAC_TXCFG_NBO^I0x00000040^I/* No Backoff^I^I^I*/$
ERROR: code indent should never use tabs
#1525: FILE: hw/net/sungem.h:440:
+#define MAC_TXCFG_SD^I0x00000080^I/* Slow Down^I^I^I*/$
ERROR: code indent should never use tabs #1526: FILE: hw/net/sungem.h:441:
+#define MAC_TXCFG_NFCS^I0x00000100^I/* No FCS^I^I^I*/$
ERROR: code indent should never use tabs
#1527: FILE: hw/net/sungem.h:442:
+#define MAC_TXCFG_TCE^I0x00000200^I/* TX Carrier Extension^I^I*/$
ERROR: code indent should never use tabs
#1532: FILE: hw/net/sungem.h:447:
+ *^I zero before any other bits in this register are changed.$
ERROR: code indent should never use tabs
#1534: FILE: hw/net/sungem.h:449:
+ *^I Similar rules apply to the Hash Filter Enable bit when$
ERROR: code indent should never use tabs
#1535: FILE: hw/net/sungem.h:450:
+ *^I programming the hash table registers, and the Address Filter$
ERROR: code indent should never use tabs
#1536: FILE: hw/net/sungem.h:451:
+ *^I Enable bit when programming the address filter registers.$
ERROR: code indent should never use tabs
#1538: FILE: hw/net/sungem.h:453:
+#define MAC_RXCFG_ENAB^I0x00000001^I/* RX MAC Enable^I^I*/$
ERROR: code indent should never use tabs
#1539: FILE: hw/net/sungem.h:454:
+#define MAC_RXCFG_SPAD^I0x00000002^I/* Strip Pad^I^I^I*/$
ERROR: code indent should never use tabs
#1540: FILE: hw/net/sungem.h:455:
+#define MAC_RXCFG_SFCS^I0x00000004^I/* Strip FCS^I^I^I*/$
ERROR: code indent should never use tabs
#1541: FILE: hw/net/sungem.h:456:
+#define MAC_RXCFG_PROM^I0x00000008^I/* Promiscuous Mode^I^I*/$
ERROR: code indent should never use tabs
#1542: FILE: hw/net/sungem.h:457:
+#define MAC_RXCFG_PGRP^I0x00000010^I/* Promiscuous Group^I^I*/$
ERROR: code indent should never use tabs
#1543: FILE: hw/net/sungem.h:458:
+#define MAC_RXCFG_HFE^I0x00000020^I/* Hash Filter Enable^I^I*/$
ERROR: code indent should never use tabs
#1544: FILE: hw/net/sungem.h:459:
+#define MAC_RXCFG_AFE^I0x00000040^I/* Address Filter Enable^I*/$
ERROR: code indent should never use tabs
#1545: FILE: hw/net/sungem.h:460:
+#define MAC_RXCFG_DDE^I0x00000080^I/* Disable Discard on Error^I*/$
ERROR: code indent should never use tabs
#1546: FILE: hw/net/sungem.h:461:
+#define MAC_RXCFG_RCE^I0x00000100^I/* RX Carrier Extension^I^I*/$
ERROR: code indent should never use tabs
#1549: FILE: hw/net/sungem.h:464:
+#define MAC_MCCFG_SPE^I0x00000001^I/* Send Pause Enable^I^I*/$
ERROR: code indent should never use tabs
#1550: FILE: hw/net/sungem.h:465:
+#define MAC_MCCFG_RPE^I0x00000002^I/* Receive Pause Enable^I^I*/$
ERROR: code indent should never use tabs
#1551: FILE: hw/net/sungem.h:466:
+#define MAC_MCCFG_PMC^I0x00000004^I/* Pass MAC Control^I^I*/$
ERROR: code indent should never use tabs
#1558: FILE: hw/net/sungem.h:473:
+#define MAC_XIFCFG_OE^I0x00000001^I/* MII TX Output Driver Enable^I*/$
ERROR: code indent should never use tabs
#1559: FILE: hw/net/sungem.h:474:
+#define MAC_XIFCFG_LBCK^I0x00000002^I/* Loopback TX to RX^I^I*/$
ERROR: code indent should never use tabs
#1560: FILE: hw/net/sungem.h:475:
+#define MAC_XIFCFG_DISE^I0x00000004^I/* Disable RX path during TX^I*/$
ERROR: code indent should never use tabs
#1561: FILE: hw/net/sungem.h:476:
+#define MAC_XIFCFG_GMII^I0x00000008^I/* Use GMII clocks + datapath^I*/$
ERROR: code indent should never use tabs
#1562: FILE: hw/net/sungem.h:477:
+#define MAC_XIFCFG_MBOE^I0x00000010^I/* Controls MII_BUF_EN pin^I*/$
ERROR: code indent should never use tabs
#1563: FILE: hw/net/sungem.h:478:
+#define MAC_XIFCFG_LLED^I0x00000020^I/* Force LINKLED# active (low)^I*/$
ERROR: code indent should never use tabs
#1564: FILE: hw/net/sungem.h:479:
+#define MAC_XIFCFG_FLED^I0x00000040^I/* Force FDPLXLED# active (low)^I*/$
ERROR: code indent should never use tabs
#1616: FILE: hw/net/sungem.h:531:
+#define MAC_MAXFSZ_MFS^I0x00007fff^I/* Max Frame Size^I^I*/$
ERROR: code indent should never use tabs
#1617: FILE: hw/net/sungem.h:532:
+#define MAC_MAXFSZ_MBS^I0x7fff0000^I/* Max Burst Size^I^I*/$
ERROR: code indent should never use tabs
#1664: FILE: hw/net/sungem.h:579:
+ *^I the chip.$
ERROR: code indent should never use tabs
#1665: FILE: hw/net/sungem.h:580:
+ *^I^IMAC_Address_2 = (a << 8) | b$
ERROR: code indent should never use tabs
#1666: FILE: hw/net/sungem.h:581:
+ *^I^IMAC_Address_1 = (c << 8) | d$
ERROR: code indent should never use tabs
#1667: FILE: hw/net/sungem.h:582:
+ *^I^IMAC_Address_0 = (e << 8) | f$
ERROR: code indent should never use tabs
#1702: FILE: hw/net/sungem.h:617:
+#define MIF_BBCLK^I0x6200UL^I/* MIF Bit-Bang Clock^I^I*/$
ERROR: code indent should never use tabs
#1703: FILE: hw/net/sungem.h:618:
+#define MIF_BBDATA^I0x6204UL^I/* MIF Bit-Band Data^I^I*/$
ERROR: code indent should never use tabs
#1704: FILE: hw/net/sungem.h:619:
+#define MIF_BBOENAB^I0x6208UL^I/* MIF Bit-Bang Output Enable^I*/$
ERROR: code indent should never use tabs
#1705: FILE: hw/net/sungem.h:620:
+#define MIF_FRAME^I0x620CUL^I/* MIF Frame/Output Register^I*/$
ERROR: code indent should never use tabs
#1706: FILE: hw/net/sungem.h:621:
+#define MIF_CFG^I^I0x6210UL^I/* MIF Configuration Register^I*/$
ERROR: code indent should never use tabs
#1707: FILE: hw/net/sungem.h:622:
+#define MIF_MASK^I0x6214UL^I/* MIF Mask Register^I^I*/$
ERROR: code indent should never use tabs
#1708: FILE: hw/net/sungem.h:623:
+#define MIF_STATUS^I0x6218UL^I/* MIF Status Register^I^I*/$
ERROR: code indent should never use tabs
#1709: FILE: hw/net/sungem.h:624:
+#define MIF_SMACHINE^I0x621CUL^I/* MIF State Machine Register^I*/$
ERROR: code indent should never use tabs
#1740: FILE: hw/net/sungem.h:655:
+#define MIF_CFG_PSELECT^I0x00000001^I/* Xcvr slct: 0=mdio0 1=mdio1^I*/$
ERROR: code indent should never use tabs
#1741: FILE: hw/net/sungem.h:656:
+#define MIF_CFG_POLL^I0x00000002^I/* Enable polling mechanism^I*/$
ERROR: code indent should never use tabs
#1742: FILE: hw/net/sungem.h:657:
+#define MIF_CFG_BBMODE^I0x00000004^I/* 1=bit-bang 0=frame mode^I*/$
ERROR: code indent should never use tabs
#1743: FILE: hw/net/sungem.h:658:
+#define MIF_CFG_PRADDR^I0x000000f8^I/* Xcvr poll register address^I*/$
ERROR: code indent should never use tabs
#1744: FILE: hw/net/sungem.h:659:
+#define MIF_CFG_MDI0^I0x00000100^I/* MDIO_0 present or read-bit^I*/$
ERROR: code indent should never use tabs
#1745: FILE: hw/net/sungem.h:660:
+#define MIF_CFG_MDI1^I0x00000200^I/* MDIO_1 present or read-bit^I*/$
ERROR: code indent should never use tabs
#1746: FILE: hw/net/sungem.h:661:
+#define MIF_CFG_PPADDR^I0x00007c00^I/* Xcvr poll PHY address^I*/$
ERROR: code indent should never use tabs
#1755: FILE: hw/net/sungem.h:670:
+#define MIF_FRAME_ST^I0xc0000000^I/* STart of frame^I^I*/$
ERROR: code indent should never use tabs #1756: FILE: hw/net/sungem.h:671:
+#define MIF_FRAME_OP^I0x30000000^I/* OPcode^I^I^I*/$
ERROR: code indent should never use tabs
#1757: FILE: hw/net/sungem.h:672:
+#define MIF_FRAME_PHYAD^I0x0f800000^I/* PHY ADdress^I^I^I*/$
ERROR: code indent should never use tabs
#1758: FILE: hw/net/sungem.h:673:
+#define MIF_FRAME_REGAD^I0x007c0000^I/* REGister ADdress^I^I*/$
ERROR: code indent should never use tabs
#1759: FILE: hw/net/sungem.h:674:
+#define MIF_FRAME_TAMSB^I0x00020000^I/* Turn Around MSB^I^I*/$
ERROR: code indent should never use tabs
#1760: FILE: hw/net/sungem.h:675:
+#define MIF_FRAME_TALSB^I0x00010000^I/* Turn Around LSB^I^I*/$
ERROR: code indent should never use tabs
#1761: FILE: hw/net/sungem.h:676:
+#define MIF_FRAME_DATA^I0x0000ffff^I/* Instruction Payload^I^I*/$
ERROR: code indent should never use tabs
#1767: FILE: hw/net/sungem.h:682:
+#define MIF_STATUS_DATA^I0xffff0000^I/* Live image of XCVR reg^I*/$
ERROR: code indent should never use tabs
#1768: FILE: hw/net/sungem.h:683:
+#define MIF_STATUS_STAT^I0x0000ffff^I/* Which bits have changed^I*/$
ERROR: code indent should never use tabs
#1776: FILE: hw/net/sungem.h:691:
+#define PCS_MIICTRL^I0x9000UL^I/* PCS MII Control Register^I*/$
ERROR: code indent should never use tabs
#1777: FILE: hw/net/sungem.h:692:
+#define PCS_MIISTAT^I0x9004UL^I/* PCS MII Status Register^I*/$
ERROR: code indent should never use tabs
#1778: FILE: hw/net/sungem.h:693:
+#define PCS_MIIADV^I0x9008UL^I/* PCS MII Advertisement Reg^I*/$
ERROR: code indent should never use tabs
#1779: FILE: hw/net/sungem.h:694:
+#define PCS_MIILP^I0x900CUL^I/* PCS MII Link Partner Ability^I*/$
ERROR: code indent should never use tabs
#1780: FILE: hw/net/sungem.h:695:
+#define PCS_CFG^I^I0x9010UL^I/* PCS Configuration Register^I*/$
ERROR: code indent should never use tabs
#1781: FILE: hw/net/sungem.h:696:
+#define PCS_SMACHINE^I0x9014UL^I/* PCS State Machine Register^I*/$
ERROR: code indent should never use tabs
#1782: FILE: hw/net/sungem.h:697:
+#define PCS_ISTAT^I0x9018UL^I/* PCS Interrupt Status Reg^I*/$
ERROR: code indent should never use tabs
#1783: FILE: hw/net/sungem.h:698:
+#define PCS_DMODE^I0x9050UL^I/* Datapath Mode Register^I*/$
ERROR: code indent should never use tabs
#1784: FILE: hw/net/sungem.h:699:
+#define PCS_SCTRL^I0x9054UL^I/* Serialink Control Register^I*/$
ERROR: code indent should never use tabs
#1785: FILE: hw/net/sungem.h:700:
+#define PCS_SOS^I^I0x9058UL^I/* Shared Output Select Reg^I*/$
ERROR: code indent should never use tabs
#1786: FILE: hw/net/sungem.h:701:
+#define PCS_SSTATE^I0x905CUL^I/* Serialink State Register^I*/$
ERROR: code indent should never use tabs
#1789: FILE: hw/net/sungem.h:704:
+#define PCS_MIICTRL_SPD^I0x00000040^I/* Read as one, writes ignored^I*/$
ERROR: code indent should never use tabs
#1790: FILE: hw/net/sungem.h:705:
+#define PCS_MIICTRL_CT^I0x00000080^I/* Force COL signal active^I*/$
ERROR: code indent should never use tabs
#1791: FILE: hw/net/sungem.h:706:
+#define PCS_MIICTRL_DM^I0x00000100^I/* Duplex mode, forced low^I*/$
ERROR: code indent should never use tabs
#1792: FILE: hw/net/sungem.h:707:
+#define PCS_MIICTRL_RAN^I0x00000200^I/* Restart auto-neg, self clear^I*/$
ERROR: code indent should never use tabs
#1793: FILE: hw/net/sungem.h:708:
+#define PCS_MIICTRL_ISO^I0x00000400^I/* Read as zero, writes ignored^I*/$
ERROR: code indent should never use tabs
#1794: FILE: hw/net/sungem.h:709:
+#define PCS_MIICTRL_PD^I0x00000800^I/* Read as zero, writes ignored^I*/$
ERROR: code indent should never use tabs
#1795: FILE: hw/net/sungem.h:710:
+#define PCS_MIICTRL_ANE^I0x00001000^I/* Auto-neg enable^I^I*/$
ERROR: code indent should never use tabs
#1796: FILE: hw/net/sungem.h:711:
+#define PCS_MIICTRL_SS^I0x00002000^I/* Read as zero, writes ignored^I*/$
ERROR: code indent should never use tabs
#1797: FILE: hw/net/sungem.h:712:
+#define PCS_MIICTRL_WB^I0x00004000^I/* Wrapback, loopback at 10-bit$
ERROR: code indent should never use tabs
#1798: FILE: hw/net/sungem.h:713:
+^I^I^I^I^I * input side of Serialink$
ERROR: code indent should never use tabs
#1799: FILE: hw/net/sungem.h:714:
+^I^I^I^I^I */$
ERROR: code indent should never use tabs
#1800: FILE: hw/net/sungem.h:715:
+#define PCS_MIICTRL_RST^I0x00008000^I/* Resets PCS, self clearing^I*/$
ERROR: code indent should never use tabs
#1803: FILE: hw/net/sungem.h:718:
+#define PCS_MIISTAT_EC^I0x00000001^I/* Ext Capability: Read as zero^I*/$
ERROR: code indent should never use tabs
#1804: FILE: hw/net/sungem.h:719:
+#define PCS_MIISTAT_JD^I0x00000002^I/* Jabber Detect: Read as zero^I*/$
ERROR: code indent should never use tabs
#1805: FILE: hw/net/sungem.h:720:
+#define PCS_MIISTAT_LS^I0x00000004^I/* Link Status: 1=up 0=down^I*/$
ERROR: code indent should never use tabs
#1806: FILE: hw/net/sungem.h:721:
+#define PCS_MIISTAT_ANA^I0x00000008^I/* Auto-neg Ability, always 1^I*/$
ERROR: code indent should never use tabs
#1807: FILE: hw/net/sungem.h:722:
+#define PCS_MIISTAT_RF^I0x00000010^I/* Remote Fault^I^I^I*/$
ERROR: code indent should never use tabs
#1808: FILE: hw/net/sungem.h:723:
+#define PCS_MIISTAT_ANC^I0x00000020^I/* Auto-neg complete^I^I*/$
ERROR: code indent should never use tabs
#1809: FILE: hw/net/sungem.h:724:
+#define PCS_MIISTAT_ES^I0x00000100^I/* Extended Status, always 1^I*/$
ERROR: code indent should never use tabs
#1812: FILE: hw/net/sungem.h:727:
+#define PCS_MIIADV_FD^I0x00000020^I/* Advertise Full Duplex^I*/$
ERROR: code indent should never use tabs
#1813: FILE: hw/net/sungem.h:728:
+#define PCS_MIIADV_HD^I0x00000040^I/* Advertise Half Duplex^I*/$
ERROR: code indent should never use tabs
#1814: FILE: hw/net/sungem.h:729:
+#define PCS_MIIADV_SP^I0x00000080^I/* Advertise Symmetric Pause^I*/$
ERROR: code indent should never use tabs
#1815: FILE: hw/net/sungem.h:730:
+#define PCS_MIIADV_AP^I0x00000100^I/* Advertise Asymmetric Pause^I*/$
ERROR: code indent should never use tabs
#1816: FILE: hw/net/sungem.h:731:
+#define PCS_MIIADV_RF^I0x00003000^I/* Remote Fault^I^I^I*/$
ERROR: code indent should never use tabs
#1817: FILE: hw/net/sungem.h:732:
+#define PCS_MIIADV_ACK^I0x00004000^I/* Read-only^I^I^I*/$
ERROR: code indent should never use tabs
#1818: FILE: hw/net/sungem.h:733:
+#define PCS_MIIADV_NP^I0x00008000^I/* Next-page, forced low^I*/$
ERROR: code indent should never use tabs
#1826: FILE: hw/net/sungem.h:741:
+#define PCS_CFG_ENABLE^I0x00000001^I/* Must be zero while changing$
ERROR: code indent should never use tabs
#1827: FILE: hw/net/sungem.h:742:
+^I^I^I^I^I * PCS MII advertisement reg.$
ERROR: code indent should never use tabs
#1828: FILE: hw/net/sungem.h:743:
+^I^I^I^I^I */$
ERROR: code indent should never use tabs
#1829: FILE: hw/net/sungem.h:744:
+#define PCS_CFG_SDO^I0x00000002^I/* Signal detect override^I*/$
ERROR: code indent should never use tabs
#1830: FILE: hw/net/sungem.h:745:
+#define PCS_CFG_SDL^I0x00000004^I/* Signal detect active low^I*/$
ERROR: code indent should never use tabs #1831: FILE: hw/net/sungem.h:746:
+#define PCS_CFG_JS^I0x00000018^I/* Jitter-study:$
ERROR: code indent should never use tabs
#1832: FILE: hw/net/sungem.h:747:
+^I^I^I^I^I * 0 = normal operation$
ERROR: code indent should never use tabs
#1833: FILE: hw/net/sungem.h:748:
+^I^I^I^I^I * 1 = high-frequency test pattern$
ERROR: code indent should never use tabs
#1834: FILE: hw/net/sungem.h:749:
+^I^I^I^I^I * 2 = low-frequency test pattern$
ERROR: code indent should never use tabs
#1835: FILE: hw/net/sungem.h:750:
+^I^I^I^I^I * 3 = reserved$
ERROR: code indent should never use tabs
#1836: FILE: hw/net/sungem.h:751:
+^I^I^I^I^I */$
ERROR: code indent should never use tabs
#1837: FILE: hw/net/sungem.h:752:
+#define PCS_CFG_TO^I0x00000020^I/* 10ms auto-neg timer override^I*/$
ERROR: code indent should never use tabs
#1842: FILE: hw/net/sungem.h:757:
+#define PCS_ISTAT_LSC^I0x00000004^I/* Link Status Change^I^I*/$
ERROR: code indent should never use tabs
#1845: FILE: hw/net/sungem.h:760:
+#define PCS_DMODE_SM^I0x00000001^I/* 1 = use internal Serialink^I*/$
ERROR: code indent should never use tabs
#1846: FILE: hw/net/sungem.h:761:
+#define PCS_DMODE_ESM^I0x00000002^I/* External SERDES mode^I^I*/$
ERROR: code indent should never use tabs
#1847: FILE: hw/net/sungem.h:762:
+#define PCS_DMODE_MGM^I0x00000004^I/* MII/GMII mode^I^I*/$
ERROR: code indent should never use tabs
#1848: FILE: hw/net/sungem.h:763:
+#define PCS_DMODE_GMOE^I0x00000008^I/* GMII Output Enable^I^I*/$
ERROR: code indent should never use tabs
#1854: FILE: hw/net/sungem.h:769:
+#define PCS_SCTRL_LOOP^I0x00000001^I/* Loopback enable^I^I*/$
ERROR: code indent should never use tabs
#1855: FILE: hw/net/sungem.h:770:
+#define PCS_SCTRL_ESCD^I0x00000002^I/* Enable sync char detection^I*/$
ERROR: code indent should never use tabs
#1856: FILE: hw/net/sungem.h:771:
+#define PCS_SCTRL_LOCK^I0x00000004^I/* Lock to reference clock^I*/$
ERROR: code indent should never use tabs
#1857: FILE: hw/net/sungem.h:772:
+#define PCS_SCTRL_EMP^I0x00000018^I/* Output driver emphasis^I*/$
ERROR: code indent should never use tabs
#1858: FILE: hw/net/sungem.h:773:
+#define PCS_SCTRL_STEST^I0x000001c0^I/* Self test patterns^I^I*/$
ERROR: code indent should never use tabs
#1859: FILE: hw/net/sungem.h:774:
+#define PCS_SCTRL_PDWN^I0x00000200^I/* Software power-down^I^I*/$
ERROR: code indent should never use tabs
#1860: FILE: hw/net/sungem.h:775:
+#define PCS_SCTRL_RXZ^I0x00000c00^I/* PLL input to Serialink^I*/$
ERROR: code indent should never use tabs
#1861: FILE: hw/net/sungem.h:776:
+#define PCS_SCTRL_RXP^I0x00003000^I/* PLL input to Serialink^I*/$
ERROR: code indent should never use tabs
#1862: FILE: hw/net/sungem.h:777:
+#define PCS_SCTRL_TXZ^I0x0000c000^I/* PLL input to Serialink^I*/$
ERROR: code indent should never use tabs
#1863: FILE: hw/net/sungem.h:778:
+#define PCS_SCTRL_TXP^I0x00030000^I/* PLL input to Serialink^I*/$
ERROR: code indent should never use tabs
#1869: FILE: hw/net/sungem.h:784:
+#define PCS_SOS_PADDR^I0x00000003^I/* PROM Address^I^I^I*/$
ERROR: code indent should never use tabs
#1872: FILE: hw/net/sungem.h:787:
+#define PROM_START^I0x100000UL^I/* Expansion ROM run time access*/$
ERROR: code indent should never use tabs #1873: FILE: hw/net/sungem.h:788:
+#define PROM_SIZE^I0x0fffffUL^I/* Size of ROM^I^I^I*/$
ERROR: code indent should never use tabs #1874: FILE: hw/net/sungem.h:789:
+#define PROM_END^I0x200000UL^I/* End of ROM^I^I^I*/$
ERROR: code indent should never use tabs
#1878: FILE: hw/net/sungem.h:793:
+#define BMCR_SPD2^I0x0040^I^I/* Gigabit enable? (bcm5411)^I*/$
ERROR: code indent should never use tabs
#1879: FILE: hw/net/sungem.h:794:
+#define LPA_PAUSE^I0x0400$
ERROR: code indent should never use tabs
#1884: FILE: hw/net/sungem.h:799:
+#define MII_BCM5201_INTERRUPT^I^I^I0x1A$
ERROR: code indent should never use tabs #1885: FILE: hw/net/sungem.h:800:
+#define MII_BCM5201_INTERRUPT_INTENABLE^I^I0x4000$
ERROR: code indent should never use tabs
#1887: FILE: hw/net/sungem.h:802:
+#define MII_BCM5201_AUXMODE2^I^I^I0x1B$
ERROR: code indent should never use tabs
#1888: FILE: hw/net/sungem.h:803:
+#define MII_BCM5201_AUXMODE2_LOWPOWER^I^I0x0008$
ERROR: code indent should never use tabs
#1897: FILE: hw/net/sungem.h:812:
+#define MII_BCM5400_GB_CONTROL^I^I^I0x09$
ERROR: code indent should never use tabs #1898: FILE: hw/net/sungem.h:813:
+#define MII_BCM5400_GB_CONTROL_FULLDUPLEXCAP^I0x0200$
ERROR: code indent should never use tabs
#1922: FILE: hw/net/sungem.h:837:
+ uint64_t^Icontrol_word;$
ERROR: code indent should never use tabs
#1923: FILE: hw/net/sungem.h:838:
+ uint64_t^Ibuffer;$
ERROR: code indent should never use tabs
#1926: FILE: hw/net/sungem.h:841:
+#define TXDCTRL_BUFSZ^I0x0000000000007fffULL^I/* Buffer Size^I^I*/$
ERROR: code indent should never use tabs
#1927: FILE: hw/net/sungem.h:842:
+#define TXDCTRL_CSTART^I0x00000000001f8000ULL^I/* CSUM Start Offset^I*/$
ERROR: code indent should never use tabs
#1928: FILE: hw/net/sungem.h:843:
+#define TXDCTRL_COFF^I0x000000001fe00000ULL^I/* CSUM Stuff Offset^I*/$
ERROR: code indent should never use tabs
#1929: FILE: hw/net/sungem.h:844:
+#define TXDCTRL_CENAB^I0x0000000020000000ULL^I/* CSUM Enable^I^I*/$
ERROR: code indent should never use tabs
#1930: FILE: hw/net/sungem.h:845:
+#define TXDCTRL_EOF^I0x0000000040000000ULL^I/* End of Frame^I^I*/$
ERROR: code indent should never use tabs
#1931: FILE: hw/net/sungem.h:846:
+#define TXDCTRL_SOF^I0x0000000080000000ULL^I/* Start of Frame^I*/$
ERROR: code indent should never use tabs
#1932: FILE: hw/net/sungem.h:847:
+#define TXDCTRL_INTME^I0x0000000100000000ULL^I/* "Interrupt Me"^I*/$
ERROR: code indent should never use tabs
#1933: FILE: hw/net/sungem.h:848:
+#define TXDCTRL_NOCRC^I0x0000000200000000ULL^I/* No CRC Present^I*/$
ERROR: code indent should never use tabs
#1957: FILE: hw/net/sungem.h:872:
+ uint64_t^Istatus_word;$
ERROR: code indent should never use tabs
#1958: FILE: hw/net/sungem.h:873:
+ uint64_t^Ibuffer;$
ERROR: code indent should never use tabs
#1961: FILE: hw/net/sungem.h:876:
+#define RXDCTRL_TCPCSUM^I0x000000000000ffffULL^I/* TCP Pseudo-CSUM^I*/$
ERROR: code indent should never use tabs
#1962: FILE: hw/net/sungem.h:877:
+#define RXDCTRL_BUFSZ^I0x000000007fff0000ULL^I/* Buffer Size^I^I*/$
ERROR: code indent should never use tabs
#1963: FILE: hw/net/sungem.h:878:
+#define RXDCTRL_OWN^I0x0000000080000000ULL^I/* GEM owns this entry^I*/$
ERROR: code indent should never use tabs
#1964: FILE: hw/net/sungem.h:879:
+#define RXDCTRL_HASHVAL^I0x0ffff00000000000ULL^I/* Hash Value^I^I*/$
ERROR: code indent should never use tabs
#1965: FILE: hw/net/sungem.h:880:
+#define RXDCTRL_HPASS^I0x1000000000000000ULL^I/* Passed Hash Filter^I*/$
ERROR: code indent should never use tabs
#1966: FILE: hw/net/sungem.h:881:
+#define RXDCTRL_ALTMAC^I0x2000000000000000ULL^I/* Matched ALT MAC^I*/$
ERROR: code indent should never use tabs
#1967: FILE: hw/net/sungem.h:882:
+#define RXDCTRL_BAD^I0x4000000000000000ULL^I/* Frame has bad CRC^I*/$
total: 428 errors, 73 warnings, 1950 lines checked
Your patch has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS.
=== OUTPUT END ===
Test command exited with code: 1
---
Email generated automatically by Patchew [http://patchew.org/].
Please send your feedback to [email protected]
Quoted 4 lines · On Sun, 2016-08-14 at 15:54 -0700, [email protected]…
Hi,
Your series seems to have some coding style problems. See output below for more information:
Bla bla bla bla ...
Seriously, we have nazi stylebot on the list now ?
I made conscious decisions to style it this way and as far as the tabs in the .h are concerned, that's because the file is lifted from Linux and I'd like to keep it intact as much as possible.
Quoted 2,332 lines
Message-id: [email protected]
Subject: [Qemu-devel] [PATCH] net: Add SunGEM device emulation as found on Apple UniNorth
Type: series=== TEST SCRIPT BEGIN ===
#!/bin/bashBASE=base
n=1
total=$(git log --oneline $BASE.. | wc -l)
failed=0commits="$(git log --format=%H --reverse $BASE..)"
for c in $commits; do
echo "Checking PATCH $n/$total: $(git show --no-patch --format=%s $c)..."
if ! git show $c --format=email |./scripts/checkpatch.pl-- mailback -; then
failed=1
echo
fi
n=$((n+1))
doneexit $failed
=== TEST SCRIPT END ===Updating
3c8cf5a9c21ff8782164d1def7f44bd888713384
From https://github.com/patchew-project/qemu
* [new tag] patchew/[email protected] g.org -> patchew/[email protected] Switched to a new branch 'test'
bc69242 net: Add SunGEM device emulation as found on Apple UniNorth=== OUTPUT BEGIN ===
Checking PATCH 1/1: net: Add SunGEM device emulation as found on Apple UniNorth...
ERROR: spaces required around that '<<' (ctx:VxV)
#69: FILE:hw/net/sungem.c:26:
+#define DBGBIT(x) (1<<DEBUG_##x)
^WARNING: line over 80 characters
#71: FILE:hw/net/sungem.c:28:
+//static int debugflags = DBGBIT(ERR) | DBGBIT(INTERRUPT) | DBGBIT(RX) | DBGBIT(TX);ERROR: do not use C99 // comments
#71: FILE:hw/net/sungem.c:28:
+//static int debugflags = DBGBIT(ERR) | DBGBIT(INTERRUPT) | DBGBIT(RX) | DBGBIT(TX);ERROR: braces {} are necessary for all arms of this statement #74: FILE:
hw/net/sungem.c:31:
+ if (debugflags & DBGBIT(what)) \
[...]ERROR: braces {} are necessary for all arms of this statement #127: FILE:
hw/net/sungem.c:84:
+ if (reg <=0x1c)
[...]
+ else if (reg >=0x1000&& reg <=0x1010) [...]
+ else if (reg >=0x2000&& reg <=0x2034) [...]
+ else if (reg >=0x2100&& reg <=0x2118) [...]
+ else if (reg >=0x3000&& reg <=0x3010) [...]
+ else if (reg >=0x4000&& reg <=0x4028) [...]
+ else if (reg >=0x4100&& reg <=0x4120) [...]
+ else if (reg >=0x6000&& reg <=0x6134) [...]
+ else if (reg >=0x6200&& reg <=0x621c) [...]
+ else if (reg >=0x9000&& reg <=0x9018) [...]
+ else if (reg >=0x9050&& reg <=0x905c) [...]ERROR: braces {} are necessary for all arms of this statement #129: FILE:
hw/net/sungem.c:86:
+ else if (reg >=0x1000&& reg <=0x1010) [...]
+ else if (reg >=0x2000&& reg <=0x2034) [...]
+ else if (reg >=0x2100&& reg <=0x2118) [...]
+ else if (reg >=0x3000&& reg <=0x3010) [...]
+ else if (reg >=0x4000&& reg <=0x4028) [...]
+ else if (reg >=0x4100&& reg <=0x4120) [...]
+ else if (reg >=0x6000&& reg <=0x6134) [...]
+ else if (reg >=0x6200&& reg <=0x621c) [...]
+ else if (reg >=0x9000&& reg <=0x9018) [...]
+ else if (reg >=0x9050&& reg <=0x905c) [...]ERROR: braces {} are necessary for all arms of this statement #131: FILE:
hw/net/sungem.c:88:
+ else if (reg >=0x2000&& reg <=0x2034) [...]
+ else if (reg >=0x2100&& reg <=0x2118) [...]
+ else if (reg >=0x3000&& reg <=0x3010) [...]
+ else if (reg >=0x4000&& reg <=0x4028) [...]
+ else if (reg >=0x4100&& reg <=0x4120) [...]
+ else if (reg >=0x6000&& reg <=0x6134) [...]
+ else if (reg >=0x6200&& reg <=0x621c) [...]
+ else if (reg >=0x9000&& reg <=0x9018) [...]
+ else if (reg >=0x9050&& reg <=0x905c) [...]ERROR: braces {} are necessary for all arms of this statement #133: FILE:
hw/net/sungem.c:90:
+ else if (reg >=0x2100&& reg <=0x2118) [...]
+ else if (reg >=0x3000&& reg <=0x3010) [...]
+ else if (reg >=0x4000&& reg <=0x4028) [...]
+ else if (reg >=0x4100&& reg <=0x4120) [...]
+ else if (reg >=0x6000&& reg <=0x6134) [...]
+ else if (reg >=0x6200&& reg <=0x621c) [...]
+ else if (reg >=0x9000&& reg <=0x9018) [...]
+ else if (reg >=0x9050&& reg <=0x905c) [...]ERROR: braces {} are necessary for all arms of this statement #135: FILE:
hw/net/sungem.c:92:
+ else if (reg >=0x3000&& reg <=0x3010) [...]
+ else if (reg >=0x4000&& reg <=0x4028) [...]
+ else if (reg >=0x4100&& reg <=0x4120) [...]
+ else if (reg >=0x6000&& reg <=0x6134) [...]
+ else if (reg >=0x6200&& reg <=0x621c) [...]
+ else if (reg >=0x9000&& reg <=0x9018) [...]
+ else if (reg >=0x9050&& reg <=0x905c) [...]ERROR: braces {} are necessary for all arms of this statement #137: FILE:
hw/net/sungem.c:94:
+ else if (reg >=0x4000&& reg <=0x4028) [...]
+ else if (reg >=0x4100&& reg <=0x4120) [...]
+ else if (reg >=0x6000&& reg <=0x6134) [...]
+ else if (reg >=0x6200&& reg <=0x621c) [...]
+ else if (reg >=0x9000&& reg <=0x9018) [...]
+ else if (reg >=0x9050&& reg <=0x905c) [...]ERROR: braces {} are necessary for all arms of this statement #139: FILE:
hw/net/sungem.c:96:
+ else if (reg >=0x4100&& reg <=0x4120) [...]
+ else if (reg >=0x6000&& reg <=0x6134) [...]
+ else if (reg >=0x6200&& reg <=0x621c) [...]
+ else if (reg >=0x9000&& reg <=0x9018) [...]
+ else if (reg >=0x9050&& reg <=0x905c) [...]ERROR: braces {} are necessary for all arms of this statement #141: FILE:
hw/net/sungem.c:98:
+ else if (reg >=0x6000&& reg <=0x6134) [...]
+ else if (reg >=0x6200&& reg <=0x621c) [...]
+ else if (reg >=0x9000&& reg <=0x9018) [...]
+ else if (reg >=0x9050&& reg <=0x905c) [...]ERROR: braces {} are necessary for all arms of this statement #143: FILE:
hw/net/sungem.c:100:
+ else if (reg >=0x6200&& reg <=0x621c) [...]
+ else if (reg >=0x9000&& reg <=0x9018) [...]
+ else if (reg >=0x9050&& reg <=0x905c) [...]ERROR: braces {} are necessary for all arms of this statement #145: FILE:
hw/net/sungem.c:102:
+ else if (reg >=0x9000&& reg <=0x9018) [...]
+ else if (reg >=0x9050&& reg <=0x905c) [...]ERROR: braces {} are necessary for all arms of this statement #147: FILE:
hw/net/sungem.c:104:
+ else if (reg >=0x9050&& reg <=0x905c) [...]ERROR: space required before the open parenthesis '(' #157: FILE:
hw/net/sungem.c:114:
+ } while(0)ERROR: space required before the open parenthesis '(' #722: FILE:
hw/net/sungem.c:679:
+ switch(reg_addr) {ERROR: space required before the open parenthesis '(' #804: FILE:
hw/net/sungem.c:761:
+ switch(addr) {ERROR: space required before the open parenthesis '(' #859: FILE:
hw/net/sungem.c:816:
+ switch(addr) {ERROR: space required before the open parenthesis '(' #870: FILE:
hw/net/sungem.c:827:
+ switch(val & (GREG_SWRST_TXRST|GREG_SWRST_RXRST)) {ERROR: space required after that ',' (ctx:VxV) #915: FILE:
hw/net/sungem.c:872:
+ qemu_log_mask(LOG_GUEST_ERROR,"%s: read from unknown register 0x%04x\n",
^ERROR: space required before the open parenthesis '(' #923: FILE:
hw/net/sungem.c:880:
+ switch(addr) {ERROR: code indent should never use tabs
#1101: FILE:hw/net/sungem.h:16:
+#define GREG_SEBSTATE^I0x0000UL^I/* SEB State Register^I^I*/$ERROR: code indent should never use tabs
#1102: FILE:hw/net/sungem.h:17:
+#define GREG_CFG^I0x0004UL^I/* Configuration Register^I*/$ERROR: code indent should never use tabs #1103: FILE:
hw/net/sungem.h:18:
+#define GREG_STAT^I0x000CUL^I/* Status Register^I^I*/$ERROR: code indent should never use tabs
#1104: FILE:hw/net/sungem.h:19:
+#define GREG_IMASK^I0x0010UL^I/* Interrupt Mask Register^I*/$ERROR: code indent should never use tabs
#1105: FILE:hw/net/sungem.h:20:
+#define GREG_IACK^I0x0014UL^I/* Interrupt ACK Register^I*/$ERROR: code indent should never use tabs
#1106: FILE:hw/net/sungem.h:21:
+#define GREG_STAT2^I0x001CUL^I/* Alias of GREG_STAT^I^I*/$ERROR: code indent should never use tabs
#1107: FILE:hw/net/sungem.h:22:
+#define GREG_PCIESTAT^I0x1000UL^I/* PCI Error Status Register^I*/$ERROR: code indent should never use tabs
#1108: FILE:hw/net/sungem.h:23:
+#define GREG_PCIEMASK^I0x1004UL^I/* PCI Error Mask Register^I*/$ERROR: code indent should never use tabs
#1109: FILE:hw/net/sungem.h:24:
+#define GREG_BIFCFG^I0x1008UL^I/* BIF Configuration Register^I*/$ERROR: code indent should never use tabs
#1110: FILE:hw/net/sungem.h:25:
+#define GREG_BIFDIAG^I0x100CUL^I/* BIF Diagnostics Register^I*/$ERROR: code indent should never use tabs
#1111: FILE:hw/net/sungem.h:26:
+#define GREG_SWRST^I0x1010UL^I/* Software Reset Register^I*/$WARNING: line over 80 characters
#1114: FILE:hw/net/sungem.h:29:
+#defineGREG_SEBSTATE_ARB0x00000003/* State of
Arbiter */ERROR: code indent should never use tabs
#1114: FILE:hw/net/sungem.h:29:
+#define GREG_SEBSTATE_ARB^I0x00000003^I/* State of Arbiter^I^I*/$WARNING: line over 80 characters
#1115: FILE:hw/net/sungem.h:30:
+#defineGREG_SEBSTATE_RXWON0x00000004/* RX won
internal arbitration */ERROR: code indent should never use tabs
#1115: FILE:hw/net/sungem.h:30:
+#define GREG_SEBSTATE_RXWON^I0x00000004^I/* RX won internal arbitration^I*/$WARNING: line over 80 characters
#1118: FILE:hw/net/sungem.h:33:
+#defineGREG_CFG_IBURST0x00000001/* Infinite
Burst */ERROR: code indent should never use tabs
#1118: FILE:hw/net/sungem.h:33:
+#define GREG_CFG_IBURST^I^I0x00000001^I/* Infinite Burst^I^I*/$WARNING: line over 80 characters
#1119: FILE:hw/net/sungem.h:34:
+#defineGREG_CFG_TXDMALIM0x0000003e/* TX DMA grant
limit */ERROR: code indent should never use tabs
#1119: FILE:hw/net/sungem.h:34:
+#define GREG_CFG_TXDMALIM^I0x0000003e^I/* TX DMA grant limit^I^I*/$WARNING: line over 80 characters
#1120: FILE:hw/net/sungem.h:35:
+#defineGREG_CFG_RXDMALIM0x000007c0/* RX DMA grant
limit */ERROR: code indent should never use tabs
#1120: FILE:hw/net/sungem.h:35:
+#define GREG_CFG_RXDMALIM^I0x000007c0^I/* RX DMA grant limit^I^I*/$WARNING: line over 80 characters
#1121: FILE:hw/net/sungem.h:36:
+#defineGREG_CFG_RONPAULBIT0x00000800/* Use mem read
multiple for PCI readERROR: code indent should never use tabs
#1121: FILE:hw/net/sungem.h:36:
+#define GREG_CFG_RONPAULBIT^I0x00000800^I/* Use mem read multiple for PCI read$WARNING: line over 80 characters
#1122: FILE:hw/net/sungem.h:37:(quoted diff) +1
-0+ * after infiniteburst (Apple) */
ERROR: code indent should never use tabs
#1122: FILE:hw/net/sungem.h:37:
+^I^I^I^I^I^I * after infinite burst (Apple) */$ERROR: code indent should never use tabs
#1123: FILE:hw/net/sungem.h:38:
+#define GREG_CFG_ENBUG2FIX^I0x00001000^I/* Fix Rx hang after overflow */$WARNING: line over 80 characters
#1134: FILE:hw/net/sungem.h:49:
+#defineGREG_STAT_TXINTME0x00000001/* TX INTME frame
transferred */ERROR: code indent should never use tabs
#1134: FILE:hw/net/sungem.h:49:
+#define GREG_STAT_TXINTME^I0x00000001^I/* TX INTME frame transferred^I*/$WARNING: line over 80 characters
#1135: FILE:hw/net/sungem.h:50:
+#defineGREG_STAT_TXALL0x00000002/* All TX
frames transferred */ERROR: code indent should never use tabs
#1135: FILE:hw/net/sungem.h:50:
+#define GREG_STAT_TXALL^I^I0x00000002^I/* All TX frames transferred^I*/$WARNING: line over 80 characters
#1136: FILE:hw/net/sungem.h:51:
+#defineGREG_STAT_TXDONE0x00000004/* One TX frame
transferred */ERROR: code indent should never use tabs #1136: FILE:
hw/net/sungem.h:51:
+#define GREG_STAT_TXDONE^I0x00000004^I/* One TX frame transferred^I*/$WARNING: line over 80 characters
#1137: FILE:hw/net/sungem.h:52:
+#defineGREG_STAT_RXDONE0x00000010/* One RX frame
arrived */ERROR: code indent should never use tabs
#1137: FILE:hw/net/sungem.h:52:
+#define GREG_STAT_RXDONE^I0x00000010^I/* One RX frame arrived^I^I*/$WARNING: line over 80 characters
#1138: FILE:hw/net/sungem.h:53:
+#defineGREG_STAT_RXNOBUF0x00000020/* No free RX
buffers available */ERROR: code indent should never use tabs
#1138: FILE:hw/net/sungem.h:53:
+#define GREG_STAT_RXNOBUF^I0x00000020^I/* No free RX buffers available^I*/$WARNING: line over 80 characters
#1139: FILE:hw/net/sungem.h:54:
+#defineGREG_STAT_RXTAGERR0x00000040/* RX tag
framing is corrupt */ERROR: code indent should never use tabs
#1139: FILE:hw/net/sungem.h:54:
+#define GREG_STAT_RXTAGERR^I0x00000040^I/* RX tag framing is corrupt^I*/$WARNING: line over 80 characters
#1140: FILE:hw/net/sungem.h:55:
+#defineGREG_STAT_PCS0x00002000/* PCS
signalled interrupt */ERROR: code indent should never use tabs
#1140: FILE:hw/net/sungem.h:55:
+#define GREG_STAT_PCS^I^I0x00002000^I/* PCS signalled interrupt^I*/$WARNING: line over 80 characters
#1141: FILE:hw/net/sungem.h:56:
+#defineGREG_STAT_TXMAC0x00004000/* TX MAC
signalled interrupt */ERROR: code indent should never use tabs
#1141: FILE:hw/net/sungem.h:56:
+#define GREG_STAT_TXMAC^I^I0x00004000^I/* TX MAC signalled interrupt^I*/$WARNING: line over 80 characters
#1142: FILE:hw/net/sungem.h:57:
+#defineGREG_STAT_RXMAC0x00008000/* RX MAC
signalled interrupt */ERROR: code indent should never use tabs
#1142: FILE:hw/net/sungem.h:57:
+#define GREG_STAT_RXMAC^I^I0x00008000^I/* RX MAC signalled interrupt^I*/$WARNING: line over 80 characters
#1143: FILE:hw/net/sungem.h:58:
+#defineGREG_STAT_MAC0x00010000/* MAC
Control signalled irq */ERROR: code indent should never use tabs
#1143: FILE:hw/net/sungem.h:58:
+#define GREG_STAT_MAC^I^I0x00010000^I/* MAC Control signalled irq^I*/$WARNING: line over 80 characters
#1144: FILE:hw/net/sungem.h:59:
+#defineGREG_STAT_MIF0x00020000/* MIF
signalled interrupt */ERROR: code indent should never use tabs
#1144: FILE:hw/net/sungem.h:59:
+#define GREG_STAT_MIF^I^I0x00020000^I/* MIF signalled interrupt^I*/$WARNING: line over 80 characters
#1145: FILE:hw/net/sungem.h:60:
+#defineGREG_STAT_PCIERR0x00040000/* PCI Error
interrupt */ERROR: code indent should never use tabs
#1145: FILE:hw/net/sungem.h:60:
+#define GREG_STAT_PCIERR^I0x00040000^I/* PCI Error interrupt^I^I*/$WARNING: line over 80 characters
#1146: FILE:hw/net/sungem.h:61:
+#defineGREG_STAT_TXNR0xfff80000/* ==TXDMA_TXDONEreg val */ERROR: code indent should never use tabs
#1146: FILE:hw/net/sungem.h:61:
+#define GREG_STAT_TXNR^I^I0xfff80000^I/* ==TXDMA_TXDONEreg val^I*/$ERROR: code indent should never use tabs
#1147: FILE:hw/net/sungem.h:62:
+#define GREG_STAT_TXNR_SHIFT^I19$ERROR: code indent should never use tabs #1153: FILE:
hw/net/sungem.h:68:
+#define GREG_STAT_LATCH^I (GREG_STAT_TXALL |GREG_STAT_TXINTME| \$WARNING: line over 80 characters
#1166: FILE:hw/net/sungem.h:81:
+#defineGREG_PCIESTAT_BADACK0x00000001/* No ACK64#
during ABS64 cycle */ERROR: code indent should never use tabs
#1166: FILE:hw/net/sungem.h:81:
+#define GREG_PCIESTAT_BADACK^I0x00000001^I/* No ACK64# during ABS64 cycle^I*/$WARNING: line over 80 characters
#1167: FILE:hw/net/sungem.h:82:
+#defineGREG_PCIESTAT_DTRTO0x00000002/* Delayed
transaction timeout */ERROR: code indent should never use tabs
#1167: FILE:hw/net/sungem.h:82:
+#define GREG_PCIESTAT_DTRTO^I0x00000002^I/* Delayed transaction timeout^I*/$WARNING: line over 80 characters
#1168: FILE:hw/net/sungem.h:83:
+#defineGREG_PCIESTAT_OTHER0x00000004/* Other PCI
error, check cfg space */ERROR: code indent should never use tabs
#1168: FILE:hw/net/sungem.h:83:
+#define GREG_PCIESTAT_OTHER^I0x00000004^I/* Other PCI error, check cfg space */$WARNING: line over 80 characters
#1176: FILE:hw/net/sungem.h:91:
+#defineGREG_BIFCFG_SLOWCLK0x00000001/* Set if PCI
runs < 25Mhz */ERROR: code indent should never use tabs
#1176: FILE:hw/net/sungem.h:91:
+#define GREG_BIFCFG_SLOWCLK^I0x00000001^I/* Set if PCI runs < 25Mhz^I*/$WARNING: line over 80 characters
#1177: FILE:hw/net/sungem.h:92:
+#defineGREG_BIFCFG_B64DIS0x00000002/* Disable 64bit
wide data cycle*/ERROR: code indent should never use tabs
#1177: FILE:hw/net/sungem.h:92:
+#define GREG_BIFCFG_B64DIS^I0x00000002^I/* Disable 64bit wide data cycle*/$WARNING: line over 80 characters
#1178: FILE:hw/net/sungem.h:93:
+#defineGREG_BIFCFG_M66EN0x00000004/* Set if on
66Mhz PCI segment */ERROR: code indent should never use tabs
#1178: FILE:hw/net/sungem.h:93:
+#define GREG_BIFCFG_M66EN^I0x00000004^I/* Set if on 66Mhz PCI segment^I*/$WARNING: line over 80 characters
#1181: FILE:hw/net/sungem.h:96:
+#defineGREG_BIFDIAG_BURSTSM0x007f0000/* PCI Burst
state machine */ERROR: code indent should never use tabs
#1181: FILE:hw/net/sungem.h:96:
+#define GREG_BIFDIAG_BURSTSM^I0x007f0000^I/* PCI Burst state machine^I*/$WARNING: line over 80 characters
#1182: FILE:hw/net/sungem.h:97:
+#defineGREG_BIFDIAG_BIFSM0xff000000/* BIF state
machine */ERROR: code indent should never use tabs
#1182: FILE:hw/net/sungem.h:97:
+#define GREG_BIFDIAG_BIFSM^I0xff000000^I/* BIF state machine^I^I*/$WARNING: line over 80 characters
#1191: FILE:hw/net/sungem.h:106:
+#defineGREG_SWRST_TXRST0x00000001/* TX Software
Reset */ERROR: code indent should never use tabs
#1191: FILE:hw/net/sungem.h:106:
+#define GREG_SWRST_TXRST^I0x00000001^I/* TX Software Reset^I^I*/$WARNING: line over 80 characters
#1192: FILE:hw/net/sungem.h:107:
+#defineGREG_SWRST_RXRST0x00000002/* RX Software
Reset */ERROR: code indent should never use tabs
#1192: FILE:hw/net/sungem.h:107:
+#define GREG_SWRST_RXRST^I0x00000002^I/* RX Software Reset^I^I*/$WARNING: line over 80 characters
#1193: FILE:hw/net/sungem.h:108:
+#defineGREG_SWRST_RSTOUT0x00000004/* Force RST# pin
active */ERROR: code indent should never use tabs
#1193: FILE:hw/net/sungem.h:108:
+#define GREG_SWRST_RSTOUT^I0x00000004^I/* Force RST# pin active^I*/$WARNING: line over 80 characters
#1194: FILE:hw/net/sungem.h:109:
+#defineGREG_SWRST_CACHESIZE0x00ff0000/* RIO only:
cache line size */ERROR: code indent should never use tabs
#1194: FILE:hw/net/sungem.h:109:
+#define GREG_SWRST_CACHESIZE^I0x00ff0000^I/* RIO only: cache line size^I*/$ERROR: code indent should never use tabs
#1195: FILE:hw/net/sungem.h:110:
+#define GREG_SWRST_CACHE_SHIFT^I16$ERROR: code indent should never use tabs
#1198: FILE:hw/net/sungem.h:113:
+#define TXDMA_KICK^I0x2000UL^I/* TX Kick Register^I^I*/$ERROR: code indent should never use tabs
#1199: FILE:hw/net/sungem.h:114:
+#define TXDMA_CFG^I0x2004UL^I/* TX Configuration Register^I*/$ERROR: code indent should never use tabs
#1200: FILE:hw/net/sungem.h:115:
+#define TXDMA_DBLOW^I0x2008UL^I/* TX Desc. Base Low^I^I*/$ERROR: code indent should never use tabs
#1201: FILE:hw/net/sungem.h:116:
+#define TXDMA_DBHI^I0x200CUL^I/* TX Desc. Base High^I^I*/$ERROR: code indent should never use tabs
#1202: FILE:hw/net/sungem.h:117:
+#define TXDMA_FWPTR^I0x2014UL^I/* TX FIFO Write Pointer^I*/$ERROR: code indent should never use tabs
#1203: FILE:hw/net/sungem.h:118:
+#define TXDMA_FSWPTR^I0x2018UL^I/* TX FIFO Shadow Write Pointer^I*/$ERROR: code indent should never use tabs
#1204: FILE:hw/net/sungem.h:119:
+#define TXDMA_FRPTR^I0x201CUL^I/* TX FIFO Read Pointer^I^I*/$ERROR: code indent should never use tabs
#1205: FILE:hw/net/sungem.h:120:
+#define TXDMA_FSRPTR^I0x2020UL^I/* TX FIFO Shadow Read Pointer^I*/$ERROR: code indent should never use tabs
#1206: FILE:hw/net/sungem.h:121:
+#define TXDMA_PCNT^I0x2024UL^I/* TX FIFO Packet Counter^I*/$ERROR: code indent should never use tabs
#1207: FILE:hw/net/sungem.h:122:
+#define TXDMA_SMACHINE^I0x2028UL^I/* TX State Machine Register^I*/$ERROR: code indent should never use tabs
#1208: FILE:hw/net/sungem.h:123:
+#define TXDMA_DPLOW^I0x2030UL^I/* TX Data Pointer Low^I^I*/$ERROR: code indent should never use tabs
#1209: FILE:hw/net/sungem.h:124:
+#define TXDMA_DPHI^I0x2034UL^I/* TX Data Pointer High^I^I*/$ERROR: code indent should never use tabs
#1210: FILE:hw/net/sungem.h:125:
+#define TXDMA_TXDONE^I0x2100UL^I/* TX Completion Register^I*/$ERROR: code indent should never use tabs
#1211: FILE:hw/net/sungem.h:126:
+#define TXDMA_FADDR^I0x2104UL^I/* TX FIFO Address^I^I*/$ERROR: code indent should never use tabs #1212: FILE:
hw/net/sungem.h:127:
+#define TXDMA_FTAG^I0x2108UL^I/* TX FIFO Tag^I^I^I*/$ERROR: code indent should never use tabs
#1213: FILE:hw/net/sungem.h:128:
+#define TXDMA_DLOW^I0x210CUL^I/* TX FIFO Data Low^I^I*/$ERROR: code indent should never use tabs
#1214: FILE:hw/net/sungem.h:129:
+#define TXDMA_DHIT1^I0x2110UL^I/* TX FIFO Data HighT1^I^I*/$ERROR: code indent should never use tabs
#1215: FILE:hw/net/sungem.h:130:
+#define TXDMA_DHIT0^I0x2114UL^I/* TX FIFO Data HighT0^I^I*/$ERROR: code indent should never use tabs #1216: FILE:
hw/net/sungem.h:131:
+#define TXDMA_FSZ^I0x2118UL^I/* TX FIFO Size^I^I^I*/$WARNING: line over 80 characters
#1238: FILE:hw/net/sungem.h:153:
+#defineTXDMA_CFG_ENABLE0x00000001/* Enable TX DMA
channel */ERROR: code indent should never use tabs
#1238: FILE:hw/net/sungem.h:153:
+#define TXDMA_CFG_ENABLE^I0x00000001^I/* Enable TX DMA channel^I*/$WARNING: line over 80 characters
#1239: FILE:hw/net/sungem.h:154:
+#defineTXDMA_CFG_RINGSZ0x0000001e/* TX descriptor
ring size */ERROR: code indent should never use tabs
#1239: FILE:hw/net/sungem.h:154:
+#define TXDMA_CFG_RINGSZ^I0x0000001e^I/* TX descriptor ring size^I*/$WARNING: line over 80 characters
#1240: FILE:hw/net/sungem.h:155:
+#defineTXDMA_CFG_RINGSZ_320x00000000/* 32 TX
descriptors */ERROR: code indent should never use tabs
#1240: FILE:hw/net/sungem.h:155:
+#define TXDMA_CFG_RINGSZ_32^I0x00000000^I/* 32 TX descriptors^I^I*/$WARNING: line over 80 characters
#1241: FILE:hw/net/sungem.h:156:
+#defineTXDMA_CFG_RINGSZ_640x00000002/* 64 TX
descriptors */ERROR: code indent should never use tabs
#1241: FILE:hw/net/sungem.h:156:
+#define TXDMA_CFG_RINGSZ_64^I0x00000002^I/* 64 TX descriptors^I^I*/$WARNING: line over 80 characters
#1242: FILE:hw/net/sungem.h:157:
+#defineTXDMA_CFG_RINGSZ_1280x00000004/* 128 TX
descriptors */ERROR: code indent should never use tabs #1242: FILE:
hw/net/sungem.h:157:
+#define TXDMA_CFG_RINGSZ_128^I0x00000004^I/* 128 TX descriptors^I^I*/$WARNING: line over 80 characters
#1243: FILE:hw/net/sungem.h:158:
+#defineTXDMA_CFG_RINGSZ_2560x00000006/* 256 TX
descriptors */ERROR: code indent should never use tabs #1243: FILE:
hw/net/sungem.h:158:
+#define TXDMA_CFG_RINGSZ_256^I0x00000006^I/* 256 TX descriptors^I^I*/$WARNING: line over 80 characters
#1244: FILE:hw/net/sungem.h:159:
+#defineTXDMA_CFG_RINGSZ_5120x00000008/* 512 TX
descriptors */ERROR: code indent should never use tabs #1244: FILE:
hw/net/sungem.h:159:
+#define TXDMA_CFG_RINGSZ_512^I0x00000008^I/* 512 TX descriptors^I^I*/$WARNING: line over 80 characters
#1245: FILE:hw/net/sungem.h:160:
+#defineTXDMA_CFG_RINGSZ_1K0x0000000a/* 1024 TX
descriptors */ERROR: code indent should never use tabs #1245: FILE:
hw/net/sungem.h:160:
+#define TXDMA_CFG_RINGSZ_1K^I0x0000000a^I/* 1024 TX descriptors^I^I*/$WARNING: line over 80 characters
#1246: FILE:hw/net/sungem.h:161:
+#defineTXDMA_CFG_RINGSZ_2K0x0000000c/* 2048 TX
descriptors */ERROR: code indent should never use tabs #1246: FILE:
hw/net/sungem.h:161:
+#define TXDMA_CFG_RINGSZ_2K^I0x0000000c^I/* 2048 TX descriptors^I^I*/$WARNING: line over 80 characters
#1247: FILE:hw/net/sungem.h:162:
+#defineTXDMA_CFG_RINGSZ_4K0x0000000e/* 4096 TX
descriptors */ERROR: code indent should never use tabs #1247: FILE:
hw/net/sungem.h:162:
+#define TXDMA_CFG_RINGSZ_4K^I0x0000000e^I/* 4096 TX descriptors^I^I*/$WARNING: line over 80 characters
#1248: FILE:hw/net/sungem.h:163:
+#defineTXDMA_CFG_RINGSZ_8K0x00000010/* 8192 TX
descriptors */ERROR: code indent should never use tabs #1248: FILE:
hw/net/sungem.h:163:
+#define TXDMA_CFG_RINGSZ_8K^I0x00000010^I/* 8192 TX descriptors^I^I*/$WARNING: line over 80 characters
#1249: FILE:hw/net/sungem.h:164:
+#defineTXDMA_CFG_PIOSEL0x00000020/* Enable TX FIFO
PIO from cpu */ERROR: code indent should never use tabs
#1249: FILE:hw/net/sungem.h:164:
+#define TXDMA_CFG_PIOSEL^I0x00000020^I/* Enable TX FIFO PIO from cpu^I*/$WARNING: line over 80 characters
#1250: FILE:hw/net/sungem.h:165:
+#defineTXDMA_CFG_FTHRESH0x001ffc00/* TX FIFO
Threshold, obsolete */ERROR: code indent should never use tabs
#1250: FILE:hw/net/sungem.h:165:
+#define TXDMA_CFG_FTHRESH^I0x001ffc00^I/* TX FIFO Threshold, obsolete^I*/$WARNING: line over 80 characters
#1251: FILE:hw/net/sungem.h:166:
+#defineTXDMA_CFG_PMODE0x00200000/* TXALL
irq means TX FIFO empty*/ERROR: code indent should never use tabs
#1251: FILE:hw/net/sungem.h:166:
+#define TXDMA_CFG_PMODE^I^I0x00200000^I/* TXALL irq means TX FIFO empty*/$WARNING: line over 80 characters
#1260: FILE:hw/net/sungem.h:175:
+/* The rest of the TXDMA_* registers are for diagnostics and debug, I will documentERROR: code indent should never use tabs
#1264: FILE:hw/net/sungem.h:179:
+/* WakeOnLan Registers^I*/$ERROR: code indent should never use tabs
#1265: FILE:hw/net/sungem.h:180:
+#define WOL_MATCH0^I0x3000UL$ERROR: code indent should never use tabs
#1266: FILE:hw/net/sungem.h:181:
+#define WOL_MATCH1^I0x3004UL$ERROR: code indent should never use tabs
#1267: FILE:hw/net/sungem.h:182:
+#define WOL_MATCH2^I0x3008UL$ERROR: code indent should never use tabs
#1268: FILE:hw/net/sungem.h:183:
+#define WOL_MCOUNT^I0x300CUL$ERROR: code indent should never use tabs
#1269: FILE:hw/net/sungem.h:184:
+#define WOL_WAKECSR^I0x3010UL$ERROR: code indent should never use tabs
#1273: FILE:hw/net/sungem.h:188:
+#define WOL_MCOUNT_N^I^I0x00000010$ERROR: code indent should never use tabs
#1274: FILE:hw/net/sungem.h:189:
+#define WOL_MCOUNT_M^I^I0x00000000 /* 0 << 8 */$ERROR: code indent should never use tabs
#1276: FILE:hw/net/sungem.h:191:
+#define WOL_WAKECSR_ENABLE^I0x00000001$ERROR: code indent should never use tabs
#1277: FILE:hw/net/sungem.h:192:
+#define WOL_WAKECSR_MII^I^I0x00000002$ERROR: code indent should never use tabs
#1278: FILE:hw/net/sungem.h:193:
+#define WOL_WAKECSR_SEEN^I0x00000004$ERROR: code indent should never use tabs
#1279: FILE:hw/net/sungem.h:194:
+#define WOL_WAKECSR_FILT_UCAST^I0x00000008$ERROR: code indent should never use tabs
#1280: FILE:hw/net/sungem.h:195:
+#define WOL_WAKECSR_FILT_MCAST^I0x00000010$ERROR: code indent should never use tabs
#1281: FILE:hw/net/sungem.h:196:
+#define WOL_WAKECSR_FILT_BCAST^I0x00000020$ERROR: code indent should never use tabs
#1282: FILE:hw/net/sungem.h:197:
+#define WOL_WAKECSR_FILT_SEEN^I0x00000040$ERROR: code indent should never use tabs
#1286: FILE:hw/net/sungem.h:201:
+#define RXDMA_CFG^I0x4000UL^I/* RX Configuration Register^I*/$ERROR: code indent should never use tabs
#1287: FILE:hw/net/sungem.h:202:
+#define RXDMA_DBLOW^I0x4004UL^I/* RX Descriptor Base Low^I*/$ERROR: code indent should never use tabs
#1288: FILE:hw/net/sungem.h:203:
+#define RXDMA_DBHI^I0x4008UL^I/* RX Descriptor Base High^I*/$ERROR: code indent should never use tabs
#1289: FILE:hw/net/sungem.h:204:
+#define RXDMA_FWPTR^I0x400CUL^I/* RX FIFO Write Pointer^I*/$ERROR: code indent should never use tabs
#1290: FILE:hw/net/sungem.h:205:
+#define RXDMA_FSWPTR^I0x4010UL^I/* RX FIFO Shadow Write Pointer^I*/$ERROR: code indent should never use tabs
#1291: FILE:hw/net/sungem.h:206:
+#define RXDMA_FRPTR^I0x4014UL^I/* RX FIFO Read Pointer^I^I*/$ERROR: code indent should never use tabs
#1292: FILE:hw/net/sungem.h:207:
+#define RXDMA_PCNT^I0x4018UL^I/* RX FIFO Packet Counter^I*/$ERROR: code indent should never use tabs
#1293: FILE:hw/net/sungem.h:208:
+#define RXDMA_SMACHINE^I0x401CUL^I/* RX State Machine Register^I*/$ERROR: code indent should never use tabs
#1294: FILE:hw/net/sungem.h:209:
+#define RXDMA_PTHRESH^I0x4020UL^I/* Pause Thresholds^I^I*/$ERROR: code indent should never use tabs
#1295: FILE:hw/net/sungem.h:210:
+#define RXDMA_DPLOW^I0x4024UL^I/* RX Data Pointer Low^I^I*/$ERROR: code indent should never use tabs
#1296: FILE:hw/net/sungem.h:211:
+#define RXDMA_DPHI^I0x4028UL^I/* RX Data Pointer High^I^I*/$ERROR: code indent should never use tabs
#1297: FILE:hw/net/sungem.h:212:
+#define RXDMA_KICK^I0x4100UL^I/* RX Kick Register^I^I*/$ERROR: code indent should never use tabs
#1298: FILE:hw/net/sungem.h:213:
+#define RXDMA_DONE^I0x4104UL^I/* RX Completion Register^I*/$ERROR: code indent should never use tabs
#1299: FILE:hw/net/sungem.h:214:
+#define RXDMA_BLANK^I0x4108UL^I/* RX Blanking Register^I^I*/$ERROR: code indent should never use tabs
#1300: FILE:hw/net/sungem.h:215:
+#define RXDMA_FADDR^I0x410CUL^I/* RX FIFO Address^I^I*/$ERROR: code indent should never use tabs #1301: FILE:
hw/net/sungem.h:216:
+#define RXDMA_FTAG^I0x4110UL^I/* RX FIFO Tag^I^I^I*/$ERROR: code indent should never use tabs
#1302: FILE:hw/net/sungem.h:217:
+#define RXDMA_DLOW^I0x4114UL^I/* RX FIFO Data Low^I^I*/$ERROR: code indent should never use tabs
#1303: FILE:hw/net/sungem.h:218:
+#define RXDMA_DHIT1^I0x4118UL^I/* RX FIFO Data HighT0^I^I*/$ERROR: code indent should never use tabs
#1304: FILE:hw/net/sungem.h:219:
+#define RXDMA_DHIT0^I0x411CUL^I/* RX FIFO Data HighT1^I^I*/$ERROR: code indent should never use tabs #1305: FILE:
hw/net/sungem.h:220:
+#define RXDMA_FSZ^I0x4120UL^I/* RX FIFO Size^I^I^I*/$WARNING: line over 80 characters
#1308: FILE:hw/net/sungem.h:223:
+#defineRXDMA_CFG_ENABLE0x00000001/* Enable RX DMA
channel */ERROR: code indent should never use tabs
#1308: FILE:hw/net/sungem.h:223:
+#define RXDMA_CFG_ENABLE^I0x00000001^I/* Enable RX DMA channel^I*/$WARNING: line over 80 characters
#1309: FILE:hw/net/sungem.h:224:
+#defineRXDMA_CFG_RINGSZ0x0000001e/* RX descriptor
ring size */ERROR: code indent should never use tabs
#1309: FILE:hw/net/sungem.h:224:
+#define RXDMA_CFG_RINGSZ^I0x0000001e^I/* RX descriptor ring size^I*/$WARNING: line over 80 characters
#1310: FILE:hw/net/sungem.h:225:
+#defineRXDMA_CFG_RINGSZ_320x00000000/* -
32 entries */ERROR: code indent should never use tabs
#1310: FILE:hw/net/sungem.h:225:
+#define RXDMA_CFG_RINGSZ_32^I0x00000000^I/* - 32 entries^I^I*/$WARNING: line over 80 characters
#1311: FILE:hw/net/sungem.h:226:
+#defineRXDMA_CFG_RINGSZ_640x00000002/* -
64 entries */ERROR: code indent should never use tabs
#1311: FILE:hw/net/sungem.h:226:
+#define RXDMA_CFG_RINGSZ_64^I0x00000002^I/* - 64 entries^I^I*/$WARNING: line over 80 characters
#1312: FILE:hw/net/sungem.h:227:
+#defineRXDMA_CFG_RINGSZ_1280x00000004/* -
128 entries */ERROR: code indent should never use tabs
#1312: FILE:hw/net/sungem.h:227:
+#define RXDMA_CFG_RINGSZ_128^I0x00000004^I/* - 128 entries^I^I*/$WARNING: line over 80 characters
#1313: FILE:hw/net/sungem.h:228:
+#defineRXDMA_CFG_RINGSZ_2560x00000006/* -
256 entries */ERROR: code indent should never use tabs
#1313: FILE:hw/net/sungem.h:228:
+#define RXDMA_CFG_RINGSZ_256^I0x00000006^I/* - 256 entries^I^I*/$WARNING: line over 80 characters
#1314: FILE:hw/net/sungem.h:229:
+#defineRXDMA_CFG_RINGSZ_5120x00000008/* -
512 entries */ERROR: code indent should never use tabs
#1314: FILE:hw/net/sungem.h:229:
+#define RXDMA_CFG_RINGSZ_512^I0x00000008^I/* - 512 entries^I^I*/$WARNING: line over 80 characters
#1315: FILE:hw/net/sungem.h:230:
+#defineRXDMA_CFG_RINGSZ_1K0x0000000a/* - 1024
entries */ERROR: code indent should never use tabs
#1315: FILE:hw/net/sungem.h:230:
+#define RXDMA_CFG_RINGSZ_1K^I0x0000000a^I/* - 1024 entries^I^I*/$WARNING: line over 80 characters
#1316: FILE:hw/net/sungem.h:231:
+#defineRXDMA_CFG_RINGSZ_2K0x0000000c/* - 2048
entries */ERROR: code indent should never use tabs
#1316: FILE:hw/net/sungem.h:231:
+#define RXDMA_CFG_RINGSZ_2K^I0x0000000c^I/* - 2048 entries^I^I*/$WARNING: line over 80 characters
#1317: FILE:hw/net/sungem.h:232:
+#defineRXDMA_CFG_RINGSZ_4K0x0000000e/* - 4096
entries */ERROR: code indent should never use tabs
#1317: FILE:hw/net/sungem.h:232:
+#define RXDMA_CFG_RINGSZ_4K^I0x0000000e^I/* - 4096 entries^I^I*/$WARNING: line over 80 characters
#1318: FILE:hw/net/sungem.h:233:
+#defineRXDMA_CFG_RINGSZ_8K0x00000010/* - 8192
entries */ERROR: code indent should never use tabs
#1318: FILE:hw/net/sungem.h:233:
+#define RXDMA_CFG_RINGSZ_8K^I0x00000010^I/* - 8192 entries^I^I*/$WARNING: line over 80 characters
#1319: FILE:hw/net/sungem.h:234:
+#defineRXDMA_CFG_RINGSZ_BDISAB0x00000020/* Disable
RX desc batching */ERROR: code indent should never use tabs
#1319: FILE:hw/net/sungem.h:234:
+#define RXDMA_CFG_RINGSZ_BDISAB^I0x00000020^I/* Disable RX desc batching^I*/$WARNING: line over 80 characters
#1320: FILE:hw/net/sungem.h:235:
+#defineRXDMA_CFG_FBOFF0x00001c00/* Offset
of first data byte */ERROR: code indent should never use tabs
#1320: FILE:hw/net/sungem.h:235:
+#define RXDMA_CFG_FBOFF^I^I0x00001c00^I/* Offset of first data byte^I*/$WARNING: line over 80 characters
#1321: FILE:hw/net/sungem.h:236:
+#defineRXDMA_CFG_CSUMOFF0x000fe000/* Skip bytes
before csum calc */ERROR: code indent should never use tabs
#1321: FILE:hw/net/sungem.h:236:
+#define RXDMA_CFG_CSUMOFF^I0x000fe000^I/* Skip bytes before csum calc^I*/$WARNING: line over 80 characters
#1322: FILE:hw/net/sungem.h:237:
+#defineRXDMA_CFG_FTHRESH0x07000000/* RX FIFO dma
start threshold */ERROR: code indent should never use tabs
#1322: FILE:hw/net/sungem.h:237:
+#define RXDMA_CFG_FTHRESH^I0x07000000^I/* RX FIFO dma start threshold^I*/$WARNING: line over 80 characters
#1323: FILE:hw/net/sungem.h:238:
+#defineRXDMA_CFG_FTHRESH_640x00000000/* -
64 bytes */ERROR: code indent should never use tabs
#1323: FILE:hw/net/sungem.h:238:
+#define RXDMA_CFG_FTHRESH_64^I0x00000000^I/* - 64 bytes^I^I^I*/$WARNING: line over 80 characters
#1324: FILE:hw/net/sungem.h:239:
+#defineRXDMA_CFG_FTHRESH_1280x01000000/* -
128 bytes */ERROR: code indent should never use tabs
#1324: FILE:hw/net/sungem.h:239:
+#define RXDMA_CFG_FTHRESH_128^I0x01000000^I/* - 128 bytes^I^I^I*/$WARNING: line over 80 characters
#1325: FILE:hw/net/sungem.h:240:
+#defineRXDMA_CFG_FTHRESH_2560x02000000/* -
256 bytes */ERROR: code indent should never use tabs
#1325: FILE:hw/net/sungem.h:240:
+#define RXDMA_CFG_FTHRESH_256^I0x02000000^I/* - 256 bytes^I^I^I*/$WARNING: line over 80 characters
#1326: FILE:hw/net/sungem.h:241:
+#defineRXDMA_CFG_FTHRESH_5120x03000000/* -
512 bytes */ERROR: code indent should never use tabs
#1326: FILE:hw/net/sungem.h:241:
+#define RXDMA_CFG_FTHRESH_512^I0x03000000^I/* - 512 bytes^I^I^I*/$WARNING: line over 80 characters
#1327: FILE:hw/net/sungem.h:242:
+#defineRXDMA_CFG_FTHRESH_1K0x04000000/* - 1024
bytes */ERROR: code indent should never use tabs
#1327: FILE:hw/net/sungem.h:242:
+#define RXDMA_CFG_FTHRESH_1K^I0x04000000^I/* - 1024 bytes^I^I^I*/$WARNING: line over 80 characters
#1328: FILE:hw/net/sungem.h:243:
+#defineRXDMA_CFG_FTHRESH_2K0x05000000/* - 2048
bytes */ERROR: code indent should never use tabs
#1328: FILE:hw/net/sungem.h:243:
+#define RXDMA_CFG_FTHRESH_2K^I0x05000000^I/* - 2048 bytes^I^I^I*/$WARNING: line over 80 characters
#1342: FILE:hw/net/sungem.h:257:
+#defineRXDMA_PTHRESH_OFF0x000001ff/* XOFF emitted
w/FIFO > this */ERROR: code indent should never use tabs
#1342: FILE:hw/net/sungem.h:257:
+#define RXDMA_PTHRESH_OFF^I0x000001ff^I/* XOFF emitted w/FIFO > this^I*/$WARNING: line over 80 characters
#1343: FILE:hw/net/sungem.h:258:
+#defineRXDMA_PTHRESH_ON0x001ff000/* XON emitted
w/FIFO < this */ERROR: code indent should never use tabs
#1343: FILE:hw/net/sungem.h:258:
+#define RXDMA_PTHRESH_ON^I0x001ff000^I/* XON emitted w/FIFO < this^I*/$ERROR: code indent should never use tabs
#1369: FILE:hw/net/sungem.h:284:
+#define RXDMA_BLANK_IPKTS^I0x000001ff^I/*RX_DONEasserted after this$ERROR: code indent should never use tabs
#1370: FILE:hw/net/sungem.h:285:
+^I^I^I^I^I^I * many packets received since$ERROR: code indent should never use tabs
#1371: FILE:hw/net/sungem.h:286:
+^I^I^I^I^I^I * previous RX_DONE.$ERROR: code indent should never use tabs
#1372: FILE:hw/net/sungem.h:287:
+^I^I^I^I^I^I */$ERROR: code indent should never use tabs
#1373: FILE:hw/net/sungem.h:288:
+#define RXDMA_BLANK_ITIME^I0x000ff000^I/*RX_DONEasserted after this$ERROR: code indent should never use tabs
#1374: FILE:hw/net/sungem.h:289:
+^I^I^I^I^I^I * many clocks (measured in 2048$WARNING: line over 80 characters
#1375: FILE:hw/net/sungem.h:290:(quoted diff) +1
-0+ * PCI clocks) werecounted since
ERROR: code indent should never use tabs
#1375: FILE:hw/net/sungem.h:290:
+^I^I^I^I^I^I * PCI clocks) were counted since$ERROR: code indent should never use tabs
#1376: FILE:hw/net/sungem.h:291:
+^I^I^I^I^I^I * the previous RX_DONE.$ERROR: code indent should never use tabs
#1377: FILE:hw/net/sungem.h:292:
+^I^I^I^I^I^I */$WARNING: line over 80 characters
#1386: FILE:hw/net/sungem.h:301:
+/* The rest of the RXDMA_* registers are for diagnostics and debug, I will documentERROR: code indent should never use tabs
#1391: FILE:hw/net/sungem.h:306:
+#define MAC_TXRST^I0x6000UL^I/* TX MAC Software Reset Command*/$ERROR: code indent should never use tabs
#1392: FILE:hw/net/sungem.h:307:
+#define MAC_RXRST^I0x6004UL^I/* RX MAC Software Reset Command*/$ERROR: code indent should never use tabs
#1393: FILE:hw/net/sungem.h:308:
+#define MAC_SNDPAUSE^I0x6008UL^I/* Send Pause Command Register^I*/$ERROR: code indent should never use tabs
#1394: FILE:hw/net/sungem.h:309:
+#define MAC_TXSTAT^I0x6010UL^I/* TX MAC Status Register^I*/$ERROR: code indent should never use tabs
#1395: FILE:hw/net/sungem.h:310:
+#define MAC_RXSTAT^I0x6014UL^I/* RX MAC Status Register^I*/$ERROR: code indent should never use tabs
#1396: FILE:hw/net/sungem.h:311:
+#define MAC_CSTAT^I0x6018UL^I/* MAC Control Status Register^I*/$ERROR: code indent should never use tabs
#1397: FILE:hw/net/sungem.h:312:
+#define MAC_TXMASK^I0x6020UL^I/* TX MAC Mask Register^I^I*/$ERROR: code indent should never use tabs
#1398: FILE:hw/net/sungem.h:313:
+#define MAC_RXMASK^I0x6024UL^I/* RX MAC Mask Register^I^I*/$ERROR: code indent should never use tabs
#1399: FILE:hw/net/sungem.h:314:
+#define MAC_MCMASK^I0x6028UL^I/* MAC Control Mask Register^I*/$ERROR: code indent should never use tabs
#1400: FILE:hw/net/sungem.h:315:
+#define MAC_TXCFG^I0x6030UL^I/* TX MAC Configuration Register*/$ERROR: code indent should never use tabs
#1401: FILE:hw/net/sungem.h:316:
+#define MAC_RXCFG^I0x6034UL^I/* RX MAC Configuration Register*/$ERROR: code indent should never use tabs
#1402: FILE:hw/net/sungem.h:317:
+#define MAC_MCCFG^I0x6038UL^I/* MAC Control Config Register^I*/$ERROR: code indent should never use tabs
#1403: FILE:hw/net/sungem.h:318:
+#define MAC_XIFCFG^I0x603CUL^I/* XIF Configuration Register^I*/$ERROR: code indent should never use tabs
#1404: FILE:hw/net/sungem.h:319:
+#define MAC_IPG0^I0x6040UL^I/* InterPacketGap0 Register^I*/$ERROR: code indent should never use tabs
#1405: FILE:hw/net/sungem.h:320:
+#define MAC_IPG1^I0x6044UL^I/* InterPacketGap1 Register^I*/$ERROR: code indent should never use tabs
#1406: FILE:hw/net/sungem.h:321:
+#define MAC_IPG2^I0x6048UL^I/* InterPacketGap2 Register^I*/$ERROR: code indent should never use tabs
#1407: FILE:hw/net/sungem.h:322:
+#define MAC_STIME^I0x604CUL^I/* SlotTime Register^I^I*/$ERROR: code indent should never use tabs
#1408: FILE:hw/net/sungem.h:323:
+#define MAC_MINFSZ^I0x6050UL^I/* MinFrameSize Register^I*/$ERROR: code indent should never use tabs
#1409: FILE:hw/net/sungem.h:324:
+#define MAC_MAXFSZ^I0x6054UL^I/* MaxFrameSize Register^I*/$ERROR: code indent should never use tabs
#1410: FILE:hw/net/sungem.h:325:
+#define MAC_PASIZE^I0x6058UL^I/* PA Size Register^I^I*/$ERROR: code indent should never use tabs
#1411: FILE:hw/net/sungem.h:326:
+#define MAC_JAMSIZE^I0x605CUL^I/* JamSize Register^I^I*/$ERROR: code indent should never use tabs
#1412: FILE:hw/net/sungem.h:327:
+#define MAC_ATTLIM^I0x6060UL^I/* Attempt Limit Register^I*/$ERROR: code indent should never use tabs
#1413: FILE:hw/net/sungem.h:328:
+#define MAC_MCTYPE^I0x6064UL^I/* MAC Control Type Register^I*/$ERROR: code indent should never use tabs
#1414: FILE:hw/net/sungem.h:329:
+#define MAC_ADDR0^I0x6080UL^I/* MAC Address 0 Register^I*/$ERROR: code indent should never use tabs
#1415: FILE:hw/net/sungem.h:330:
+#define MAC_ADDR1^I0x6084UL^I/* MAC Address 1 Register^I*/$ERROR: code indent should never use tabs
#1416: FILE:hw/net/sungem.h:331:
+#define MAC_ADDR2^I0x6088UL^I/* MAC Address 2 Register^I*/$ERROR: code indent should never use tabs
#1417: FILE:hw/net/sungem.h:332:
+#define MAC_ADDR3^I0x608CUL^I/* MAC Address 3 Register^I*/$ERROR: code indent should never use tabs
#1418: FILE:hw/net/sungem.h:333:
+#define MAC_ADDR4^I0x6090UL^I/* MAC Address 4 Register^I*/$ERROR: code indent should never use tabs
#1419: FILE:hw/net/sungem.h:334:
+#define MAC_ADDR5^I0x6094UL^I/* MAC Address 5 Register^I*/$ERROR: code indent should never use tabs
#1420: FILE:hw/net/sungem.h:335:
+#define MAC_ADDR6^I0x6098UL^I/* MAC Address 6 Register^I*/$ERROR: code indent should never use tabs
#1421: FILE:hw/net/sungem.h:336:
+#define MAC_ADDR7^I0x609CUL^I/* MAC Address 7 Register^I*/$ERROR: code indent should never use tabs
#1422: FILE:hw/net/sungem.h:337:
+#define MAC_ADDR8^I0x60A0UL^I/* MAC Address 8 Register^I*/$ERROR: code indent should never use tabs
#1423: FILE:hw/net/sungem.h:338:
+#define MAC_AFILT0^I0x60A4UL^I/* Address Filter 0 Register^I*/$ERROR: code indent should never use tabs
#1424: FILE:hw/net/sungem.h:339:
+#define MAC_AFILT1^I0x60A8UL^I/* Address Filter 1 Register^I*/$ERROR: code indent should never use tabs
#1425: FILE:hw/net/sungem.h:340:
+#define MAC_AFILT2^I0x60ACUL^I/* Address Filter 2 Register^I*/$ERROR: code indent should never use tabs
#1426: FILE:hw/net/sungem.h:341:
+#define MAC_AF21MSK^I0x60B0UL^I/* Address Filter 2&1 Mask Reg^I*/$ERROR: code indent should never use tabs
#1427: FILE:hw/net/sungem.h:342:
+#define MAC_AF0MSK^I0x60B4UL^I/* Address Filter 0 Mask Reg^I*/$ERROR: code indent should never use tabs
#1428: FILE:hw/net/sungem.h:343:
+#define MAC_HASH0^I0x60C0UL^I/* Hash Table 0 Register^I*/$ERROR: code indent should never use tabs
#1429: FILE:hw/net/sungem.h:344:
+#define MAC_HASH1^I0x60C4UL^I/* Hash Table 1 Register^I*/$ERROR: code indent should never use tabs
#1430: FILE:hw/net/sungem.h:345:
+#define MAC_HASH2^I0x60C8UL^I/* Hash Table 2 Register^I*/$ERROR: code indent should never use tabs
#1431: FILE:hw/net/sungem.h:346:
+#define MAC_HASH3^I0x60CCUL^I/* Hash Table 3 Register^I*/$ERROR: code indent should never use tabs
#1432: FILE:hw/net/sungem.h:347:
+#define MAC_HASH4^I0x60D0UL^I/* Hash Table 4 Register^I*/$ERROR: code indent should never use tabs
#1433: FILE:hw/net/sungem.h:348:
+#define MAC_HASH5^I0x60D4UL^I/* Hash Table 5 Register^I*/$ERROR: code indent should never use tabs
#1434: FILE:hw/net/sungem.h:349:
+#define MAC_HASH6^I0x60D8UL^I/* Hash Table 6 Register^I*/$ERROR: code indent should never use tabs
#1435: FILE:hw/net/sungem.h:350:
+#define MAC_HASH7^I0x60DCUL^I/* Hash Table 7 Register^I*/$ERROR: code indent should never use tabs
#1436: FILE:hw/net/sungem.h:351:
+#define MAC_HASH8^I0x60E0UL^I/* Hash Table 8 Register^I*/$ERROR: code indent should never use tabs
#1437: FILE:hw/net/sungem.h:352:
+#define MAC_HASH9^I0x60E4UL^I/* Hash Table 9 Register^I*/$ERROR: code indent should never use tabs
#1438: FILE:hw/net/sungem.h:353:
+#define MAC_HASH10^I0x60E8UL^I/* Hash Table 10 Register^I*/$ERROR: code indent should never use tabs
#1439: FILE:hw/net/sungem.h:354:
+#define MAC_HASH11^I0x60ECUL^I/* Hash Table 11 Register^I*/$ERROR: code indent should never use tabs
#1440: FILE:hw/net/sungem.h:355:
+#define MAC_HASH12^I0x60F0UL^I/* Hash Table 12 Register^I*/$ERROR: code indent should never use tabs
#1441: FILE:hw/net/sungem.h:356:
+#define MAC_HASH13^I0x60F4UL^I/* Hash Table 13 Register^I*/$ERROR: code indent should never use tabs
#1442: FILE:hw/net/sungem.h:357:
+#define MAC_HASH14^I0x60F8UL^I/* Hash Table 14 Register^I*/$ERROR: code indent should never use tabs
#1443: FILE:hw/net/sungem.h:358:
+#define MAC_HASH15^I0x60FCUL^I/* Hash Table 15 Register^I*/$ERROR: code indent should never use tabs
#1444: FILE:hw/net/sungem.h:359:
+#define MAC_NCOLL^I0x6100UL^I/* Normal Collision Counter^I*/$ERROR: code indent should never use tabs
#1445: FILE:hw/net/sungem.h:360:
+#define MAC_FASUCC^I0x6104UL^I/* First Attmpt. Succ Coll Ctr.^I*/$ERROR: code indent should never use tabs
#1446: FILE:hw/net/sungem.h:361:
+#define MAC_ECOLL^I0x6108UL^I/* Excessive Collision Counter^I*/$ERROR: code indent should never use tabs
#1447: FILE:hw/net/sungem.h:362:
+#define MAC_LCOLL^I0x610CUL^I/* Late Collision Counter^I*/$ERROR: code indent should never use tabs #1448: FILE:
hw/net/sungem.h:363:
+#define MAC_DTIMER^I0x6110UL^I/* Defer Timer^I^I^I*/$ERROR: code indent should never use tabs
#1449: FILE:hw/net/sungem.h:364:
+#define MAC_PATMPS^I0x6114UL^I/* Peak Attempts Register^I*/$ERROR: code indent should never use tabs
#1450: FILE:hw/net/sungem.h:365:
+#define MAC_RFCTR^I0x6118UL^I/* Receive Frame Counter^I*/$ERROR: code indent should never use tabs
#1451: FILE:hw/net/sungem.h:366:
+#define MAC_LERR^I0x611CUL^I/* Length Error Counter^I^I*/$ERROR: code indent should never use tabs
#1452: FILE:hw/net/sungem.h:367:
+#define MAC_AERR^I0x6120UL^I/* Alignment Error Counter^I*/$ERROR: code indent should never use tabs
#1453: FILE:hw/net/sungem.h:368:
+#define MAC_FCSERR^I0x6124UL^I/* FCS Error Counter^I^I*/$ERROR: code indent should never use tabs
#1454: FILE:hw/net/sungem.h:369:
+#define MAC_RXCVERR^I0x6128UL^I/* RX code Violation Error Ctr^I*/$ERROR: code indent should never use tabs
#1455: FILE:hw/net/sungem.h:370:
+#define MAC_RANDSEED^I0x6130UL^I/* Random Number Seed Register^I*/$ERROR: code indent should never use tabs
#1456: FILE:hw/net/sungem.h:371:
+#define MAC_SMACHINE^I0x6134UL^I/* State Machine Register^I*/$ERROR: code indent should never use tabs
#1459: FILE:hw/net/sungem.h:374:
+#define MAC_TXRST_CMD^I0x00000001^I/* Start sw reset, self- clears^I*/$ERROR: code indent should never use tabs
#1462: FILE:hw/net/sungem.h:377:
+#define MAC_RXRST_CMD^I0x00000001^I/* Start sw reset, self- clears^I*/$ERROR: code indent should never use tabs
#1465: FILE:hw/net/sungem.h:380:
+#define MAC_SNDPAUSE_TS^I0x0000ffff^I/* Thepause_timeoperand used in$ERROR: code indent should never use tabs
#1466: FILE:hw/net/sungem.h:381:
+^I^I^I^I^I *Send_Pauseand flow-control$ERROR: code indent should never use tabs
#1467: FILE:hw/net/sungem.h:382:
+^I^I^I^I^I * handshakes.$ERROR: code indent should never use tabs
#1468: FILE:hw/net/sungem.h:383:
+^I^I^I^I^I */$ERROR: code indent should never use tabs
#1469: FILE:hw/net/sungem.h:384:
+#define MAC_SNDPAUSE_SP^I0x00010000^I/* Setting this bit instructs the MAC$ERROR: code indent should never use tabs
#1470: FILE:hw/net/sungem.h:385:
+^I^I^I^I^I * to send a Pause Flow Control$ERROR: code indent should never use tabs
#1471: FILE:hw/net/sungem.h:386:
+^I^I^I^I^I * frame onto the network.$ERROR: code indent should never use tabs
#1472: FILE:hw/net/sungem.h:387:
+^I^I^I^I^I */$ERROR: code indent should never use tabs
#1475: FILE:hw/net/sungem.h:390:
+#define MAC_TXSTAT_XMIT^I0x00000001^I/* Frame Transmitted^I^I*/$ERROR: code indent should never use tabs
#1476: FILE:hw/net/sungem.h:391:
+#define MAC_TXSTAT_URUN^I0x00000002^I/* TX Underrun^I^I^I*/$ERROR: code indent should never use tabs
#1477: FILE:hw/net/sungem.h:392:
+#define MAC_TXSTAT_MPE^I0x00000004^I/* Max Packet Size Error^I*/$ERROR: code indent should never use tabs
#1478: FILE:hw/net/sungem.h:393:
+#define MAC_TXSTAT_NCE^I0x00000008^I/* Normal Collision Cntr Expire^I*/$ERROR: code indent should never use tabs
#1479: FILE:hw/net/sungem.h:394:
+#define MAC_TXSTAT_ECE^I0x00000010^I/* Excess Collision Cntr Expire^I*/$ERROR: code indent should never use tabs
#1480: FILE:hw/net/sungem.h:395:
+#define MAC_TXSTAT_LCE^I0x00000020^I/* Late Collision Cntr Expire^I*/$ERROR: code indent should never use tabs
#1481: FILE:hw/net/sungem.h:396:
+#define MAC_TXSTAT_FCE^I0x00000040^I/* First Collision Cntr Expire^I*/$ERROR: code indent should never use tabs
#1482: FILE:hw/net/sungem.h:397:
+#define MAC_TXSTAT_DTE^I0x00000080^I/* Defer Timer Expire^I^I*/$ERROR: code indent should never use tabs
#1483: FILE:hw/net/sungem.h:398:
+#define MAC_TXSTAT_PCE^I0x00000100^I/* Peak Attempts Cntr Expire^I*/$ERROR: code indent should never use tabs
#1486: FILE:hw/net/sungem.h:401:
+#define MAC_RXSTAT_RCV^I0x00000001^I/* Frame Received^I^I*/$ERROR: code indent should never use tabs
#1487: FILE:hw/net/sungem.h:402:
+#define MAC_RXSTAT_OFLW^I0x00000002^I/* Receive Overflow^I^I*/$ERROR: code indent should never use tabs
#1488: FILE:hw/net/sungem.h:403:
+#define MAC_RXSTAT_FCE^I0x00000004^I/* Frame Cntr Expire^I^I*/$ERROR: code indent should never use tabs
#1489: FILE:hw/net/sungem.h:404:
+#define MAC_RXSTAT_ACE^I0x00000008^I/* Align Error Cntr Expire^I*/$ERROR: code indent should never use tabs
#1490: FILE:hw/net/sungem.h:405:
+#define MAC_RXSTAT_CCE^I0x00000010^I/* CRC Error Cntr Expire^I*/$ERROR: code indent should never use tabs
#1491: FILE:hw/net/sungem.h:406:
+#define MAC_RXSTAT_LCE^I0x00000020^I/* Length Error Cntr Expire^I*/$ERROR: code indent should never use tabs
#1492: FILE:hw/net/sungem.h:407:
+#define MAC_RXSTAT_VCE^I0x00000040^I/* Code Violation Cntr Expire^I*/$ERROR: code indent should never use tabs
#1495: FILE:hw/net/sungem.h:410:
+#define MAC_CSTAT_PRCV^I0x00000001^I/* Pause Received^I^I*/$ERROR: code indent should never use tabs
#1496: FILE:hw/net/sungem.h:411:
+#define MAC_CSTAT_PS^I0x00000002^I/* Paused State^I^I^I*/$ERROR: code indent should never use tabs
#1497: FILE:hw/net/sungem.h:412:
+#define MAC_CSTAT_NPS^I0x00000004^I/* Not Paused State^I^I*/$ERROR: code indent should never use tabs
#1498: FILE:hw/net/sungem.h:413:
+#define MAC_CSTAT_PTR^I0xffff0000^I/* Pause Time Received^I^I*/$ERROR: code indent should never use tabs
#1510: FILE:hw/net/sungem.h:425:
+ *^I zero before any other bits in this register are changed.$ERROR: code indent should never use tabs
#1512: FILE:hw/net/sungem.h:427:
+ *^I Also, enabling the Carrier Extension feature of GEM is$ERROR: code indent should never use tabs
#1513: FILE:hw/net/sungem.h:428:
+ *^I a 3 step process 1) Set TX Carrier Extension 2) Set$ERROR: code indent should never use tabs
#1514: FILE:hw/net/sungem.h:429:
+ *^I RX Carrier Extension 3) Set Slot Time to 0x200. This$ERROR: code indent should never use tabs
#1515: FILE:hw/net/sungem.h:430:
+ *^I mode must be enabled when in half-duplex at 1Gbps, else$ERROR: code indent should never use tabs
#1516: FILE:hw/net/sungem.h:431:
+ *^I it must be disabled.$ERROR: code indent should never use tabs
#1518: FILE:hw/net/sungem.h:433:
+#define MAC_TXCFG_ENAB^I0x00000001^I/* TX MAC Enable^I^I*/$ERROR: code indent should never use tabs
#1519: FILE:hw/net/sungem.h:434:
+#define MAC_TXCFG_ICS^I0x00000002^I/* Ignore Carrier Sense^I^I*/$ERROR: code indent should never use tabs
#1520: FILE:hw/net/sungem.h:435:
+#define MAC_TXCFG_ICOLL^I0x00000004^I/* Ignore Collisions^I^I*/$ERROR: code indent should never use tabs
#1521: FILE:hw/net/sungem.h:436:
+#define MAC_TXCFG_EIPG0^I0x00000008^I/* Enable IPG0^I^I^I*/$ERROR: code indent should never use tabs
#1522: FILE:hw/net/sungem.h:437:
+#define MAC_TXCFG_NGU^I0x00000010^I/* Never Give Up^I^I*/$ERROR: code indent should never use tabs
#1523: FILE:hw/net/sungem.h:438:
+#define MAC_TXCFG_NGUL^I0x00000020^I/* Never Give Up Limit^I^I*/$ERROR: code indent should never use tabs
#1524: FILE:hw/net/sungem.h:439:
+#define MAC_TXCFG_NBO^I0x00000040^I/* No Backoff^I^I^I*/$ERROR: code indent should never use tabs
#1525: FILE:hw/net/sungem.h:440:
+#define MAC_TXCFG_SD^I0x00000080^I/* Slow Down^I^I^I*/$ERROR: code indent should never use tabs #1526: FILE:
hw/net/sungem.h:441:
+#define MAC_TXCFG_NFCS^I0x00000100^I/* No FCS^I^I^I*/$ERROR: code indent should never use tabs
#1527: FILE:hw/net/sungem.h:442:
+#define MAC_TXCFG_TCE^I0x00000200^I/* TX Carrier Extension^I^I*/$ERROR: code indent should never use tabs
#1532: FILE:hw/net/sungem.h:447:
+ *^I zero before any other bits in this register are changed.$ERROR: code indent should never use tabs
#1534: FILE:hw/net/sungem.h:449:
+ *^I Similar rules apply to the Hash Filter Enable bit when$ERROR: code indent should never use tabs
#1535: FILE:hw/net/sungem.h:450:
+ *^I programming the hash table registers, and the Address Filter$ERROR: code indent should never use tabs
#1536: FILE:hw/net/sungem.h:451:
+ *^I Enable bit when programming the address filter registers.$ERROR: code indent should never use tabs
#1538: FILE:hw/net/sungem.h:453:
+#define MAC_RXCFG_ENAB^I0x00000001^I/* RX MAC Enable^I^I*/$ERROR: code indent should never use tabs
#1539: FILE:hw/net/sungem.h:454:
+#define MAC_RXCFG_SPAD^I0x00000002^I/* Strip Pad^I^I^I*/$ERROR: code indent should never use tabs
#1540: FILE:hw/net/sungem.h:455:
+#define MAC_RXCFG_SFCS^I0x00000004^I/* Strip FCS^I^I^I*/$ERROR: code indent should never use tabs
#1541: FILE:hw/net/sungem.h:456:
+#define MAC_RXCFG_PROM^I0x00000008^I/* Promiscuous Mode^I^I*/$ERROR: code indent should never use tabs
#1542: FILE:hw/net/sungem.h:457:
+#define MAC_RXCFG_PGRP^I0x00000010^I/* Promiscuous Group^I^I*/$ERROR: code indent should never use tabs
#1543: FILE:hw/net/sungem.h:458:
+#define MAC_RXCFG_HFE^I0x00000020^I/* Hash Filter Enable^I^I*/$ERROR: code indent should never use tabs
#1544: FILE:hw/net/sungem.h:459:
+#define MAC_RXCFG_AFE^I0x00000040^I/* Address Filter Enable^I*/$ERROR: code indent should never use tabs
#1545: FILE:hw/net/sungem.h:460:
+#define MAC_RXCFG_DDE^I0x00000080^I/* Disable Discard on Error^I*/$ERROR: code indent should never use tabs
#1546: FILE:hw/net/sungem.h:461:
+#define MAC_RXCFG_RCE^I0x00000100^I/* RX Carrier Extension^I^I*/$ERROR: code indent should never use tabs
#1549: FILE:hw/net/sungem.h:464:
+#define MAC_MCCFG_SPE^I0x00000001^I/* Send Pause Enable^I^I*/$ERROR: code indent should never use tabs
#1550: FILE:hw/net/sungem.h:465:
+#define MAC_MCCFG_RPE^I0x00000002^I/* Receive Pause Enable^I^I*/$ERROR: code indent should never use tabs
#1551: FILE:hw/net/sungem.h:466:
+#define MAC_MCCFG_PMC^I0x00000004^I/* Pass MAC Control^I^I*/$ERROR: code indent should never use tabs
#1558: FILE:hw/net/sungem.h:473:
+#define MAC_XIFCFG_OE^I0x00000001^I/* MII TX Output Driver Enable^I*/$ERROR: code indent should never use tabs
#1559: FILE:hw/net/sungem.h:474:
+#define MAC_XIFCFG_LBCK^I0x00000002^I/* Loopback TX to RX^I^I*/$ERROR: code indent should never use tabs
#1560: FILE:hw/net/sungem.h:475:
+#define MAC_XIFCFG_DISE^I0x00000004^I/* Disable RX path during TX^I*/$ERROR: code indent should never use tabs
#1561: FILE:hw/net/sungem.h:476:
+#define MAC_XIFCFG_GMII^I0x00000008^I/* Use GMII clocks + datapath^I*/$ERROR: code indent should never use tabs
#1562: FILE:hw/net/sungem.h:477:
+#define MAC_XIFCFG_MBOE^I0x00000010^I/* ControlsMII_BUF_ENpin^I*/$ERROR: code indent should never use tabs
#1563: FILE:hw/net/sungem.h:478:
+#define MAC_XIFCFG_LLED^I0x00000020^I/* Force LINKLED# active (low)^I*/$ERROR: code indent should never use tabs
#1564: FILE:hw/net/sungem.h:479:
+#define MAC_XIFCFG_FLED^I0x00000040^I/* Force FDPLXLED# active (low)^I*/$ERROR: code indent should never use tabs
#1616: FILE:hw/net/sungem.h:531:
+#define MAC_MAXFSZ_MFS^I0x00007fff^I/* Max Frame Size^I^I*/$ERROR: code indent should never use tabs
#1617: FILE:hw/net/sungem.h:532:
+#define MAC_MAXFSZ_MBS^I0x7fff0000^I/* Max Burst Size^I^I*/$ERROR: code indent should never use tabs
#1664: FILE:hw/net/sungem.h:579:
+ *^I the chip.$ERROR: code indent should never use tabs
#1665: FILE:hw/net/sungem.h:580:
+ *^I^IMAC_Address_2 = (a << 8) | b$ERROR: code indent should never use tabs
#1666: FILE:hw/net/sungem.h:581:
+ *^I^IMAC_Address_1 = (c << 8) | d$ERROR: code indent should never use tabs
#1667: FILE:hw/net/sungem.h:582:
+ *^I^IMAC_Address_0 = (e << 8) | f$ERROR: code indent should never use tabs
#1702: FILE:hw/net/sungem.h:617:
+#define MIF_BBCLK^I0x6200UL^I/* MIF Bit-Bang Clock^I^I*/$ERROR: code indent should never use tabs
#1703: FILE:hw/net/sungem.h:618:
+#define MIF_BBDATA^I0x6204UL^I/* MIF Bit-Band Data^I^I*/$ERROR: code indent should never use tabs
#1704: FILE:hw/net/sungem.h:619:
+#define MIF_BBOENAB^I0x6208UL^I/* MIF Bit-Bang Output Enable^I*/$ERROR: code indent should never use tabs
#1705: FILE:hw/net/sungem.h:620:
+#define MIF_FRAME^I0x620CUL^I/* MIF Frame/Output Register^I*/$ERROR: code indent should never use tabs
#1706: FILE:hw/net/sungem.h:621:
+#define MIF_CFG^I^I0x6210UL^I/* MIF Configuration Register^I*/$ERROR: code indent should never use tabs
#1707: FILE:hw/net/sungem.h:622:
+#define MIF_MASK^I0x6214UL^I/* MIF Mask Register^I^I*/$ERROR: code indent should never use tabs
#1708: FILE:hw/net/sungem.h:623:
+#define MIF_STATUS^I0x6218UL^I/* MIF Status Register^I^I*/$ERROR: code indent should never use tabs
#1709: FILE:hw/net/sungem.h:624:
+#define MIF_SMACHINE^I0x621CUL^I/* MIF State Machine Register^I*/$ERROR: code indent should never use tabs
#1740: FILE:hw/net/sungem.h:655:
+#define MIF_CFG_PSELECT^I0x00000001^I/* Xcvr slct: 0=mdio0 1=mdio1^I*/$ERROR: code indent should never use tabs
#1741: FILE:hw/net/sungem.h:656:
+#define MIF_CFG_POLL^I0x00000002^I/* Enable polling mechanism^I*/$ERROR: code indent should never use tabs
#1742: FILE:hw/net/sungem.h:657:
+#define MIF_CFG_BBMODE^I0x00000004^I/* 1=bit-bang 0=frame mode^I*/$ERROR: code indent should never use tabs
#1743: FILE:hw/net/sungem.h:658:
+#define MIF_CFG_PRADDR^I0x000000f8^I/* Xcvr poll register address^I*/$ERROR: code indent should never use tabs
#1744: FILE:hw/net/sungem.h:659:
+#define MIF_CFG_MDI0^I0x00000100^I/*MDIO_0present or read-bit^I*/$ERROR: code indent should never use tabs
#1745: FILE:hw/net/sungem.h:660:
+#define MIF_CFG_MDI1^I0x00000200^I/*MDIO_1present or read-bit^I*/$ERROR: code indent should never use tabs
#1746: FILE:hw/net/sungem.h:661:
+#define MIF_CFG_PPADDR^I0x00007c00^I/* Xcvr poll PHY address^I*/$ERROR: code indent should never use tabs
#1755: FILE:hw/net/sungem.h:670:
+#define MIF_FRAME_ST^I0xc0000000^I/* STart of frame^I^I*/$ERROR: code indent should never use tabs #1756: FILE:
hw/net/sungem.h:671:
+#define MIF_FRAME_OP^I0x30000000^I/* OPcode^I^I^I*/$ERROR: code indent should never use tabs
#1757: FILE:hw/net/sungem.h:672:
+#define MIF_FRAME_PHYAD^I0x0f800000^I/* PHY ADdress^I^I^I*/$ERROR: code indent should never use tabs
#1758: FILE:hw/net/sungem.h:673:
+#define MIF_FRAME_REGAD^I0x007c0000^I/* REGister ADdress^I^I*/$ERROR: code indent should never use tabs
#1759: FILE:hw/net/sungem.h:674:
+#define MIF_FRAME_TAMSB^I0x00020000^I/* Turn Around MSB^I^I*/$ERROR: code indent should never use tabs
#1760: FILE:hw/net/sungem.h:675:
+#define MIF_FRAME_TALSB^I0x00010000^I/* Turn Around LSB^I^I*/$ERROR: code indent should never use tabs
#1761: FILE:hw/net/sungem.h:676:
+#define MIF_FRAME_DATA^I0x0000ffff^I/* Instruction Payload^I^I*/$ERROR: code indent should never use tabs
#1767: FILE:hw/net/sungem.h:682:
+#define MIF_STATUS_DATA^I0xffff0000^I/* Live image of XCVR reg^I*/$ERROR: code indent should never use tabs
#1768: FILE:hw/net/sungem.h:683:
+#define MIF_STATUS_STAT^I0x0000ffff^I/* Which bits have changed^I*/$ERROR: code indent should never use tabs
#1776: FILE:hw/net/sungem.h:691:
+#define PCS_MIICTRL^I0x9000UL^I/* PCS MII Control Register^I*/$ERROR: code indent should never use tabs
#1777: FILE:hw/net/sungem.h:692:
+#define PCS_MIISTAT^I0x9004UL^I/* PCS MII Status Register^I*/$ERROR: code indent should never use tabs
#1778: FILE:hw/net/sungem.h:693:
+#define PCS_MIIADV^I0x9008UL^I/* PCS MII Advertisement Reg^I*/$ERROR: code indent should never use tabs
#1779: FILE:hw/net/sungem.h:694:
+#define PCS_MIILP^I0x900CUL^I/* PCS MII Link Partner Ability^I*/$ERROR: code indent should never use tabs
#1780: FILE:hw/net/sungem.h:695:
+#define PCS_CFG^I^I0x9010UL^I/* PCS Configuration Register^I*/$ERROR: code indent should never use tabs
#1781: FILE:hw/net/sungem.h:696:
+#define PCS_SMACHINE^I0x9014UL^I/* PCS State Machine Register^I*/$ERROR: code indent should never use tabs
#1782: FILE:hw/net/sungem.h:697:
+#define PCS_ISTAT^I0x9018UL^I/* PCS Interrupt Status Reg^I*/$ERROR: code indent should never use tabs
#1783: FILE:hw/net/sungem.h:698:
+#define PCS_DMODE^I0x9050UL^I/* Datapath Mode Register^I*/$ERROR: code indent should never use tabs
#1784: FILE:hw/net/sungem.h:699:
+#define PCS_SCTRL^I0x9054UL^I/* Serialink Control Register^I*/$ERROR: code indent should never use tabs
#1785: FILE:hw/net/sungem.h:700:
+#define PCS_SOS^I^I0x9058UL^I/* Shared Output Select Reg^I*/$ERROR: code indent should never use tabs
#1786: FILE:hw/net/sungem.h:701:
+#define PCS_SSTATE^I0x905CUL^I/* Serialink State Register^I*/$ERROR: code indent should never use tabs
#1789: FILE:hw/net/sungem.h:704:
+#define PCS_MIICTRL_SPD^I0x00000040^I/* Read as one, writes ignored^I*/$ERROR: code indent should never use tabs
#1790: FILE:hw/net/sungem.h:705:
+#define PCS_MIICTRL_CT^I0x00000080^I/* Force COL signal active^I*/$ERROR: code indent should never use tabs
#1791: FILE:hw/net/sungem.h:706:
+#define PCS_MIICTRL_DM^I0x00000100^I/* Duplex mode, forced low^I*/$ERROR: code indent should never use tabs
#1792: FILE:hw/net/sungem.h:707:
+#define PCS_MIICTRL_RAN^I0x00000200^I/* Restart auto-neg, self clear^I*/$ERROR: code indent should never use tabs
#1793: FILE:hw/net/sungem.h:708:
+#define PCS_MIICTRL_ISO^I0x00000400^I/* Read as zero, writes ignored^I*/$ERROR: code indent should never use tabs
#1794: FILE:hw/net/sungem.h:709:
+#define PCS_MIICTRL_PD^I0x00000800^I/* Read as zero, writes ignored^I*/$ERROR: code indent should never use tabs
#1795: FILE:hw/net/sungem.h:710:
+#define PCS_MIICTRL_ANE^I0x00001000^I/* Auto-neg enable^I^I*/$ERROR: code indent should never use tabs
#1796: FILE:hw/net/sungem.h:711:
+#define PCS_MIICTRL_SS^I0x00002000^I/* Read as zero, writes ignored^I*/$ERROR: code indent should never use tabs
#1797: FILE:hw/net/sungem.h:712:
+#define PCS_MIICTRL_WB^I0x00004000^I/* Wrapback, loopback at 10-bit$ERROR: code indent should never use tabs
#1798: FILE:hw/net/sungem.h:713:
+^I^I^I^I^I * input side of Serialink$ERROR: code indent should never use tabs
#1799: FILE:hw/net/sungem.h:714:
+^I^I^I^I^I */$ERROR: code indent should never use tabs
#1800: FILE:hw/net/sungem.h:715:
+#define PCS_MIICTRL_RST^I0x00008000^I/* Resets PCS, self clearing^I*/$ERROR: code indent should never use tabs
#1803: FILE:hw/net/sungem.h:718:
+#define PCS_MIISTAT_EC^I0x00000001^I/* Ext Capability: Read as zero^I*/$ERROR: code indent should never use tabs
#1804: FILE:hw/net/sungem.h:719:
+#define PCS_MIISTAT_JD^I0x00000002^I/* Jabber Detect: Read as zero^I*/$ERROR: code indent should never use tabs
#1805: FILE:hw/net/sungem.h:720:
+#define PCS_MIISTAT_LS^I0x00000004^I/* Link Status: 1=up 0=down^I*/$ERROR: code indent should never use tabs
#1806: FILE:hw/net/sungem.h:721:
+#define PCS_MIISTAT_ANA^I0x00000008^I/* Auto-neg Ability, always 1^I*/$ERROR: code indent should never use tabs
#1807: FILE:hw/net/sungem.h:722:
+#define PCS_MIISTAT_RF^I0x00000010^I/* Remote Fault^I^I^I*/$ERROR: code indent should never use tabs
#1808: FILE:hw/net/sungem.h:723:
+#define PCS_MIISTAT_ANC^I0x00000020^I/* Auto-neg complete^I^I*/$ERROR: code indent should never use tabs
#1809: FILE:hw/net/sungem.h:724:
+#define PCS_MIISTAT_ES^I0x00000100^I/* Extended Status, always 1^I*/$ERROR: code indent should never use tabs
#1812: FILE:hw/net/sungem.h:727:
+#define PCS_MIIADV_FD^I0x00000020^I/* Advertise Full Duplex^I*/$ERROR: code indent should never use tabs
#1813: FILE:hw/net/sungem.h:728:
+#define PCS_MIIADV_HD^I0x00000040^I/* Advertise Half Duplex^I*/$ERROR: code indent should never use tabs
#1814: FILE:hw/net/sungem.h:729:
+#define PCS_MIIADV_SP^I0x00000080^I/* Advertise Symmetric Pause^I*/$ERROR: code indent should never use tabs
#1815: FILE:hw/net/sungem.h:730:
+#define PCS_MIIADV_AP^I0x00000100^I/* Advertise Asymmetric Pause^I*/$ERROR: code indent should never use tabs
#1816: FILE:hw/net/sungem.h:731:
+#define PCS_MIIADV_RF^I0x00003000^I/* Remote Fault^I^I^I*/$ERROR: code indent should never use tabs
#1817: FILE:hw/net/sungem.h:732:
+#define PCS_MIIADV_ACK^I0x00004000^I/* Read-only^I^I^I*/$ERROR: code indent should never use tabs
#1818: FILE:hw/net/sungem.h:733:
+#define PCS_MIIADV_NP^I0x00008000^I/* Next-page, forced low^I*/$ERROR: code indent should never use tabs
#1826: FILE:hw/net/sungem.h:741:
+#define PCS_CFG_ENABLE^I0x00000001^I/* Must be zero while changing$ERROR: code indent should never use tabs
#1827: FILE:hw/net/sungem.h:742:
+^I^I^I^I^I * PCS MII advertisement reg.$ERROR: code indent should never use tabs
#1828: FILE:hw/net/sungem.h:743:
+^I^I^I^I^I */$ERROR: code indent should never use tabs
#1829: FILE:hw/net/sungem.h:744:
+#define PCS_CFG_SDO^I0x00000002^I/* Signal detect override^I*/$ERROR: code indent should never use tabs
#1830: FILE:hw/net/sungem.h:745:
+#define PCS_CFG_SDL^I0x00000004^I/* Signal detect active low^I*/$ERROR: code indent should never use tabs #1831: FILE:
hw/net/sungem.h:746:
+#define PCS_CFG_JS^I0x00000018^I/* Jitter-study:$ERROR: code indent should never use tabs
#1832: FILE:hw/net/sungem.h:747:
+^I^I^I^I^I * 0 = normal operation$ERROR: code indent should never use tabs
#1833: FILE:hw/net/sungem.h:748:
+^I^I^I^I^I * 1 = high-frequency test pattern$ERROR: code indent should never use tabs
#1834: FILE:hw/net/sungem.h:749:
+^I^I^I^I^I * 2 = low-frequency test pattern$ERROR: code indent should never use tabs
#1835: FILE:hw/net/sungem.h:750:
+^I^I^I^I^I * 3 = reserved$ERROR: code indent should never use tabs
#1836: FILE:hw/net/sungem.h:751:
+^I^I^I^I^I */$ERROR: code indent should never use tabs
#1837: FILE:hw/net/sungem.h:752:
+#define PCS_CFG_TO^I0x00000020^I/* 10ms auto-neg timer override^I*/$ERROR: code indent should never use tabs
#1842: FILE:hw/net/sungem.h:757:
+#define PCS_ISTAT_LSC^I0x00000004^I/* Link Status Change^I^I*/$ERROR: code indent should never use tabs
#1845: FILE:hw/net/sungem.h:760:
+#define PCS_DMODE_SM^I0x00000001^I/* 1 = use internal Serialink^I*/$ERROR: code indent should never use tabs
#1846: FILE:hw/net/sungem.h:761:
+#define PCS_DMODE_ESM^I0x00000002^I/* External SERDES mode^I^I*/$ERROR: code indent should never use tabs
#1847: FILE:hw/net/sungem.h:762:
+#define PCS_DMODE_MGM^I0x00000004^I/* MII/GMII mode^I^I*/$ERROR: code indent should never use tabs
#1848: FILE:hw/net/sungem.h:763:
+#define PCS_DMODE_GMOE^I0x00000008^I/* GMII Output Enable^I^I*/$ERROR: code indent should never use tabs
#1854: FILE:hw/net/sungem.h:769:
+#define PCS_SCTRL_LOOP^I0x00000001^I/* Loopback enable^I^I*/$ERROR: code indent should never use tabs
#1855: FILE:hw/net/sungem.h:770:
+#define PCS_SCTRL_ESCD^I0x00000002^I/* Enable sync char detection^I*/$ERROR: code indent should never use tabs
#1856: FILE:hw/net/sungem.h:771:
+#define PCS_SCTRL_LOCK^I0x00000004^I/* Lock to reference clock^I*/$ERROR: code indent should never use tabs
#1857: FILE:hw/net/sungem.h:772:
+#define PCS_SCTRL_EMP^I0x00000018^I/* Output driver emphasis^I*/$ERROR: code indent should never use tabs
#1858: FILE:hw/net/sungem.h:773:
+#define PCS_SCTRL_STEST^I0x000001c0^I/* Self test patterns^I^I*/$ERROR: code indent should never use tabs
#1859: FILE:hw/net/sungem.h:774:
+#define PCS_SCTRL_PDWN^I0x00000200^I/* Software power-down^I^I*/$ERROR: code indent should never use tabs
#1860: FILE:hw/net/sungem.h:775:
+#define PCS_SCTRL_RXZ^I0x00000c00^I/* PLL input to Serialink^I*/$ERROR: code indent should never use tabs
#1861: FILE:hw/net/sungem.h:776:
+#define PCS_SCTRL_RXP^I0x00003000^I/* PLL input to Serialink^I*/$ERROR: code indent should never use tabs
#1862: FILE:hw/net/sungem.h:777:
+#define PCS_SCTRL_TXZ^I0x0000c000^I/* PLL input to Serialink^I*/$ERROR: code indent should never use tabs
#1863: FILE:hw/net/sungem.h:778:
+#define PCS_SCTRL_TXP^I0x00030000^I/* PLL input to Serialink^I*/$ERROR: code indent should never use tabs
#1869: FILE:hw/net/sungem.h:784:
+#define PCS_SOS_PADDR^I0x00000003^I/* PROM Address^I^I^I*/$ERROR: code indent should never use tabs
#1872: FILE:hw/net/sungem.h:787:
+#define PROM_START^I0x100000UL^I/* Expansion ROM run time access*/$ERROR: code indent should never use tabs #1873: FILE:
hw/net/sungem.h:788:
+#define PROM_SIZE^I0x0fffffUL^I/* Size of ROM^I^I^I*/$ERROR: code indent should never use tabs #1874: FILE:
hw/net/sungem.h:789:
+#define PROM_END^I0x200000UL^I/* End of ROM^I^I^I*/$ERROR: code indent should never use tabs
#1878: FILE:hw/net/sungem.h:793:
+#define BMCR_SPD2^I0x0040^I^I/* Gigabit enable? (bcm5411)^I*/$ERROR: code indent should never use tabs
#1879: FILE:hw/net/sungem.h:794:
+#define LPA_PAUSE^I0x0400$ERROR: code indent should never use tabs
#1884: FILE:hw/net/sungem.h:799:
+#define MII_BCM5201_INTERRUPT^I^I^I0x1A$ERROR: code indent should never use tabs #1885: FILE:
hw/net/sungem.h:800:
+#define MII_BCM5201_INTERRUPT_INTENABLE^I^I0x4000$ERROR: code indent should never use tabs
#1887: FILE:hw/net/sungem.h:802:
+#define MII_BCM5201_AUXMODE2^I^I^I0x1B$ERROR: code indent should never use tabs
#1888: FILE:hw/net/sungem.h:803:
+#define MII_BCM5201_AUXMODE2_LOWPOWER^I^I0x0008$ERROR: code indent should never use tabs
#1897: FILE:hw/net/sungem.h:812:
+#define MII_BCM5400_GB_CONTROL^I^I^I0x09$ERROR: code indent should never use tabs #1898: FILE:
hw/net/sungem.h:813:
+#define MII_BCM5400_GB_CONTROL_FULLDUPLEXCAP^I0x0200$ERROR: code indent should never use tabs
#1922: FILE:hw/net/sungem.h:837:
+ uint64_t^Icontrol_word;$ERROR: code indent should never use tabs
#1923: FILE:hw/net/sungem.h:838:
+ uint64_t^Ibuffer;$ERROR: code indent should never use tabs
#1926: FILE:hw/net/sungem.h:841:
+#define TXDCTRL_BUFSZ^I0x0000000000007fffULL^I/* Buffer Size^I^I*/$ERROR: code indent should never use tabs
#1927: FILE:hw/net/sungem.h:842:
+#define TXDCTRL_CSTART^I0x00000000001f8000ULL^I/* CSUM Start Offset^I*/$ERROR: code indent should never use tabs
#1928: FILE:hw/net/sungem.h:843:
+#define TXDCTRL_COFF^I0x000000001fe00000ULL^I/* CSUM Stuff Offset^I*/$ERROR: code indent should never use tabs
#1929: FILE:hw/net/sungem.h:844:
+#define TXDCTRL_CENAB^I0x0000000020000000ULL^I/* CSUM Enable^I^I*/$ERROR: code indent should never use tabs
#1930: FILE:hw/net/sungem.h:845:
+#define TXDCTRL_EOF^I0x0000000040000000ULL^I/* End of Frame^I^I*/$ERROR: code indent should never use tabs
#1931: FILE:hw/net/sungem.h:846:
+#define TXDCTRL_SOF^I0x0000000080000000ULL^I/* Start of Frame^I*/$ERROR: code indent should never use tabs
#1932: FILE:hw/net/sungem.h:847:
+#define TXDCTRL_INTME^I0x0000000100000000ULL^I/* "Interrupt Me"^I*/$ERROR: code indent should never use tabs
#1933: FILE:hw/net/sungem.h:848:
+#define TXDCTRL_NOCRC^I0x0000000200000000ULL^I/* No CRC Present^I*/$ERROR: code indent should never use tabs
#1957: FILE:hw/net/sungem.h:872:
+ uint64_t^Istatus_word;$ERROR: code indent should never use tabs
#1958: FILE:hw/net/sungem.h:873:
+ uint64_t^Ibuffer;$ERROR: code indent should never use tabs
#1961: FILE:hw/net/sungem.h:876:
+#define RXDCTRL_TCPCSUM^I0x000000000000ffffULL^I/* TCP Pseudo- CSUM^I*/$ERROR: code indent should never use tabs
#1962: FILE:hw/net/sungem.h:877:
+#define RXDCTRL_BUFSZ^I0x000000007fff0000ULL^I/* Buffer Size^I^I*/$ERROR: code indent should never use tabs
#1963: FILE:hw/net/sungem.h:878:
+#define RXDCTRL_OWN^I0x0000000080000000ULL^I/* GEM owns this entry^I*/$ERROR: code indent should never use tabs
#1964: FILE:hw/net/sungem.h:879:
+#define RXDCTRL_HASHVAL^I0x0ffff00000000000ULL^I/* Hash Value^I^I*/$ERROR: code indent should never use tabs
#1965: FILE:hw/net/sungem.h:880:
+#define RXDCTRL_HPASS^I0x1000000000000000ULL^I/* Passed Hash Filter^I*/$ERROR: code indent should never use tabs
#1966: FILE:hw/net/sungem.h:881:
+#define RXDCTRL_ALTMAC^I0x2000000000000000ULL^I/* Matched ALT MAC^I*/$ERROR: code indent should never use tabs
#1967: FILE:hw/net/sungem.h:882:
+#define RXDCTRL_BAD^I0x4000000000000000ULL^I/* Frame has bad CRC^I*/$total: 428 errors, 73 warnings, 1950 lines checked
Your patch has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in
MAINTAINERS.=== OUTPUT END ===
Test command exited with code: 1
---
Email generated automatically by Patchew [http://patchew.org/].
Please send your feedback to [email protected]
Quoted 7 lines · Benjamin Herrenschmidt
Bla bla bla bla ...
Seriously, we have nazi stylebot on the list now ?
I made conscious decisions to style it this way and as far as the tabs in the .h are concerned, that's because the file is lifted from Linux and I'd like to keep it intact as much as possible.
There are actually a couple of places where I agree with the style change, so I'll include that in a futher post after more useful review has been posted (seriously, stylebots are just infuriating).
Cheers,
Ben.
Quoted 5 lines · Benjamin Herrenschmidt
Quoted 4 lines · Benjamin Herrenschmidt
Bla bla bla bla ...
Seriously, we have nazi stylebot on the list now ?
Quoted 7 lines
Quoted 3 lines
I made conscious decisions to style it this way and as far as the tabs in the .h are concerned, that's because the file is lifted from Linux and I'd like to keep it intact as much as possible.
There are actually a couple of places where I agree with the style change, so I'll include that in a futher post after more useful review has been posted (seriously, stylebots are just infuriating).
So.. as irritating as you find the bot, there are a bunch of gratuitous style problems. In particular sungem.c itself isn't consistent about whether it has 8 char or 4 char indentation. That really does need to be fixed.
Signature · 4 lines
David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson
Quoted 9 lines · David Gibson
Quoted 2 lines
There are actually a couple of places where I agree with the style change, so I'll include that in a futher post after more useful
review
Quoted 1 line
has been posted (seriously, stylebots are just infuriating).
So.. as irritating as you find the bot, there are a bunch of gratuitous style problems. In particular
sungem.citself isn't consistent about whether it has 8 char or 4 char indentation. That really does need to be fixed.
No time to work on this now. I will try to get back on to it later but I'm happy for anybody to pick it up if they want to.
Cheers,
Ben.
Quoted 10 lines · Benjamin Herrenschmidt
Quoted 4 lines · On Sun, 2016-08-14 at 15:54 -0700, [email protected]…
Hi,
Your series seems to have some coding style problems. See output below for more information:
Bla bla bla bla ...
Seriously, we have nazi stylebot on the list now ?
Patchew does more than just run checkpatch, it also builds and runs on a number of different distros/build environments. In this case however it is automatically running a check that saves reviewers time from having to do it themselves. I'm certainly in favour of having tools on the list that reduce the reviewers burden.
Quoted 3 lines
I made conscious decisions to style it this way and as far as the tabs in the .h are concerned, that's because the file is lifted from Linux and I'd like to keep it intact as much as possible.
There are certainly sometimes where you can argue it is worth violating checkpatch for the sake of consistency in the file however in those cases you should:
- mention it in the commit message
- ignore patchew's email unless human reviewers take issue with the violation
However:
Quoted 5 lines
Quoted 5 lines
total: 428 errors, 73 warnings, 1950 lines checked
Your patch has style problems, please review.If any of these errors are false positives report them to the maintainer, see CHECKPATCH in
MAINTAINERS.
It seems very unlikely all of the reported errors here can be justified along the lines of internal consistency, especially for adding a new file.
--
Alex Bennée
Quoted 9 lines · Alex Bennée
Quoted 7 lines
Quoted 7 lines
total: 428 errors, 73 warnings, 1950 lines checked
Your patch has style problems, please review.If any of these errors
are false positives report them to the maintainer, see CHECKPATCH inMAINTAINERS.
Quoted 4 lines
It seems very unlikely all of the reported errors here can be justified
along the lines of internal consistency, especially for adding a new file.
It's actually an old thread ;-) I've already fixed some of these, just haven't had a chance to finish and submit a new version.
However *most* of the above are intentional and I won't fix, it's about the .h file describing the registers that is essentially lifted from Linux and that I want to keep largely identical for obvious reasons (thus including the use of tabs).
Cheers,
Ben.
Quoted 10 lines · Benjamin Herrenschmidt
Quoted 9 lines · Alex Bennée
Quoted 8 lines
Quoted 8 lines
total: 428 errors, 73 warnings, 1950 lines checked
Your patch has style problems, please review.If any of these errors
are false positives report them to the maintainer, see CHECKPATCH inMAINTAINERS.
Quoted 7 lines
Quoted 4 lines
It seems very unlikely all of the reported errors here can be justified
along the lines of internal consistency, especially for adding a new file.It's actually an old thread ;-) I've already fixed some of these, just haven't had a chance to finish and submit a new version.
I'll blame my mailer for bringing old-threads up when new posts are made ;-)
Quoted 5 lines
However *most* of the above are intentional and I won't fix, it's about the .h file describing the registers that is essentially lifted from Linux and that I want to keep largely identical for obvious reasons (thus including the use of tabs).
Unless it is highly likely you'll be re-importing changes it is a bit of a thin justification. For things like linux-headers we obviously already have a mechanism that allows for raw import of violating headers. In this case you are just grabbing a bunch of magic numbers that haven't been updated for at least 11 years (if not more, the numbers pre-date Linux's git history). But hey I'll happily defer to the maintainers on this one!
--
Alex Bennée