Linux on a Gateway Solo 3350

Hardware

Gateway Solo 3350 package (130 KB)

In July 2000 I got a Gateway Solo 3350 with:

Here are some of the reports from /proc:

==> cpuinfo <==
processor     : 0
vendor_id     : GenuineIntel
cpu family    : 6
model         : 8
model name    : Pentium III (Coppermine)
stepping      : 10
cpu MHz       : 696.984
cache size    : 256 KB
fdiv_bug      : no
hlt_bug       : no
f00f_bug      : no
coma_bug      : no
fpu           : yes
fpu_exception : yes
cpuid level   : 2
wp            : yes
flags         : fpu vme de pse tsc msr pae mce cx8 sep mtrr pge mca cmov pat pse36 mmx fxsr sse
bogomips      : 1389.36


==> dma <==
 4: cascade

==> meminfo <==
	total:    used:    free:  shared: buffers:  cached:
Mem:  262459392 254242816  8216576        0 22462464 150933504
Swap: 254971904 14811136 240160768
MemTotal:       256308 kB
MemFree:          8024 kB
MemShared:           0 kB
Buffers:         21936 kB
Cached:         146488 kB
SwapCached:        908 kB
Active:          64192 kB
Inactive:       139204 kB
HighTotal:           0 kB
HighFree:            0 kB
LowTotal:       256308 kB
LowFree:          8024 kB
SwapTotal:      248996 kB
SwapFree:       234532 kB

==> version <==
Linux version 2.4.22 (jrv@talon) (gcc version 3.3.1 20030728 (Debian prerelease)) #2 Sat Sep 6 17:05:13 EDT 2003
    

Here is the IDE identification information for the hard disk:

talon:~# hdparm -I /dev/hda

/dev/hda:

ATA device, with non-removable media
	Model Number:       TOSHIBA MK2016GAP                       
	Serial Number:      61H35997T           
	Firmware Revision:  U0.30 A 
Standards:
	Supported: 5 4 3 2 
	Likely used: 6
Configuration:
	Logical		max	current
	cylinders	16383	16383
	heads		16	16
	sectors/track	63	63
	--
	CHS current addressable sectors:   16514064
	LBA    user addressable sectors:   39070080
	device size with M = 1024*1024:       19077 MBytes
	device size with M = 1000*1000:       20003 MBytes (20 GB)
Capabilities:
	LBA, IORDY(can be disabled)
	bytes avail on r/w long: 46	Queue depth: 1
	Standby timer values: spec'd by Vendor, with device specific minimum
	R/W multiple sector transfer: Max = 16	Current = 16
	Advanced power management level: unknown setting (0x0080)
	DMA: sdma0 sdma1 sdma2 mdma0 mdma1 mdma2 udma0 udma1 *udma2 udma3 udma4 
	     Cycle time: min=120ns recommended=120ns
	PIO: pio0 pio1 pio2 pio3 pio4 
	     Cycle time: no flow control=120ns  IORDY flow control=120ns
Commands/features:
	Enabled	Supported:
	   *	NOP cmd
	   *	READ BUFFER cmd
	   *	WRITE BUFFER cmd
	   *	Host Protected Area feature set
	   *	Look-ahead
	   *	Write cache
	   *	Power Management feature set
		Security Mode feature set
	   *	SMART feature set
		SET MAX security extension
	   *	Advanced Power Management feature set
Security: 
	Master password revision code = 65534
		supported
	not	enabled
	not	locked
	not	frozen
	not	expired: security count
	not	supported: enhanced erase
	30min for SECURITY ERASE UNIT. 
HW reset results:
	CBLID- above Vih
	Device num = 0 determined by the jumper
Checksum: correct
    

Here is what lspci reports on the PCI bus:

$ lspci
00:00.0 Host bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 03)
00:01.0 PCI bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 03)
00:07.0 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ISA (rev 02)
00:07.1 IDE interface: Intel Corp. 82371AB/EB/MB PIIX4 IDE (rev 01)
00:07.2 USB Controller: Intel Corp. 82371AB/EB/MB PIIX4 USB (rev 01)
00:07.3 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ACPI (rev 03)
00:09.0 Multimedia audio controller: ESS Technology ES1988 Allegro-1 (rev 12)
00:09.1 Communication controller: ESS Technology ESS Modem (rev 12)
00:0a.0 CardBus bridge: Texas Instruments PCI1410 PC card Cardbus Controller (rev 01)
00:0d.0 Ethernet controller: 3Com Corporation 3c905C-TX/TX-M [Tornado] (rev 78)
01:00.0 VGA compatible controller: ATI Technologies Inc Rage Mobility P/M AGP 2x (rev 64)
    

In BIOS setup, I configured the machine to "suspend" when the display is closed. This makes for one less thing to think about when packing in a hurry - so I don't pull it out of my backpack two hours later and find it's been running (hot) all that time. It automatically comes out of suspension when the display is opened again.

Linux Installation

I was confident I could get Linux installed, because I had already seen a report by Stefan Müller-Stach on the Gateway Solo 3100/3150.

Windows ME came installed in a single FAT32 partition. Under Windows, I selected start|settings|control panel|add & remove programs|system disk and created a boot floppy, then loaded FIPS version 2.0 onto it. I booted from that floppy and used FIPS to save a copy of the partition table then split the FAT32 partition into one of 15798 MB and a second of 3263 MB. Still under DOS, I ran c:SCANDISK which scanned the shortened c: disk and found no problems. I then booted Windows ME which came up normally.

I then booted the first Debian 2.1 installation CDROM and installed the base system. Eventually I realized I had left the FAT32 partition far too large, so I installed Partition Magic to shrink the FAT32 partition, then move and enlarge the ext2 partition. Here's how the disk is partitioned now:

talon:~# fdisk -l

Disk /dev/hda: 20.0 GB, 20003880960 bytes
255 heads, 63 sectors/track, 2432 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot    Start       End    Blocks   Id  System
/dev/hda1   *         1       850   6827593+   b  Win95 FAT32
/dev/hda2           851       881    249007+  82  Linux swap
/dev/hda3           882      2432  12458407+  83  Linux
    

To use the built-in network adapter, the kernel must be configured for "3c590/3c900 series (592/595/597) "Vortex/Boomerang" support".

I have XFree86 4.2.1 installed. Here is the XF86Config-4, a boot log, and an xdpyinfo report.

Stefan Müller-Stach reported that he had not gotten the Winmodem to work under Linux, so I assumed I would use a PC Card modem instead. (Now I see Stefan Müller-Stach and a few others report getting their ESS Winmodems running under Linux, so I'll have to investigate that again.)

Unfortunately, I have never gotten the PC Card slot to work either - for any device. That's been my biggest disappointment. (The machine was out of warranty by the time I finally gave up on the PC Card slot.) Here's the current status:

I'm running a 2.4.22 kernel with pcmcia support compiled as modules. These modules are loaded:

talon:~ $ lsmod
Module                  Size  Used by    Not tainted
ds                      6452   1
yenta_socket            9952   1
pcmcia_core            39616   0 [ds yenta_socket]
acm                     5760   0 (unused)
      

Here are the cardmgr options:

talon:~# grep -v ^# /etc/pcmcia/config.opts

include port 0x100-0x4ff, port 0x800-0x8ff, port 0xc00-0xcff
include memory 0xc0000-0xfffff
include memory 0xa0000000-0xa0ffffff, memory 0x60000000-0x60ffffff


include port 0xa00-0xaff


exclude irq 4
exclude irq 7
      

If I restart it, I get these console messages:

talon:~# /etc/init.d/pcmcia restart
Shutting down PCMCIA services: done.
Starting PCMCIA services: using yenta_socket instead of i82365
cardmgr[10787]: watching 1 socket
done.
    

and these log entries:

Dec  6 11:37:46 talon kernel: Socket status: 30000006
Dec  6 11:37:46 talon kernel: cs: IO port probe 0x0c00-0x0cff: clean.
Dec  6 11:37:46 talon kernel: cs: IO port probe 0x0800-0x08ff: clean.
Dec  6 11:37:46 talon kernel: cs: IO port probe 0x0100-0x04ff: excluding 0x170-0x177 0x370-0x37f 0x398-0x39f 0x4d0-0x4d7
Dec  6 11:37:46 talon kernel: cs: IO port probe 0x0a00-0x0aff: clean.
    

With no card inserted, cardctl reports:

talon:~# cardctl status
Socket 0:
  no card
talon:~# cardctl ident
Socket 0:
  no product info available
      

Everything I have several PCMCIA cards. When I plug in an Olympus model

I have several PCMCIA cards. When I plug in an Olympus model MA-2E PC Card adaptor for SmartMedia cards (with an SM card plugged in), I get no beeps, but a log entry like this:

talon:~# tail /var/log/kern.log
Dec  6 09:56:26 talon kernel: cs: socket cf831800 timed out during reset.  Try increasing setup_delay.
      

While the SM adaptor is inserted, cardctl reports like this:

talon:~# cardctl status
Socket 0:
  5V 16-bit PC Card
  function 0: [busy]
talon:~# cardctl ident
Socket 0:
  no product info available
      

When I eject the SM adaptor, I get a single beep (high).

I get the "socket timed out" message when loading the ds module if the SM adaptor is already inserted (i.e. the message comes when the ds module is loaded or when a card is inserted, whichever is last).

The message comes from the function unreset_socket(), in the file drivers/pcmcia/cs.c, in the kernel sources. setup_delay is a command line option for pcmcia_core, and defaults to 5. Installing pcmcia_core manually with setup_delay=20, 50, 100, 200, 500, 1000, 2000, or even 5000 doesn't help.

pcmcia_core has other adjustable parameters. I tried increasing several of them by up to a factor of 10:

Parameter Default ×4 ×10
setup_delay 5 20 50
resume_delay 20 100 200
shutdown_delay 5 20 50
vcc_settle 40 200 500
reset_time 10 50 100
unreset_delay 10 50 100
unreset_check 10 50 100

...giving much longer delays, but the same log entry.

I also have a Megahertz modem card, model XJ1144. When I plug it in immediately after restarting cardmgr, I get this console message:

cs: memory probe 0xa0000000-0xa0ffffff:
      

The machine then freezes. There's no response to any key, and in X there's no cursor. After I eject the card, I get three beeps (mid <pause> low-high) and these log entries:

Dec  6 11:37:53 talon kernel: cs: memory probe 0xa0000000-0xa0ffffff: excluding 0xa0000000-0xa0ffffff
Dec  6 11:37:53 talon kernel: cs: memory probe 0x60000000-0x60ffffff: excluding 0x60000000-0x60ffffff
Dec  6 11:37:53 talon kernel: cs: warning: no high memory space available!
Dec  6 11:37:53 talon kernel: cs: memory probe 0x0d0000-0x0dffff: excluding 0xd0000-0xdffff
Dec  6 11:37:53 talon kernel: cs: memory probe 0x0c0000-0x0cffff: excluding 0xc0000-0xcffff
      

I also have a Linksys Ethernet card, model EC2T. When I plug it in, I get two beeps (mid-low), but no log entries. cardctl reports:

talon:~# cardctl status
Socket 0:
  5V 16-bit PC Card
  function 0: [ready], [wp]
talon:~# cardctl ident
Socket 0:
  no product info available
      

When I eject the Ethernet card, I get a single beep (high).

All these cards have worked in other machines.

In the mean time, I've been concentrating on the USB port instead. I have a USB adaptor for the SmartMedia cards from my digital camera, and a Zoom 2985L USB modem. Here are the relevant kernel config options:

CONFIG_USB=y
CONFIG_USB_DEBUG=y
CONFIG_USB_DEVICEFS=y
CONFIG_USB_BANDWIDTH=y
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_UHCI=y
CONFIG_USB_OHCI=y
CONFIG_USB_STORAGE=y
CONFIG_USB_STORAGE_DEBUG=y
CONFIG_USB_ACM=m
CONFIG_USB_SCANNER=m
CONFIG_SCSI=y
CONFIG_BLK_DEV_IDESCSI=y
      

The last two are needed to access USB flash memory devices, because they're treated like SCSI disks.

The machine runs Linux reliably. However, I have gotten into the habit of looking for a paper clip before booting Windows, because it crashes so often and doesn't always obey the power switch.

(Recently, I read the suggestion of leaving 50 MB or so of unallocated space after the Windows partition, in case a Windows tool does not respect the partition boundary. That's probably a good idea, and all I need to do is shrink the swap partition a little. That might avoid some of the problems.)

Experience

It took me a while to figure out:

Annoyances


Send comments, questions, suggestions to: Jim Van Zandt <jrvz at comcast dot net>

DISCLAIMER: There is no guarantee that the information on this page is accurate. I have no connection to Gateway other than as a customer. For official information, see the Gateway site, in particular the Solo 3350 specifications and system overview.


home

Last modified: 2003-11-30

Valid HTML 4.01!