web-dev-qa-db-ja.com

OpenBSDでBroadcomワイヤレスBCM4313を有効にする方法は?

この特定のBroadcomWirelessをOpenBSDで動作させるためのハック/ヒント/トリックはありますか?

いくつかのFreeBSD-wirelessスレッドとOpenBSD-tech/OpenBSD-miscを掘り下げた後、この特定のデバイスはBroadcom4312またはBroadcom4318と比較してハードウェア構造に違いがあるため、特定のドライバーにPCIベンダーを追加しても機能しないことに気付きました。

このBroadcomWirelessドライバーの実装には多大な労力が必要であり、多くのユーザーはWi-Fiドングルを使用するか、ndis(Windows XP version)ドライバーを変換してワイヤレス接続を取得しています。

OpenBSDでndisを有効にするパッチがインターネット上に浮かんでいるので、FreeBSDで使用されているような回避策としてこのドライバーを「変換」できますか?

EDIT1-ここでの意図は、「FreeBSDに固執する」ことでも、OpenBSDバイナリポリシーに疑問を呈することでもありません。そのため、私はガイダンスを探しています。 OpenBSDへのndisの3番目の部分の移植は解決策かもしれません...

  • このスレッド は、PCIベンダーIDを追加するとハードウェアがプローブされるだけで、機能しないことを示しています。
  • この他のスレッド 、bcm4313カードのさまざまな構造についての洞察を提供します。
4
user34720

私も同じ質問をしましたが、ここにある既存の回答とコメントは少し参考にならないことがわかりました。もう少し調査を行い、IRCについて質問したところ、より実用的な答えが見つかりました。

Broadcomは、最近アプローチを変更していますが、これまでオープンソースドライバーへの取り組みにあまり協力していませんでした。このため、信頼性の高いオープンソースドライバがないBroadcomワイヤレスカードがまだいくつかありますが、多くのオペレーティングシステムではサポートされていません。 一般的なOSがサポートするワイヤレスカードをリストした優れたウィキペディアの記事 があります。

サポートされていないカード(私たちのような)を持っている人にとっての問題は、 モノリシックカーネル ほとんどのnix OSのように、デバイスドライバがカーネルの一部であるということです。このため、カーネルがコンパイルされている場合にのみインストールできます。

したがって、tl; drは、このワイヤレスカードをサポートするドライバ(たとえば、FreeBSDから)を取得して、カーネルにコンパイルする必要があるということです。これは、多くのコンパイル時間と潜在的な頭痛の種を意味します。実際には、インストールする前にオペレーティングシステム自体を構築しています。または、安価なUSBワイヤレスアダプターを10ドル未満で購入することもできます。最初にサポートされていることを確認してください。

2
Mike

NDISがOpenBSDの一部になることは決してありません。これはOpenBSDポリシー(バイナリブロブ)に反します。

BCM4313はpcidevsにあります http://www.openbsd.org/cgi-bin/cvsweb/src/sys/dev/pci/pcidevs?rev=1.1696

product BROADCOM BCM4313    0x4727  BCM4313

本当にやってみましたか?

気になるのが特定のデバイスのサポートだけである場合は、FreeBSDを使い続ける方がよいでしょう。

2
jirib