2010-01-30

追加Packageをインストールする

OpenSolaris dev b131 に追加Package をインストールする。

opensolaris.org
SUNWflexlex
SUNWhea
SUNWgccruntime
SUNWgcc
SUNWonbld
SUNWgm4
gcc-rintime-432
gcc-432
osnet
openoffice

extra
atok
firefox/plugin/flash
virtualbox

2010-01-24

Install Wireless Broadcom bcm4312 on OpenSolaris 2009.6

Install Wireless Broadcom bcm4312 on OpenSolaris 2009.6


汎用的な64bit環境での NDIS Wrapper のドライバインストールについて、こちらのサイトも非常によくまとめられているので紹介しておきます。
なお、32bit環境ではすべての手順が必要なわけではありません。

Solaris NDIS Wrapper Toolkit

以前に HP mini 1000 Vivienne Tam Edition に OpenSolaris インストールしてみようってのを書いてみた。
その後 OpenSolaris のデバイスドライバ周りもかなり充実してきた。
おかげで特につまづくこともなくなったのだけれど、あいかわらず WiFi(BCM43xx) はうまくない。やはり NDIS Wrapper を利用することになる。NDIS Wrapper のバージョンも上がり、具体的なドライバのビルド手順も紹介されているので、こちらを参照されたい。

Solaris NDIS Wrapper Toolkit
http://hub.opensolaris.org/bin/view/Community+Group+laptop/ndis

2010/01/24 現在の最新版は NDIS Wrapper Toolkit V1.2.5 となっており、snv_b125 以上のビルドではこの版数を使うとよい。


以下は個人環境でのインストールメモ

HP mini 1000 Vivienne Tam Edition (1140NR)
に搭載されているWi-Fiは、b131に標準ドライバがないため、
WindowsドライバをWrapperしてOpenSolarisで利用する。

ONビルドに必要なパッケージをインストールする
# pkg install SUNWonbld
# pkg install SUNWgcc
# pkg install SUNWhea
# pkg install SUNWflexlex
# pkg install SUNWgm4

最新のNDIS_Wrapper_Toolを入手する
--> OpenSolaris NDIS page

NDIS_Wrapper_Toolをダウンロードして
# wget http://hub.opensolaris.org/bin/download/Community+Group+laptop/downloads/ndis-1.2.5.tar.gz

展開して
# gzip -dc ndis-1.2.5.tar.gz | tar xvf -

Broadcom Corporation BCM4312 802.11b/g のWin32ドライバを入手する
Broadcomの最新のWin32ドライバVer-5.60.18.41(19 Nov 2009)
--> HP Support Site
 *注.最新ドライバを使うとb132環境ではカーネルパニックを起こすのでVer-7.00C(8 May 2008)のsp39243.exeを使うのが吉(2010/02/13修正)

Win32ドライバを展開して
# mv Bcm_wlan_drivers.exe Bcm_wlan_drivers.exe.7z
# p7zip -d Bcm_wlan_drivers.exe.7z

展開したWin32ドライバからsysファイルの名前を変えて、i386ディレクトリにコピー
# mv bcmwl5.sys ndis-1.2.5/i386/ndis.sys

infファイルの文字エンコードをasciに変換してファイル名を変える
# iconv -futf-16 -t ascii bcmwl5.inf > ndis-1.2.5/i386/ndis.inf
# cd ndis-1.2.5/i386

ndiscvのmakeとコンバート
# make ndiscvt
# ./ndiscvt -i ndis.inf -s ndis.sys -o ndis.h

bcmndisドライバのmakeと配置
# make ndis
# cp bcmndis /kernel/drv/bcmndis

ndisapiのmakeと配置
# make ndisapi
# cp ndisapi /kernel/misc

Wi-FiのNICを確認
# scanpci -v
結果
pci bus 0x0001 cardnum 0x00 function 0x00: vendor 0x14e4 device 0x4315
Broadcom Corporation BCM4312 802.11b/g
vendor 0x14e4 device 0x4315、を確認

wrapperドライバのインストール
# add_drv -i '"pci14e4,4315"' bcmndis

認識させる
# ifconfig bcmndis0 plumb

認識しなければ潔く再起動して
BOOT画面で以下表示されるのを確認
ndis_attach: Congratulations, Attached Okay!