Intersil Prism 2/2.5/3 BeOS driver

Introduction

This driver manages IEEE 802.11b wireless network adapters based on the Intersil Prism 2/2.5/3 (HFA3841 and HFA3842 MAC processors).

Features

The driver allows the network card to act as a station of a BSS (Basic Service Set) linked to an access point or as a station of an IBBS (Independant Basic Service Set) in a peer to peer network without an access point.
The WEP (Wired Equivalent Privacy) is managed with keys of 40 or 104 bits for a global level of protection of 64 or 128 bits
It is recommended to update the firmware of the adapter for optimal operation.

Device support

PCI

Vendor and device identifiers supported by this driver are presented below. I may add more if needed.

1260:3872 Intersil Prism 3 Untested
1260:3873 Intersil Prism 2.5 Mini-PCI WLAN
167d:0a00 Samsung MagicLAN SWL-2210P Untested

PCMCIA

Manfids and versions supported by this driver are presented below.

0156, 0002 Belkin 11Mbps Wireless Notebook Network Adapter

PLX

Vendor and device identifiers supported by this driver are presented below. I may add more if needed.

1638:1100 Eumitcom Technology WP11000

Disclaimer

This driver is copyrighted © 2003, 2004 by Patrick Lafarguette. All Rights Reserved.
Some portions of code are copyrighted © by Be Incorporated.
No warranty.
Use at your own risk.

Installation

There is no need to install the add-on for using the driver with BONE or Zeta.

PCI

  1. Open the driver folder. Drag the file hfa384x in the folder named drop driver here.
  2. Create a link in the folder /boot/home/config/add-ons/kernel/drivers/dev/net to the driver named /boot/home/config/add-ons/kernel/drivers/bin/hfa384x.
  3. Go to parent folder.
  4. Open the add-on folder. Drag the file hfa384x in the folder named drop add-on here.
  5. Go to parent folder.
  6. Open the configuration folder. Drag the file hfa384x in the folder named drop configuration file here.
  7. Reboot. After reboot, you will see a new device in the Network preferences panel.
  8. Setup your device and restart networking.

PCMCIA

  1. Open the driver folder. Drag the file hfa384x_cs in the folder named drop driver here.
  2. Create a link in the folder /boot/home/config/add-ons/kernel/drivers/dev/net to the driver named /boot/home/config/add-ons/kernel/drivers/bin/hfa384x_cs.
  3. Go to parent folder.
  4. Open the add-on folder. Drag the file hfa384x_cs in the folder named drop add-on here.
  5. Go to parent folder.
  6. Open the configuration folder. Drag the file hfa384x_cs in the folder named drop configuration file here.
  7. Insert your network card in a PCMCIA socket.
  8. Open a terminal. Execute the command cardctl ident to get the informations needed for the configuration of the PCMCIA service :
    $ cardctl ident
    Socket 0:
      no product info available
    Socket 1:
      product info: "Belkin", "11Mbps Wireless Notebook Network Adapter", "Version 01.02", ""
      manfid: 0x0156, 0x0002
      function: 6 (network)
    
  9. Edit the file /boot/home/config/settings/drivers/pcmcia. Add the configuration informations to bind this kind of card to the driver :
    card { # PCMCIA Prism 2/2.5/3
    	manfid 0x0156 0x0002
    	bind hfa384x_cs
    }
  10. Edit the file /boot/beos/etc/pcmcia/ethernet. The application net_server must be relaunched when a PCMCIA network card is inserted or ejected. This script realizes this operation. It must be modified.

    Replace the line :
    if [ "$2x" != "/dev/net/etherpcmcias/0x" ]
    by
    if [ "$2x" != "/dev/net/hfa384x_cs/0x" ]
    At the end of the script, after the line :
    kill -9 net_server
    add the instructions
    sleep 1
    /system/boot/Netscript &
    
  11. Reboot. After reboot, insert the network card. You will see a new device in the Network preferences panel.
  12. Setup your device and restart networking.

PLX

  1. Open the driver folder. Drag the file hfa384x_plx in the folder named drop driver here.
  2. Create a link in the folder /boot/home/config/add-ons/kernel/drivers/dev/net to the driver named /boot/home/config/add-ons/kernel/drivers/bin/hfa384x_plx.
  3. Go to parent folder.
  4. Open the add-on folder. Drag the file hfa384x_plx in the folder named drop add-on here.
  5. Go to parent folder.
  6. Open the configuration folder. Drag the file hfa384x_plx in the folder named drop configuration file here.
  7. Reboot. After reboot, you will see a new device in the Network preferences panel.
  8. Setup your device and restart networking.

Configuration file

The configuration file is used to specify wireless settings.

mode Specify the kind of the wireless network. 0 for an IBSS, peer to peer network or 1 for a BSS, infrastructure network with an access point. The default value is 1.
channel Specify the radio channel to use. Possible values are from 1 to 14.
ssid Specify the name of the network to join or create. Up to 32 characters. If this value is not specified in BSS mode, the adapter can join all the existing networks.
privacy Specify if the frames are encrypted. 0 disable privacy. 1 enable WEP 64 bits and 2 enable WEP 128 bits. The default value is 0
key0,
key1,
key2,
key3
Define the four keys associated with WEP. A key is a succession of 5 or 13 ASCII characters according to the selected level of privacy.

Syslog

You can enable syslog output to get usefull debugging informations.

  1. Copy the file named /boot/home/config/settings/kernel/drivers/sample/kernel to /boot/home/config/settings/kernel/drivers/kernel.
  2. Edit this file and uncomment the line syslog_debug_ouput true.
  3. After reboot, the file named /var/log/syslog will receive debug informations from the driver.

Send me syslog file with your bugs reports.

Author

This driver is written by Patrick Lafarguette.
Fell free to email me for bug report or enhancement request.

History

Version 0.0.8 02/12/2004 PLX device support.
Configuration file for compatibility with Zeta.
Version 0.0.7 11/24/2003 IBSS mode support for peer to peer network.
WEP support for privacy. Keys of 40 and 104 bits are managed.
The device configuration is now realized by the add-on.
Version 0.0.6 11/17/2003 Improved performances.
Improved reliability.
Version 0.0.5 10/30/2003 First public release.
Basic support.