diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-05-21 00:04:44 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-05-21 00:04:44 -0400 |
commit | f8965467f366fd18f01feafb5db10512d7b4422c (patch) | |
tree | 3706a9cd779859271ca61b85c63a1bc3f82d626e /arch | |
parent | a26272e5200765691e67d6780e52b32498fdb659 (diff) | |
parent | 2ec8c6bb5d8f3a62a79f463525054bae1e3d4487 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1674 commits)
qlcnic: adding co maintainer
ixgbe: add support for active DA cables
ixgbe: dcb, do not tag tc_prio_control frames
ixgbe: fix ixgbe_tx_is_paused logic
ixgbe: always enable vlan strip/insert when DCB is enabled
ixgbe: remove some redundant code in setting FCoE FIP filter
ixgbe: fix wrong offset to fc_frame_header in ixgbe_fcoe_ddp
ixgbe: fix header len when unsplit packet overflows to data buffer
ipv6: Never schedule DAD timer on dead address
ipv6: Use POSTDAD state
ipv6: Use state_lock to protect ifa state
ipv6: Replace inet6_ifaddr->dead with state
cxgb4: notify upper drivers if the device is already up when they load
cxgb4: keep interrupts available when the ports are brought down
cxgb4: fix initial addition of MAC address
cnic: Return SPQ credit to bnx2x after ring setup and shutdown.
cnic: Convert cnic_local_flags to atomic ops.
can: Fix SJA1000 command register writes on SMP systems
bridge: fix build for CONFIG_SYSFS disabled
ARCNET: Limit com20020 PCI ID matches for SOHARD cards
...
Fix up various conflicts with pcmcia tree drivers/net/
{pcmcia/3c589_cs.c, wireless/orinoco/orinoco_cs.c and
wireless/orinoco/spectrum_cs.c} and feature removal
(Documentation/feature-removal-schedule.txt).
Also fix a non-content conflict due to pm_qos_requirement getting
renamed in the PM tree (now pm_qos_request) in net/mac80211/scan.c
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-mx2/pcm970-baseboard.c | 6 | ||||
-rw-r--r-- | arch/arm/mach-mx3/mach-pcm037.c | 6 | ||||
-rw-r--r-- | arch/arm/mach-pxa/icontrol.c | 9 | ||||
-rw-r--r-- | arch/arm/mach-pxa/zeus.c | 4 | ||||
-rw-r--r-- | arch/microblaze/include/asm/system.h | 11 | ||||
-rw-r--r-- | arch/mips/sibyte/swarm/platform.c | 54 |
6 files changed, 76 insertions, 14 deletions
diff --git a/arch/arm/mach-mx2/pcm970-baseboard.c b/arch/arm/mach-mx2/pcm970-baseboard.c index 4aafd5b8b85b..f490a406d57e 100644 --- a/arch/arm/mach-mx2/pcm970-baseboard.c +++ b/arch/arm/mach-mx2/pcm970-baseboard.c | |||
@@ -201,9 +201,9 @@ static struct resource pcm970_sja1000_resources[] = { | |||
201 | }; | 201 | }; |
202 | 202 | ||
203 | struct sja1000_platform_data pcm970_sja1000_platform_data = { | 203 | struct sja1000_platform_data pcm970_sja1000_platform_data = { |
204 | .clock = 16000000 / 2, | 204 | .osc_freq = 16000000, |
205 | .ocr = 0x40 | 0x18, | 205 | .ocr = OCR_TX1_PULLDOWN | OCR_TX0_PUSHPULL, |
206 | .cdr = 0x40, | 206 | .cdr = CDR_CBP, |
207 | }; | 207 | }; |
208 | 208 | ||
209 | static struct platform_device pcm970_sja1000 = { | 209 | static struct platform_device pcm970_sja1000 = { |
diff --git a/arch/arm/mach-mx3/mach-pcm037.c b/arch/arm/mach-mx3/mach-pcm037.c index 2df1ec55a97e..78ecd751549b 100644 --- a/arch/arm/mach-mx3/mach-pcm037.c +++ b/arch/arm/mach-mx3/mach-pcm037.c | |||
@@ -530,9 +530,9 @@ static struct resource pcm970_sja1000_resources[] = { | |||
530 | }; | 530 | }; |
531 | 531 | ||
532 | struct sja1000_platform_data pcm970_sja1000_platform_data = { | 532 | struct sja1000_platform_data pcm970_sja1000_platform_data = { |
533 | .clock = 16000000 / 2, | 533 | .osc_freq = 16000000, |
534 | .ocr = 0x40 | 0x18, | 534 | .ocr = OCR_TX1_PULLDOWN | OCR_TX0_PUSHPULL, |
535 | .cdr = 0x40, | 535 | .cdr = CDR_CBP, |
536 | }; | 536 | }; |
537 | 537 | ||
538 | static struct platform_device pcm970_sja1000 = { | 538 | static struct platform_device pcm970_sja1000 = { |
diff --git a/arch/arm/mach-pxa/icontrol.c b/arch/arm/mach-pxa/icontrol.c index 771137fc1a82..5ccb0ceff6c4 100644 --- a/arch/arm/mach-pxa/icontrol.c +++ b/arch/arm/mach-pxa/icontrol.c | |||
@@ -73,7 +73,6 @@ static struct pxa2xx_spi_chip mcp251x_chip_info4 = { | |||
73 | 73 | ||
74 | static struct mcp251x_platform_data mcp251x_info = { | 74 | static struct mcp251x_platform_data mcp251x_info = { |
75 | .oscillator_frequency = 16E6, | 75 | .oscillator_frequency = 16E6, |
76 | .model = CAN_MCP251X_MCP2515, | ||
77 | .board_specific_setup = NULL, | 76 | .board_specific_setup = NULL, |
78 | .power_enable = NULL, | 77 | .power_enable = NULL, |
79 | .transceiver_enable = NULL | 78 | .transceiver_enable = NULL |
@@ -81,7 +80,7 @@ static struct mcp251x_platform_data mcp251x_info = { | |||
81 | 80 | ||
82 | static struct spi_board_info mcp251x_board_info[] = { | 81 | static struct spi_board_info mcp251x_board_info[] = { |
83 | { | 82 | { |
84 | .modalias = "mcp251x", | 83 | .modalias = "mcp2515", |
85 | .max_speed_hz = 6500000, | 84 | .max_speed_hz = 6500000, |
86 | .bus_num = 3, | 85 | .bus_num = 3, |
87 | .chip_select = 0, | 86 | .chip_select = 0, |
@@ -90,7 +89,7 @@ static struct spi_board_info mcp251x_board_info[] = { | |||
90 | .irq = gpio_to_irq(ICONTROL_MCP251x_nIRQ1) | 89 | .irq = gpio_to_irq(ICONTROL_MCP251x_nIRQ1) |
91 | }, | 90 | }, |
92 | { | 91 | { |
93 | .modalias = "mcp251x", | 92 | .modalias = "mcp2515", |
94 | .max_speed_hz = 6500000, | 93 | .max_speed_hz = 6500000, |
95 | .bus_num = 3, | 94 | .bus_num = 3, |
96 | .chip_select = 1, | 95 | .chip_select = 1, |
@@ -99,7 +98,7 @@ static struct spi_board_info mcp251x_board_info[] = { | |||
99 | .irq = gpio_to_irq(ICONTROL_MCP251x_nIRQ2) | 98 | .irq = gpio_to_irq(ICONTROL_MCP251x_nIRQ2) |
100 | }, | 99 | }, |
101 | { | 100 | { |
102 | .modalias = "mcp251x", | 101 | .modalias = "mcp2515", |
103 | .max_speed_hz = 6500000, | 102 | .max_speed_hz = 6500000, |
104 | .bus_num = 4, | 103 | .bus_num = 4, |
105 | .chip_select = 0, | 104 | .chip_select = 0, |
@@ -108,7 +107,7 @@ static struct spi_board_info mcp251x_board_info[] = { | |||
108 | .irq = gpio_to_irq(ICONTROL_MCP251x_nIRQ3) | 107 | .irq = gpio_to_irq(ICONTROL_MCP251x_nIRQ3) |
109 | }, | 108 | }, |
110 | { | 109 | { |
111 | .modalias = "mcp251x", | 110 | .modalias = "mcp2515", |
112 | .max_speed_hz = 6500000, | 111 | .max_speed_hz = 6500000, |
113 | .bus_num = 4, | 112 | .bus_num = 4, |
114 | .chip_select = 1, | 113 | .chip_select = 1, |
diff --git a/arch/arm/mach-pxa/zeus.c b/arch/arm/mach-pxa/zeus.c index 3680f6a90623..03b9cb910e08 100644 --- a/arch/arm/mach-pxa/zeus.c +++ b/arch/arm/mach-pxa/zeus.c | |||
@@ -414,15 +414,13 @@ static int zeus_mcp2515_transceiver_enable(int enable) | |||
414 | 414 | ||
415 | static struct mcp251x_platform_data zeus_mcp2515_pdata = { | 415 | static struct mcp251x_platform_data zeus_mcp2515_pdata = { |
416 | .oscillator_frequency = 16*1000*1000, | 416 | .oscillator_frequency = 16*1000*1000, |
417 | .model = CAN_MCP251X_MCP2515, | ||
418 | .board_specific_setup = zeus_mcp2515_setup, | 417 | .board_specific_setup = zeus_mcp2515_setup, |
419 | .transceiver_enable = zeus_mcp2515_transceiver_enable, | ||
420 | .power_enable = zeus_mcp2515_transceiver_enable, | 418 | .power_enable = zeus_mcp2515_transceiver_enable, |
421 | }; | 419 | }; |
422 | 420 | ||
423 | static struct spi_board_info zeus_spi_board_info[] = { | 421 | static struct spi_board_info zeus_spi_board_info[] = { |
424 | [0] = { | 422 | [0] = { |
425 | .modalias = "mcp251x", | 423 | .modalias = "mcp2515", |
426 | .platform_data = &zeus_mcp2515_pdata, | 424 | .platform_data = &zeus_mcp2515_pdata, |
427 | .irq = gpio_to_irq(ZEUS_CAN_GPIO), | 425 | .irq = gpio_to_irq(ZEUS_CAN_GPIO), |
428 | .max_speed_hz = 1*1000*1000, | 426 | .max_speed_hz = 1*1000*1000, |
diff --git a/arch/microblaze/include/asm/system.h b/arch/microblaze/include/asm/system.h index 59efb3fef957..48c4f0335e3f 100644 --- a/arch/microblaze/include/asm/system.h +++ b/arch/microblaze/include/asm/system.h | |||
@@ -12,6 +12,7 @@ | |||
12 | #include <asm/registers.h> | 12 | #include <asm/registers.h> |
13 | #include <asm/setup.h> | 13 | #include <asm/setup.h> |
14 | #include <asm/irqflags.h> | 14 | #include <asm/irqflags.h> |
15 | #include <asm/cache.h> | ||
15 | 16 | ||
16 | #include <asm-generic/cmpxchg.h> | 17 | #include <asm-generic/cmpxchg.h> |
17 | #include <asm-generic/cmpxchg-local.h> | 18 | #include <asm-generic/cmpxchg-local.h> |
@@ -96,4 +97,14 @@ extern struct dentry *of_debugfs_root; | |||
96 | 97 | ||
97 | #define arch_align_stack(x) (x) | 98 | #define arch_align_stack(x) (x) |
98 | 99 | ||
100 | /* | ||
101 | * MicroBlaze doesn't handle unaligned accesses in hardware. | ||
102 | * | ||
103 | * Based on this we force the IP header alignment in network drivers. | ||
104 | * We also modify NET_SKB_PAD to be a cacheline in size, thus maintaining | ||
105 | * cacheline alignment of buffers. | ||
106 | */ | ||
107 | #define NET_IP_ALIGN 2 | ||
108 | #define NET_SKB_PAD L1_CACHE_BYTES | ||
109 | |||
99 | #endif /* _ASM_MICROBLAZE_SYSTEM_H */ | 110 | #endif /* _ASM_MICROBLAZE_SYSTEM_H */ |
diff --git a/arch/mips/sibyte/swarm/platform.c b/arch/mips/sibyte/swarm/platform.c index 54847fe1e564..097335262fb3 100644 --- a/arch/mips/sibyte/swarm/platform.c +++ b/arch/mips/sibyte/swarm/platform.c | |||
@@ -83,3 +83,57 @@ static int __init swarm_pata_init(void) | |||
83 | device_initcall(swarm_pata_init); | 83 | device_initcall(swarm_pata_init); |
84 | 84 | ||
85 | #endif /* defined(CONFIG_SIBYTE_SWARM) || defined(CONFIG_SIBYTE_LITTLESUR) */ | 85 | #endif /* defined(CONFIG_SIBYTE_SWARM) || defined(CONFIG_SIBYTE_LITTLESUR) */ |
86 | |||
87 | #define sb1250_dev_struct(num) \ | ||
88 | static struct resource sb1250_res##num = { \ | ||
89 | .name = "SB1250 MAC " __stringify(num), \ | ||
90 | .flags = IORESOURCE_MEM, \ | ||
91 | .start = A_MAC_CHANNEL_BASE(num), \ | ||
92 | .end = A_MAC_CHANNEL_BASE(num + 1) -1, \ | ||
93 | };\ | ||
94 | static struct platform_device sb1250_dev##num = { \ | ||
95 | .name = "sb1250-mac", \ | ||
96 | .id = num, \ | ||
97 | .resource = &sb1250_res##num, \ | ||
98 | .num_resources = 1, \ | ||
99 | } | ||
100 | |||
101 | sb1250_dev_struct(0); | ||
102 | sb1250_dev_struct(1); | ||
103 | sb1250_dev_struct(2); | ||
104 | sb1250_dev_struct(3); | ||
105 | |||
106 | static struct platform_device *sb1250_devs[] __initdata = { | ||
107 | &sb1250_dev0, | ||
108 | &sb1250_dev1, | ||
109 | &sb1250_dev2, | ||
110 | &sb1250_dev3, | ||
111 | }; | ||
112 | |||
113 | static int __init sb1250_device_init(void) | ||
114 | { | ||
115 | int ret; | ||
116 | |||
117 | /* Set the number of available units based on the SOC type. */ | ||
118 | switch (soc_type) { | ||
119 | case K_SYS_SOC_TYPE_BCM1250: | ||
120 | case K_SYS_SOC_TYPE_BCM1250_ALT: | ||
121 | ret = platform_add_devices(sb1250_devs, 3); | ||
122 | break; | ||
123 | case K_SYS_SOC_TYPE_BCM1120: | ||
124 | case K_SYS_SOC_TYPE_BCM1125: | ||
125 | case K_SYS_SOC_TYPE_BCM1125H: | ||
126 | case K_SYS_SOC_TYPE_BCM1250_ALT2: /* Hybrid */ | ||
127 | ret = platform_add_devices(sb1250_devs, 2); | ||
128 | break; | ||
129 | case K_SYS_SOC_TYPE_BCM1x55: | ||
130 | case K_SYS_SOC_TYPE_BCM1x80: | ||
131 | ret = platform_add_devices(sb1250_devs, 4); | ||
132 | break; | ||
133 | default: | ||
134 | ret = -ENODEV; | ||
135 | break; | ||
136 | } | ||
137 | return ret; | ||
138 | } | ||
139 | device_initcall(sb1250_device_init); | ||