Next Previous Contents

## 4. Kernel and hard stuff

## 4.1 Kernel configuration

Like I said earlier, the options I'll give come from the 2.3.99pre6 kernel. If everything is not exactly the same, I think that taking a good guess should help ;)

** Reminder : [] stands for Yes/No options, and <> stands for Yes/No/Module **

First of all, you have to enable the experimental code :

Code Maturity level options --->

[*] Prompt for development and/or incomplete code/drivers

If you don't, you won't have access to some of the drivers.

Then, move on to the USB section.

USB support --->

<*> Support for USB

[*] USB verbose debug messages

--- Miscellaneous USB options

[*] Preliminary USB device filesystem

With this option, you'll activate the new features of the /dev/usb/* (which, of course, you'll have to create : to be seen later)

--- USB controllers

<*> UHCI (Intel PIIX4, VIA, ...) support

< > OHCI (Compaq, iMacs, OPTi, SiS, ALi, ...) support

You must choose one of these, and only one. So, if one doesn't work, then choose the other. Chances are that, if you use an x86 system, you'll take the UHCI driver.

--- USB Devices

< > USB Printer support

< > USB Scanner support

< > USB Audio support

< > USB Modem (CDC ACM) support

If you have one of these, feel free to activate the options

<M> USB Serial Converter support

This options must be activated for the Wacom tablet to work.

[*] USB Generic Serial Driver

[ ] USB Handspring Visor Driver

[ ] USB ConnectTech WhiteHEAT Serial Driver (EXPERIMENTAL)

[ ] USB FTDI Single Port Serial Driver (EXPERIMENTAL)

[ ] USB Keyspan PDA Single Port Serial Driver (EXPERIMENTAL)

[ ] USB ZyXEL omni.net LCD Plus Driver (EXPERIMENTAL)

[*] USB Serial Converter verbose debug

If you want to have all the messages (which can be very helpful in the beginning). When satisfied with the functionning, you can deactivate it.

< > USB Kodak DC-2xx Camera support

< > USB Mustek MDC800 Digital Camera support (EXPERIMENTAL)

< > USB Mass Storage support (EXPERIMENTAL)

< > USS720 parport driver

< > DABUSB driver

< > PLUSB Prolific USB-Network driver (EXPERIMENTAL)

< > USB ADMtek Pegasus-based device support (EXPERIMENTAL)

< > USB Diamond Rio500 support (EXPERIMENTAL)

--- USB HID

The HID is kinda the interface between you and your devices, so you MUST activate it.

<M> USB Human Interface Device (HID) support

< > USB HIDBP Keyboard support

< > USB HIDBP Mouse support

<M> Wacom Intuos/Graphire tablet support

There we go, the Wacom support should be activated (unless you read this just for fun ;) )

< > Logitech WingMan Force joystick support

< > Keyboard support

<M> Mouse support

To be activated to use the Wacom Intuos/Graphire mouse

(1024) Horizontal screen resolution

(768) Vertical screen resolution

<M > Joystick support

<M> Event interface support

## 4.2 Kernel compilation

Now the easy stuff :

When you exit the configuration do as they say

make dep bzImage modules modules_install

Type it just like this and the computer will run all the steps one after the other.

Then copy the file bzImage to /boot, copy the System.map to /boot, edit your lilo.conf to point to your new kernel and type /sbin/lilo at the prompt.

** Of course all of this (kernel config, kernel compilation and lilo tweaking must be done as root) **

## 4.3 Before rebooting

### FStab

If you want to avoid error messages at the next reboot, you'll have to do the following :

Edit the file /etc/fstab and add the following lines

none /proc/bus/usb usbdevfs defaults 0 0

This one is to activate the usb device filesystem

none /var/shm shm defaults 0 0

This one is because of a change in the shared memory stuff in the kernel.

### USB related devices

Next, if you want to be able to use the USB :

mkdir /dev/input

mknod /dev/input/mouse0 c 13 32

This will activate the mouse support

mknod /dev/input/event0 c 13 64

mknod /dev/input/event1 c 13 65

mknod /dev/input/event2 c 13 66

mknod /dev/input/event3 c 13 67

These will activate the stylus : moves, pressure, button and eraser.

### Modules configuration

Edit the file /etc/modules.conf and add the following line :

alias char-major-13 usbcore

### What I did next

Next I added in the /etc/rc.d/boot.local file (remember, I use a SuSE distribution, but you should fine an equivalent for RedHat in /etc/rc.d/init.d/boot.local or /etc/rc.d/init.d/rc.local)

/sbin/modprobe wacom

/sbin/modprobe mousedev

/sbin/modprobe evdev

Just to be sure the modules will load at boot time.

### Last but not least

Reboot ;)

Check your boot messages (dmesg | less), and see if there are no errors related to USB. It may be because you've chosen UHCI and your system is an OHCI one.

On my system, the following messages are shown :

.....

.....

usb.c: registered new driver usbdevfs

usb.c: registered new driver hub

usb-uhci.c: $Revision: 1.9 $ time 17:54:28 May 8 2000

usb-uhci.c: High bandwidth mode enabled

usb-uhci.c: Intel USB controller: setting latency timer to 0

usb-uhci.c: USB UHCI at I/O 0xffe0, IRQ 11

usb-uhci.c: Detected 2 ports

usb.c: new USB bus registered, assigned bus number 1

usb.c: USB new device connect, assigned device number 1

usb.c: kmalloc IF c3fcd2e0, numif 1

usb.c: new device strings: Mfr=0, Product=2, SerialNumber=1

usb.c: USB device number 1 default language ID 0x0

Product: USB UHCI Root Hub

SerialNumber: ffe0

hub.c: USB hub found

hub.c: 2 ports detected

hub.c: ganged power switching

hub.c: standalone hub

hub.c: global over-current protection

hub.c: power on to power good time: 2ms

hub.c: hub controller current requirement: 0mA

hub.c: port 1 is removable

hub.c: port 2 is removable

hub.c: local power source is good

hub.c: no over-current condition exists

hub.c: enabling power on all ports

usb.c: hub driver claimed interface c3fcd2e0

.....

.....

hub.c: port 1 connection change

usb.c: USB new device connect, assigned device number 2

usb.c: kmalloc IF c3fcd620, numif 1

usb.c: skipped 1 class/vendor specific interface descriptors

usb.c: new device strings: Mfr=1, Product=2, SerialNumber=0

usb.c: USB device number 2 default language ID 0x409

Manufacturer: WACOM

Product: ET-0405-UV1.1-1

usb.c: unhandled interfaces on device

usb.c: This device is not recognized by any installed USB driver.

Length = 18

DescriptorType = 01

USB version = 1.00

Vendor:Product = 056a:0010

MaxPacketSize0 = 0

NumConfigurations =1

Device Version = 1.11

Device Class:SubClass:Protocol = 00:00:00

Per-interface classes

Configuration:

.....

.....

When the kernel says "This device is not recognized by any installed USB driver", it's because, at boot time, the wacom module is not yet loaded. But as you can see, the whole USB bus and interfaces are recognized. So if your system doesn't work and doesn't have such messages, try to check if you haven't forgotten an USB option (something I indicated to be put in the kernel and that you put as a module : if it's the case, in the /etc/rc.d/init.d/boot.local, put the necessary modprobe BEFORE the 3 lines I indicated, for example /sbin/modprobe usb-uhci).

When the wacom module loads, here are the messages :

.....

.....

usb.c: registered new driver wacom

input0: Wacom Graphire on usb2

usb.c: wacom driver claimed interface c3fcd620

mouse0: PS/2 mouse device for input0

mice: PS/2 mouse device common for all mice

event0: Event device for input0

.....

.....

Retry and check everything until you get all these messages (or corresponding ones).

Next Previous Contents