Ndiswrapper

From Gentoo Linux Wiki

Jump to: navigation, search

Contents

[edit] Introduction

Ndiswrapper is an utility for allowing drivers using NDIS (a Microsoft driver interface) to run on Linux (and other UNIX-like operating systems). This has allowed many closed-source proprietary Windows drivers to be supported on Linux.

Note: Currently, only Windows XP and 2000 drivers are supported. Vista drivers are not, since Microsoft changed versions of the NDIS interface.

[edit] Installation

Ndiswrapper is in the portage tree under net-wireless/ndiswrapper. It can be installed with emerge:

emerge -av ndiswrapper

Once installed, the two pieces of ndiswrapper will need to be set up separately.

[edit] The Windows Drivers

Windows drivers will need to be installed into ndiswrapper before they can be used. This is done with the ndiswrapper utility.

The windows drivers should consist of two files in the same directory: a .SYS and a .INF. It is the second one which you pass as an argument to the utilty:

ndiswrapper -i /mnt/cdrom/drivers/Win2k/RT2500.INF

The files necessary will be copied to /etc automatically.

[edit] The Kernel Module

Note: These instructions are for a 2.6 kernel. Support for ndiswrapper for 2.4 kernels is unclear.

Half of ndiswrapper is a kernel module. Once the drivers have been installed, this kernel module will need to be loaded at boot time. This is most easily done by setting it up to auto-load:

File: /etc/modules.autoload.d/kernel-2.6
ndiswrapper

[edit] Troubleshooting and Module Conflicts

For some cards, linux drivers are available, but proprietary drivers may be more reliable or provide more functionality. In these cases, failures of card detection are often the result of the linux driver and the ndiswrapper module fighting for control of the device in the kernel.

The simplest way to see if there is already a device driver loaded is to use the lspci command:

lspci -k

This will result in a listing of devices. If there is a kernel module loaded for that device, then it will need to be blacklisted:

File: /etc/modules.d/blacklist
blacklist rt2500
Make sure that you either reboot or run
update-modules
before trying again.
Personal tools