Skip to content

Commit ce524c8

Browse files
author
Linus Torvalds
committed
Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6
* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6: eHEA: Fix bonding support Blackfin ethernet driver: on chip ethernet MAC controller driver fix wrong argument of tc35815_read_plat_dev_addr() ARM/ETHER3: Handle multicast frames. SAA9730: Handle multicast frames. NI5010: Handle multicast frames. NS83820: Handle multicast frames. Fix RGMII-ID handling in gianfar Fix Vitesse RGMII-ID support Add phy-connection-type to gianfar nodes Fix Vitesse 824x PHY interrupt acking [PATCH] zd1211rw: Add ID for Siemens Gigaset USB Stick 54 [PATCH] zd1211rw: Add ID for Planex GW-US54GXS [PATCH] Update version ipw2200 stamp to 1.2.2 [PATCH] ipw2200: Fix ipw_isr() comments error on shared IRQ [PATCH] Fix ipw2200 set wrong power parameter causing firmware error [PATCH] ipw2100: Fix `iwpriv set_power` error [PATCH] softmac: Channel is listed twice in scan output
2 parents 789c56b + f9e2922 commit ce524c8

File tree

22 files changed

+1308
-56
lines changed

22 files changed

+1308
-56
lines changed

Documentation/powerpc/booting-without-of.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1250,6 +1250,12 @@ platforms are moved over to use the flattened-device-tree model.
12501250
network device. This is used by the bootwrapper to interpret
12511251
MAC addresses passed by the firmware when no information other
12521252
than indices is available to associate an address with a device.
1253+
- phy-connection-type : a string naming the controller/PHY interface type,
1254+
i.e., "mii" (default), "rmii", "gmii", "rgmii", "rgmii-id", "sgmii",
1255+
"tbi", or "rtbi". This property is only really needed if the connection
1256+
is of type "rgmii-id", as all other connection types are detected by
1257+
hardware.
1258+
12531259

12541260
Example:
12551261

MAINTAINERS

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -732,6 +732,13 @@ L: uclinux-dist-devel@blackfin.uclinux.org (subscribers-only)
732732
W: http://blackfin.uclinux.org
733733
S: Supported
734734

735+
BLACKFIN EMAC DRIVER
736+
P: Bryan Wu
737+
M: bryan.wu@analog.com
738+
L: uclinux-dist-devel@blackfin.uclinux.org (subscribers-only)
739+
W: http://blackfin.uclinux.org
740+
S: Supported
741+
735742
BLACKFIN RTC DRIVER
736743
P: Mike Frysinger
737744
M: michael.frysinger@analog.com

arch/powerpc/boot/dts/mpc8641_hpcn.dts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,7 @@
131131
interrupts = <1d 2 1e 2 22 2>;
132132
interrupt-parent = <&mpic>;
133133
phy-handle = <&phy0>;
134+
phy-connection-type = "rgmii-id";
134135
};
135136

136137
ethernet@25000 {
@@ -150,6 +151,7 @@
150151
interrupts = <23 2 24 2 28 2>;
151152
interrupt-parent = <&mpic>;
152153
phy-handle = <&phy1>;
154+
phy-connection-type = "rgmii-id";
153155
};
154156

155157
ethernet@26000 {
@@ -169,6 +171,7 @@
169171
interrupts = <1F 2 20 2 21 2>;
170172
interrupt-parent = <&mpic>;
171173
phy-handle = <&phy2>;
174+
phy-connection-type = "rgmii-id";
172175
};
173176

174177
ethernet@27000 {
@@ -188,6 +191,7 @@
188191
interrupts = <25 2 26 2 27 2>;
189192
interrupt-parent = <&mpic>;
190193
phy-handle = <&phy3>;
194+
phy-connection-type = "rgmii-id";
191195
};
192196
serial@4500 {
193197
device_type = "serial";

arch/powerpc/sysdev/fsl_soc.c

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -197,6 +197,7 @@ static int __init gfar_of_init(void)
197197
struct gianfar_platform_data gfar_data;
198198
const unsigned int *id;
199199
const char *model;
200+
const char *ctype;
200201
const void *mac_addr;
201202
const phandle *ph;
202203
int n_res = 2;
@@ -254,6 +255,14 @@ static int __init gfar_of_init(void)
254255
FSL_GIANFAR_DEV_HAS_VLAN |
255256
FSL_GIANFAR_DEV_HAS_EXTENDED_HASH;
256257

258+
ctype = of_get_property(np, "phy-connection-type", NULL);
259+
260+
/* We only care about rgmii-id. The rest are autodetected */
261+
if (ctype && !strcmp(ctype, "rgmii-id"))
262+
gfar_data.interface = PHY_INTERFACE_MODE_RGMII_ID;
263+
else
264+
gfar_data.interface = PHY_INTERFACE_MODE_MII;
265+
257266
ph = of_get_property(np, "phy-handle", NULL);
258267
phy = of_find_node_by_phandle(*ph);
259268

drivers/net/Kconfig

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -838,6 +838,50 @@ config ULTRA32
838838
<file:Documentation/networking/net-modules.txt>. The module
839839
will be called smc-ultra32.
840840

841+
config BFIN_MAC
842+
tristate "Blackfin 536/537 on-chip mac support"
843+
depends on NET_ETHERNET && (BF537 || BF536) && (!BF537_PORT_H)
844+
select CRC32
845+
select BFIN_MAC_USE_L1 if DMA_UNCACHED_NONE
846+
help
847+
This is the driver for blackfin on-chip mac device. Say Y if you want it
848+
compiled into the kernel. This driver is also available as a module
849+
( = code which can be inserted in and removed from the running kernel
850+
whenever you want). The module will be called bfin_mac.
851+
852+
config BFIN_MAC_USE_L1
853+
bool "Use L1 memory for rx/tx packets"
854+
depends on BFIN_MAC && BF537
855+
default y
856+
help
857+
To get maximum network performace, you should use L1 memory as rx/tx buffers.
858+
Say N here if you want to reserve L1 memory for other uses.
859+
860+
config BFIN_TX_DESC_NUM
861+
int "Number of transmit buffer packets"
862+
depends on BFIN_MAC
863+
range 6 10 if BFIN_MAC_USE_L1
864+
range 10 100
865+
default "10"
866+
help
867+
Set the number of buffer packets used in driver.
868+
869+
config BFIN_RX_DESC_NUM
870+
int "Number of receive buffer packets"
871+
depends on BFIN_MAC
872+
range 20 100 if BFIN_MAC_USE_L1
873+
range 20 800
874+
default "20"
875+
help
876+
Set the number of buffer packets used in driver.
877+
878+
config BFIN_MAC_RMII
879+
bool "RMII PHY Interface (EXPERIMENTAL)"
880+
depends on BFIN_MAC && EXPERIMENTAL
881+
default n
882+
help
883+
Use Reduced PHY MII Interface
884+
841885
config SMC9194
842886
tristate "SMC 9194 support"
843887
depends on NET_VENDOR_SMC && (ISA || MAC && BROKEN)

drivers/net/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -200,6 +200,7 @@ obj-$(CONFIG_S2IO) += s2io.o
200200
obj-$(CONFIG_MYRI10GE) += myri10ge/
201201
obj-$(CONFIG_SMC91X) += smc91x.o
202202
obj-$(CONFIG_SMC911X) += smc911x.o
203+
obj-$(CONFIG_BFIN_MAC) += bfin_mac.o
203204
obj-$(CONFIG_DM9000) += dm9000.o
204205
obj-$(CONFIG_FEC_8XX) += fec_8xx/
205206
obj-$(CONFIG_PASEMI_MAC) += pasemi_mac.o

drivers/net/arm/ether3.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -464,7 +464,7 @@ static void ether3_setmulticastlist(struct net_device *dev)
464464
if (dev->flags & IFF_PROMISC) {
465465
/* promiscuous mode */
466466
priv(dev)->regs.config1 |= CFG1_RECVPROMISC;
467-
} else if (dev->flags & IFF_ALLMULTI) {
467+
} else if (dev->flags & IFF_ALLMULTI || dev->mc_count) {
468468
priv(dev)->regs.config1 |= CFG1_RECVSPECBRMULTI;
469469
} else
470470
priv(dev)->regs.config1 |= CFG1_RECVSPECBROAD;

0 commit comments

Comments
 (0)