SSF support that works.

Fix a crash.
origin
solomon 2004-01-27 16:22:16 +00:00
parent 3def27155a
commit 5d3f8fced9
5 changed files with 17 additions and 16 deletions

View File

@ -66,6 +66,7 @@ install:
mkdir -p $(TARGET_ROOT_ON_HOST)/etc/wlan
cp shared.prism2 $(TARGET_ROOT_ON_HOST)/etc/wlan
mkdir -p $(TARGET_ROOT_ON_HOST)$(FIRMWARE_DIR)
cp *pda $(TARGET_ROOT_ON_HOST)$(FIRMWARE_DIR)
for x in *.hex ; do \
if [ -f "$$x" ] ; then \
cp $$x $(TARGET_ROOT_ON_HOST)$(FIRMWARE_DIR)/prism2_`echo $$x | cut -c1-2`.hex ; \

View File

@ -122,6 +122,7 @@ dev_link_t *prism2sta_attach(void)
/* Initialize the hw struct for now */
hfa384x_create(hw, 0, 0, NULL);
hw->wlandev = wlandev;
/* Initialize the device private data stucture. */
hw->cs_link = link;

View File

@ -919,18 +919,7 @@ UINT32 prism2sta_ifstate(wlandevice_t *wlandev, UINT32 ifstate)
* for firmware loading.
*/
#if (WLAN_HOSTIF != WLAN_USB)
if ((result=hfa384x_cmd_initialize(hw))) {
#if 0
// we don't care if this fails.
WLAN_LOG_ERROR(
"hfa384x_cmd_initialize() failed,"
"result=%d\n", (int)result);
result =
P80211ENUM_resultcode_implementation_failure;
wlandev->msdstate = WLAN_MSD_HWPRESENT;
break;
#endif
}
result=hfa384x_cmd_initialize(hw);
#else
if ((result=hfa384x_drvr_start(hw))) {
WLAN_LOG_ERROR(
@ -946,7 +935,7 @@ UINT32 prism2sta_ifstate(wlandevice_t *wlandev, UINT32 ifstate)
result = P80211ENUM_resultcode_success;
break;
case WLAN_MSD_FWLOAD:
/* Do nothing, we're already in this state.*/
hfa384x_cmd_initialize(hw);
result = P80211ENUM_resultcode_success;
break;
case WLAN_MSD_RUNNING:

12
src/prism2/prism2_ssf.pda Normal file
View File

@ -0,0 +1,12 @@
; Minimal PDA file to get SSF cards operating.
; (PDR 0002) PDA Version Record
; Version 8
2 0002 0008
; NIC hardware description
2 0400 0001 ; PE pcmcia, x8 RAM
;2 0400 0003 ; PE pcmcia, x16 RAM
;2 0400 0005 ; PE pci, x8 RAM
;2 0400 0007 ; PE pci, x16 RAM

View File

@ -77,9 +77,7 @@ prism2_fwload ()
;;
*)
$ECHO "Unknown prism2 hardware type $HARDWARE, assuming SSF"
$PRISM2DL -r $FIRMWARE_DIR/prism2_pm.hex -p $FIRMWARE_DIR/37200mss.pda
sleep 2
$WLANCTL $1 lnxreq_ifstate ifstate=fwload
$PRISM2DL -r -p $FIRMWARE_DIR/prism2_ssf.pda $FIRMWARE_DIR/prism2_pm.hex
sleep 2
$PRISM2DL -r $FIRMWARE_DIR/prism2_pm.hex -r $FIRMWARE_DIR/prism2_rf.hex $1
;;