From 1e8440230203a5fc840f5a3cd6d95f0254f9a822 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Colin=20G=C3=BCnther?= Date: Thu, 31 Dec 2009 20:39:27 +0000 Subject: [PATCH] * Adjusting firmware path of Haiku's native Intel PRO/Wireless 2100 driver, so that it can make use of the firmware installed by the OptionalPackage Wifi-ipw2100+fw. * Updating OptionalPackages to use the latest Wifi-ipw2100+fw package. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34833 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- build/jam/OptionalPackages | 12 +++++++----- .../drivers/network/wlan/ipw2100/ipw2100.cpp | 18 ++++++++++++++---- 2 files changed, 21 insertions(+), 9 deletions(-) diff --git a/build/jam/OptionalPackages b/build/jam/OptionalPackages index 5ae41482f7..7a1357a2f5 100644 --- a/build/jam/OptionalPackages +++ b/build/jam/OptionalPackages @@ -1012,27 +1012,29 @@ if [ IsOptionalHaikuImagePackageAdded Welcome ] { : /boot/system/documentation/userguide/en/contents.html : User\ Guide ; } + # Wifi-ipw2100+fw if [ IsOptionalHaikuImagePackageAdded Wifi-ipw2100+fw ] { if $(TARGET_ARCH) != x86 { Echo "No optional package Wifi-ipw2100+fw available for $(TARGET_ARCH)" ; } else { - AddDriversToHaikuImage net : ipw2100 ; - InstallOptionalHaikuImagePackage ipw2100-firmware-installer-2009-12-26 - : $(baseURL)/ipw2100-firmware-installer-2009-12-26.zip + AddDriversToHaikuImage net : ipw2100 ; + InstallOptionalHaikuImagePackage ipw2100-firmware-installer-2009-12-26b + : $(baseURL)/ipw2100-firmware-installer-2009-12-26b.zip : ; AddSymlinkToHaikuImage home config boot launch - : /boot/common/bin/install_firmware_iprowifi2100 ; + : /boot/common/bin/install_firmware_ipw2100 ; } } + # Wifi-iprowifi2200+fw if [ IsOptionalHaikuImagePackageAdded Wifi-iprowifi2200+fw ] { if $(TARGET_ARCH) != x86 { Echo "No optional package Wifi-iprowifi2200+fw available for $(TARGET_ARCH)" ; } else { - AddDriversToHaikuImage net : iprowifi2200 ; + AddDriversToHaikuImage net : iprowifi2200 ; InstallOptionalHaikuImagePackage iprowifi2200-firmware-installer-2009-12-26 : $(baseURL)/iprowifi2200-firmware-installer-2009-12-26.zip : diff --git a/src/add-ons/kernel/drivers/network/wlan/ipw2100/ipw2100.cpp b/src/add-ons/kernel/drivers/network/wlan/ipw2100/ipw2100.cpp index 64780ab8c7..4af2847705 100644 --- a/src/add-ons/kernel/drivers/network/wlan/ipw2100/ipw2100.cpp +++ b/src/add-ons/kernel/drivers/network/wlan/ipw2100/ipw2100.cpp @@ -1160,10 +1160,20 @@ IPW2100::LoadMicrocodeAndFirmware() { const char *firmware; switch (fMode) { - case IPW_MODE_BSS: firmware = "/etc/firmware/ipw2100/ipw2100-1.3.fw"; break; - case IPW_MODE_IBSS: firmware = "/etc/firmware/ipw2100/ipw2100-1.3-i.fw"; break; - case IPW_MODE_MONITOR: firmware = "/etc/firmware/ipw2100/ipw2100-1.3-p.fw"; break; - default: return B_BAD_VALUE; + case IPW_MODE_BSS: + firmware = "/system/data/firmware/ipw2100/ipw_bss"; + break; + + case IPW_MODE_IBSS: + firmware = "/system/data/firmware/ipw2100/ipw_ibss"; + break; + + case IPW_MODE_MONITOR: + firmware = "/system/data/firmware/ipw2100/ipw_monitor"; + break; + + default: + return B_BAD_VALUE; } TRACE_ALWAYS(("IPW2100: loading firmware %s\n", firmware));