Hi.
My problem is fairly straightforward to describe, but I'm stumped.
I'm trying to install Arch (using June's ISO) on an old iMac 5,1 and I've got the ISO to boot from USB (after a lot of difficulty owing to the 32-bit UEFI) but now I've hit an issue with the network card.
The output of lspci shows the card as a BCM4321 (PCI ID [14e4:4328]).
Code:
03:00.0 Network controller [0280]: Broadcom Inc. and subsidiaries BCM4321 802.11a/b/g/n [14e4:4328] (rev 03)
Subsystem: Apple Inc. AirPort Extreme [106b:0087]
Physical Slot: 1
Flags: bus master, fast devsel, latency 0, IRQ 17
Memory at c8200000 (64-bit, non-prefetchable) [size=16K]
Memory at c8000000 (64-bit, prefetchable) [size=1M]
Capabilities: [40] Power Management version 2
Capabilities: [58] Vendor Specific Information: Len=78 <?>
Capabilities: [e8] MSI: Enable- Count=1/1 Maskable- 64bit+
Capabilities: [d0] Express Endpoint, MSI 00
Capabilities: [100] Advanced Error Reporting
Capabilities: [13c] Virtual Channel
Capabilities: [160] Device Serial Number 94-a0-e3-ff-ff-e0-00-19
Capabilities: [16c] Power Budgeting <?>
Kernel driver in use: wl
Kernel modules: ssb, wl
According to
the Linux wireless page, this requires the wl driver. Fortunately, the wl module is included as standard with the Arch installation ISO.
The
Arch Linux documentation for Broadcom wireless cards says that when using wl, the b43 and ssb modules must be removed first, and that the lib80211 module should also be loaded if wl does not load it automatically.
And so I do the following.
First I remove all the wireless-related modules.
Code:
modprobe -r b43 ssb_hcd ssb wl
(I find I must remove ssb_hcd in order to remove ssb, and also remove wl.)
Then I re-load wl.
This brings up the network interface.
I now load the lib80211 module.
Finally I run Arch's wifi-menu script, which scans for wireless networks, prompts for a passphrase and writes a netctl profile for the connection.
I then check the output of iwconfig and ifconfig to verify that I have been given an IP address by the wireless access point.
iwconfig :
Code:
wlan0 IEEE 802.11 ESSID:"MyWifiNetwork"
Mode:Managed Frequency:2.432 GHz Access Point: E4:A7:C5:49:EA:63
Bit Rate=104 Mb/s Tx-Power=200 dBm
Retry short limit:7 RTS thr:off Fragment thr:off
Encryption key:off
Power Management:off
Link Quality=56/70 Signal level=-54 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0
ifconfig :
Code:
wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.0.103 netmask 255.255.255.0 broadcast 192.168.0.255
ether 00:19:e3:e0:94:a0 txqueuelen 1000 (Ethernet)
RX packets 9 bytes 1274 (1.2 KiB)
RX errors 0 dropped 0 overruns 0 frame 5724
TX packets 28 bytes 3066 (2.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 17
...All looks OK.
However...
When I then try to ping the router, very few packets reach their destination, and most are not received.
Code:
PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data.
64 bytes from 192.168.0.1: icmp_seq=5 ttl=64 time=233 ms
From 192.168.0.103 icmp_seq=10 Destination Host Unreachable
From 192.168.0.103 icmp_seq=11 Destination Host Unreachable
From 192.168.0.103 icmp_seq=12 Destination Host Unreachable
64 bytes from 192.168.0.1: icmp_seq=13 ttl=64 time=1249 ms
64 bytes from 192.168.0.1: icmp_seq=22 ttl=64 time=217 ms
64 bytes from 192.168.0.1: icmp_seq=23 ttl=64 time=15.5 ms
^C
--- 192.168.0.1 ping statistics ---
24 packets transmitted, 4 received, +3 errors, 83.3333% packet loss, time 23264ms
rtt min/avg/max/mdev = 15.539/428.600/1248.892/481.288 ms, pipe 4
Anyone have any ideas?
Thanks...