Ubuntu 14.04가 설치된 Dell Vostro 1510에서 BCM4312 기반 WLAN 카드가 작동하지 않습니다.

Ubuntu 14.04가 설치된 Dell Vostro 1510에서 BCM4312 기반 WLAN 카드가 작동하지 않습니다.

STA 독점 드라이버를 사용하면 Ubuntu 13.08에서 모든 것이 잘 작동했습니다. Ubuntu 경고 메시지가 계속 표시되면서 무선 회로가 더 이상 응답하지 않는 것을 확인하기 위해 Ubuntu 14.04로 업그레이드하기로 결정했습니다. BCM4312 칩셋과 호환되는 것으로 간주되는 4개의 커널 모듈을 모두 시도했지만 그 중 아무 것도 작동하지 않았습니다.

최후의 수단으로 나는 64비트 아키텍처용 Broadcom(BCM 4312 칩셋에 해당)에서 제공하는 최신 소스 코드를 다운로드하기로 결정했습니다. 컴파일이 작동하려면 파일 시스템의 일부 세부 사항을 변경해야 했습니다. 컴파일에서는 심각한 경고가 표시되지 않았지만 "insmod" 명령을 사용하여 컴파일된 결과 드라이버를 커널에 삽입하려고 할 때 "format" 오류로 인해 치명적인 오류가 나타났습니다. "modprobe"를 사용하려고 했는데 오류 메시지가 표시되지 않았지만 네트워크 기능을 여전히 사용할 수 없고 lscpi 명령 출력에 Broadcom 무선 네트워크 컨트롤러에 연결된 커널 드라이버가 표시되지 않았기 때문에 분명히 실패한 것 같습니다.

LSCPI 명령 출력(관련 없는 텍스트 잘림):

... 06:00.0 네트워크 컨트롤러 [0280]: Broadcom Corporation BCM4312 802.11b/g LP-PHY [14e4:4315] (rev 01) 하위 시스템: Dell Wireless 1395 WLAN Mini-Card [1028:000b] 플래그: 버스 마스터, 빠른 개발, 대기 시간 0, IRQ 11 f4000000의 메모리(64비트, 프리페치 불가) [크기=16K] 기능: [40] 전원 관리 버전 3 기능: [58] 공급업체별 정보: Len=78 기능: [e8 ] MSI: 활성화- 카운트=1/1 마스크 가능- 64비트+ 기능: [d0] Express 엔드포인트, MSI 00 기능: [100] 고급 오류 보고 기능: [13c] 가상 채널 기능: [160] 장치 일련 번호 1b-bf- 44-ff-ff-db-00-16 기능: [16c] 전력 예산

07:00.0 이더넷 컨트롤러 [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 02) 하위 시스템: Dell Device [1028:0273] 플래그: 버스 마스터, 고속 devsel, 대기 시간 0, IRQ 44 I/O 포트 5000 [크기=256] f8610000의 메모리(64비트, 프리페치 가능) [크기=4K] f8600000의 메모리(64비트, 프리페치 가능) [크기=64K] [가상 ] f8620000의 확장 ROM [비활성화됨] [size=64K] 기능: [40] 전원 관리 버전 3 기능: [50] MSI: 활성화+ 개수=1/2 마스크 가능- 64비트+ 기능: [70] Express Endpoint, MSI 01 기능: [b0] MSI-X: Enable- Count=2 Masked- 기능: [d0] 필수 제품 데이터 기능: [100] 고급 오류 보고 기능: [140] 가상 채널 기능: [160] 장치 일련 번호 00-00-00 -00-00-00-00-00 사용 중인 커널 드라이버: r8169 .... "

"insmod wl.ko" 명령을 실행했을 때 발생한 실제 오류 메시지는 다음과 같습니다. "잘못된 모듈 형식"

wl.ko는 Broadcom에서 제공한 드라이버 소스 코드를 편집하여 얻은 파일입니다.


다음 명령을 사용하여 커널 드라이버를 제거했습니다(시스템에서 설치/사용했는지 의심되더라도).

 apt-get purge bcmwl-kernel-source

(그런 다음 터미널에는 펌웨어-bc43-설치 프로그램이 복구되었거나 설치를 위해 다운로드되었다는 메시지가 표시되었습니다)

그런 다음 명령을 입력하여 STA 드라이버를 설치했습니다.

apt-get install linux-firmware-nonfree

/etc/modprobe.d/blacklist.conf 파일을 확인하고 해당 줄의 주석 처리를 제거했습니다.블랙리스트 bcm43xx, 무선 장치/드라이버와 관련된 유일한 것입니다.

그런 다음 재부팅했습니다.

이제 여전히 개선이 없습니다.

# lspci -v |grep -13 Network

    I/O ports at 18e0 [size=32]
    Memory at f8500000 (32-bit, non-prefetchable) [size=2K]
    Capabilities: [80] MSI: Enable+ Count=1/4 Maskable- 64bit-
    Capabilities: [70] Power Management version 3
    Capabilities: [a8] SATA HBA v1.0
    Kernel driver in use: ahci

00:1f.3 SMBus: Intel Corporation 82801H (ICH8 Family) SMBus Controller (rev 03)
    Subsystem: Dell Device 0273
    Flags: medium devsel, IRQ 10
    Memory at c0500000 (32-bit, non-prefetchable) [size=256]
    I/O ports at 1c20 [size=32]

06:00.0 Network controller: Broadcom Corporation BCM4312 802.11b/g LP-PHY (rev 01)
    Subsystem: Dell Wireless 1395 WLAN Mini-Card
    Flags: bus master, fast devsel, latency 0, IRQ 11
    Memory at f4000000 (64-bit, non-prefetchable) [size=16K]
    Capabilities: [40] Power Management version 3
    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 1b-bf-44-ff-ff-db-00-16
    Capabilities: [16c] Power Budgeting <?>

07:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 02)

#lshw 

...
*-pci:2
             description: PCI bridge
             product: 82801H (ICH8 Family) PCI Express Port 4
             vendor: Intel Corporation
             physical id: 1c.3
             bus info: pci@0000:00:1c.3
             version: 03
             width: 32 bits
             clock: 33MHz
             capabilities: pci pciexpress msi pm normal_decode bus_master cap_list
             configuration: driver=pcieport
             resources: irq:42 ioport:4000(size=4096) memory:f4000000-f7ffffff ioport:fc000000(size=33554432)
           *-network UNCLAIMED
                description: Network controller
                product: BCM4312 802.11b/g LP-PHY
                vendor: Broadcom Corporation
                physical id: 0
                bus info: pci@0000:06:00.0
                version: 01
                width: 64 bits
                clock: 33MHz
                capabilities: pm msi pciexpress bus_master cap_list
                configuration: latency=0
                resources: memory:f4000000-f4003fff
...


# lsmod

Module                  Size  Used by
zram                   18439  2 
dm_crypt               22924  1 
coretemp               13355  0 
dell_wmi               12681  0 
sparse_keymap          13890  1 dell_wmi
dell_laptop            17369  0 
dcdbas                 14397  1 dell_laptop
uvcvideo               80847  0 
videobuf2_vmalloc      13056  1 uvcvideo
videobuf2_memops       13202  1 videobuf2_vmalloc
videobuf2_core         40542  1 uvcvideo
videodev              129379  2 uvcvideo,videobuf2_core
microcode              22939  0 
joydev                 17377  0 
serio_raw              13215  0 
lpc_ich                17061  0 
parport_pc             28152  0 
ppdev                  17073  0 
lp                     17759  0 
parport                46345  3 lp,ppdev,parport_pc
mac_hid                13205  0 
psmouse                95934  0 
ahci                   25731  2 
libahci                31394  1 ahci
sdhci_pci              18619  0 
firewire_ohci          40315  0 
sdhci                  32686  1 sdhci_pci
r8169                  67706  0 
firewire_core          64566  1 firewire_ohci
i915                  605700  3 
crc_itu_t              12707  1 firewire_core
i2c_algo_bit           13413  1 i915
drm_kms_helper         49394  1 i915
drm                   286260  4 i915,drm_kms_helper
wmi                    19070  1 dell_wmi
video                  19390  1 i915

답변1

4312 Broadcom [4315]는 다음에 따라 b43 드라이버 또는 독점 STA(wl) 드라이버를 사용할 수 있습니다.b43-리눅스 무선. b43 드라이버는 기본적으로 존재하지만 독점 펌웨어를 설치해야 합니다. 이는 linux-firmware-nonfree 패키지를 설치하여 수행할 수 있습니다. 어떤 이유로 펌웨어가 [4315]에서 작동하지 않는 경우 언급한 b43 커터 및 설치 프로그램 패키지를 실행할 수 있습니다. 최종 결과는 /lib/firmware/b43 디렉토리에 있는 펌웨어 파일 세트여야 합니다. /etc의 모든 파일에서 "blacklist b43" 줄을 사용하여 b43 드라이버를 억제하지 않는 경우 Wireless는 다음 부팅 시 드라이버를 선택해야 합니다. /modprobe.d. 그러한 줄을 확인하고 주석 처리하십시오. STA 패키지 파일을 제거하는 경우 제거해야 하지만 확실하게 확인하려면 직접 확인하십시오.

최근에 STA 드라이버를 사용해본 경험이 없지만, 추가 드라이버 대시 선택을 사용하면 STA 드라이버가 추가됩니다(유선 연결에 있는 경우). 이 경우 펌웨어 파일은 STA 드라이버 자체에 포함되어 있으므로(b43 커터가 해당 파일을 가져오는 곳) 펌웨어 파일이 필요하지 않습니다.

관련 정보