Installing Linux on a Jet Nature 790s

This page describes the installation of Debian 2.2 (potato) on a Jet Nature 790s laptop (sometimes also referred to as Memphis Nature 790s). Although some of the descriptions in here are Debian-specific, I hope this text is also useful for installing any other distribution.
Please email me any comments, corrections and suggestions you might have.

In case you are still deciding which notebook to buy for Linux, the Nature 790s is not a bad choice. In spite of some little problems, most components work quite well.
Here is a short summary for the impatient:

Device works?
Display perfectly
Touchpad/Keyboard perfectly
PCMCIA seems so (I do not own any PCMCIA-devices, but the modules are loaded)
Network perfectly
Audio yes
Modem yes
USB seems so (I do not own any USB-devices, but the modules are loaded)
IrDA yes (no FastIrDA)
APM not really well

The only drawback I found up to now is the quite high power consumption (approx. 26 W) causing the fan to run all the time. In spite of this, the power pack is strong enough to allow an operating time of almost three hours.

Before installation

The manual mentions an utility for creating an extra partition for suspend-to-disk, but since Memphis delivers this notebook without such a partition (and since I decided not to need suspend-to-disk), I did not create one (nevertheless, contributions to this are welcome :-).
If you do not want to do it during the installation, backup the harddisk, boot from CD and partition the disk according to your needs. In my case, it looks like this:

/dev/hda1 1 16 128488+ 82 Linux swap
/dev/hda2 17 208 1542240 83 Linux
/dev/hda3 * 209 400 1542240 b Win95 FAT32
/dev/hda4 401 1222 6602715 5 Extended
/dev/hda5 401 811 3301326 83 Linux
/dev/hda6 812 1222 3301326 83 Linux

Installation

The installation procedure should be perfectly equal to an installation on any other pc; you just may want to answer "no" when debian asks whether to remove the PCMCIA-support (maybe it is better to remove and later reinstall PCMCIA, see below).
Handling the CD drive is a little tricky; when the installation procedure asks you to insert the next CD, you should wait until the CD has spun up before hitting enter; otherwise, the drive may produce read errors.

X configuration

The 790s is equipped with a ATI Rage LT Pro, which xviddetect should recognize correctly. Then start anXious and enter the values for the hardware. These settings should work:

With these settings anXious generates a perfectly usable configfile.

Device configuration

PCMCIA

The PCMCIA-Controller is a O2 Micro OZ6832 (rev 53), driver module "i82365.o". Allowing this module to load automatically leads to an interrupt scan failure that locks up the complete system at the next bootup. The first time this happened to me was when I had finished the configuration of the network, thereby occupying the desired IRQ 10. In fact, Windows shares this IRQ between PCMCIA-controller, Network card, Modem and USB-controller.
As described in the PCMCIA-HOWTO, the solution is to either specify a line
PCIC_OPTS="do_scan=0" or
PCIC_OPTS="irq_list=10" in the file /etc/pcmcia.conf so that the complete file looks like this:
PCMCIA=yes
PCIC=i82365
PCIC_OPTS="irq_list=10"
CORE_OPTS=
CARDMGR_OPTS=

Normally, the file (without the needed option) is created automatically during the setup of the PCMCIA card services, but if it isn't there when the system wants to load the module, I recommend creating this file by hand as a hang during bootup may cause quite heavy filesystem corruption.
Currently I do not own any PCMCIA devices, so I actually do not know whether it really works, but since the modules are loaded correctly, I do not have much doubt about that.

Ethernet

The built-in DAVICOM 9102 PCI Fast Ethernet Adapter works with the kernel module "dmfe.o". Although it is marked as experimental, I have never had any problems with it. This module can also be loaded with modconf, but beforehand you should make sure to have the correct pcmcia.conf file in place (see above).

Audio

The audio chip is a C-Media/CMI CM8738/C3DX PCI Device (Soundblaster Pro compatible) that works with the module "cmpci.o". It can easily be loaded with modconf and should work immediately.
If you want to hear the modem dialtones, you need to recompile the kernel using the sources for the cmpci module found at http://members.home.net/puresoft/cmedia.html (this seems to be the homepage of an employee of c-media who programs the linux driver; the same driver is also located at http://www.cmedia.com.tw/).
In my case even after recompiling with the modem option enabled, I did not hear anything, but if you get it to work, please email me.
You will probably notice that the sound is not as loud and clear as it is when running Windows. Raising the DSP level (with an app like xmix) seems to help, but unfortunately after every startup the level is reduced to its default value. I did not invest much time in here; any suggestions are welcome.

Modem

The modem chip is a PCtel HSP56 MicroModem on COM3 that should work with one of the modules "pctel_hsp.o", "pctel_pci.o" or "hsp56".
At first, create a modem device as described in http://www.eastwind.com.au/pctel.htm and in the Linmodem-HOWTO:
su
mknod /dev/ttyS15 c 62 79
cd /dev
chgrp dialout ttyS15
chmod g+w ttyS15
ln -s ttyS15 modem

Then download the driver module "pctel.o" (this module is NOT included in the standard Debian distribution and its sources do not seem to be publicly available). As mentioned in the Linmodem-HOWTO, there are different pctel.o's for different kernel versions around (the modules for pre-2.2.15-kernels seem to be unusable with later kernel versions), so you probably have to try them out one by one.
The module that worked for me is the pctel_hsp.o module extracted out of a Corel Linux package for a 2.2.16 kernel, found at http://walbran.org/sean/linux/stodolsk/. As this module doesn't fit exactly with the kernel version (Debian has 2.2.17) it has to be loaded with insmod -f pctel_hsp.o. In order to disable the error messages and to make this module loadable with modconf it has to be treated with the fixscript found at the same source (make sure to adjust the module names in the script).
Other sources for pctel.o modules can be found on the winmodem page.
With the correct module version, seyon -modems /dev/ttyS15 should start up correctly, AND the terminal must be able to to send and receive commands; if it starts up, but doesn't show the letters typed in, you have the wrong one.
Although the modem works quite well, I experienced a strange problem: When connected, a rsync to a remote server almost always causes the connection to hang (the modem does not disconnect, but the laptop is unable to send or receive a single byte, so I have to disconnect and dial in again).

USB

Activating the USB controller (Intel 82371AB PIIX4 USB (rev 1)) requires the modules "usbcore.o" and "usb-uhci.o" which are part of Kernel 2.2.18 and up. Modconf should be able to load them without problems. Currently I do not own any USB devices, so I cannot say whether it really works.

Infrared

After enabling the second UART in the BIOS, Linux recognizes the infrared port as second serial port "ttyS01 at 0x02f8 (irq = 3) is a 16550A". The IR-port is specified as Fast-IR, but unfortunately I was not yet able to find out the type of the controller chip (SMC IRCC?). At normal speed it works without problems.
Here are two short descriptions for getting a PalmPilot(PalmIII/TRGpro) and a cellphone (Nokia 6210) to work:

Palm Pilot

Install the packages irda-common, pilot-link and jpilot.
Symlink /dev/pilot to /dev/ircommnew0 (this is usually done during the package setup or via pilotconfig).
Run modconf and load the driver modules irda, irtty, ircomm-tty and ircomm (located in the sections "net" and "misc").
Edit the file /etc/irda/drivers and replace the line irattach /dev/ttyS0 -d tekram with irattach /dev/ttyS1.
Either reboot or run irattach /dev/ttyS1 &. If ps ax shows you a running irattach on /dev/ttyS0, kill it beforehand.
Now you should be able to sync with e.g. pilot-xfer --sync /home/user/palm/.
To allow non-root users to sync, add them to an appropriate group, e.g. dialout, and do a chgrp dialout /dev/ircommnew0 and chmod g+w /dev/ircommnew0.

Nokia 6210

This section is not quite complete since I do not own the phone myself, but lent it from a colleague for just a few tests.
Install the package irda-common.
Run modconf and load the driver modules irda, irtty, ircomm-tty and ircomm (located in the sections "net" and "misc").
Edit the file /etc/irda/drivers and replace the line irattach /dev/ttyS0 -d tekram with irattach /dev/ttyS1.
Either reboot or run irattach /dev/ttyS1 &. If ps ax shows you a running irattach on /dev/ttyS0, kill it beforehand.
After executing irmanager -d 1 & the cellphone should appear in /proc/net/irda/discovery (don't forget to activate the phone's infrared link).
Run pppconfig with the following settings:

Now you should be able to dial by running pon. Probably, for using the phone as non-root user, you will have to adjust some device permissions and (maybe) add a line irmanager -d 1 somewhere in /etc/irda/ or /etc/init.d/.

APM

Well, this is the weak point... the 790s seems to be ACPI-compliant, but not really APM-compliant, so apm -s does not seem to have any effect at all, and apm -S just shuts off the fan, thereby reducing the power consumption by about 1 W.
Nevertheless it is useful to install apmd to get information about the battery status (e.g. icewm can be configured to show the battery status in the taskbar).
Maybe using the linux ACPI implementation would improve the situation, but since this would have required me to make major changes to the system, I did not spend much time on this up to now. If someone tries to play around with this, please email me.


this page last updated 2002-02-11