Ok, I drug the old Premio out from under the bed and gave it a whirl using the Slackware 10.1 bare.i bootdisks. With that disk, without any changes except I changed it to output to a serial console so I could copy/paste the below, as expected, I got the below kernel panic:
Code:
Uniform Multi-Platform E-IDE driver Revision: 7.00beta4-2.4
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
SIS5513: IDE controller at PCI slot 00:01.1
SIS5513: chipset revision 9
SIS5513: not 100% native mode: will probe irqs later
SIS5513: SiS551x ATA 16 controller
ide0: BM-DMA at 0x4000-0x4007, BIOS settings: hda:pio, hdb:pio
SIS5513: simplex device: DMA disabled
ide1: SIS5513 Bus-Master DMA disabled (BIOS)
hda: WDC AC2850F, ATA DISK drive
hdc: ST3491A-XR, ATA DISK drive
hdd: CD-ROM CDU77E, ATAPI CD/DVD-ROM drive
Unable to handle kernel NULL pointer dereference at virtual address 00000000
printing eip:
00000000
*pde = 00000000
Oops: 0000
CPU: 0
EIP: 0010:[<00000000>] Not tainted
EFLAGS: 00010282
eax: 0000000b ebx: 00000003 ecx: 80000944 edx: 00000003
esi: 00000003 edi: c03ad7f4 ebp: c03ad8a4 esp: c1051f38
ds: 0018 es: 0018 ss: 0018
Process swapper (pid: 1, stackpage=c1051000)
Stack: c0200128 c03ad8a4 00b400f0 00000001 0b3ad9e0 00000003 00000003 c03ad8a4
0004e000 c01fc940 c03ad8a4 0000000b c03ad8a4 00000001 c03ad7f4 c0209ba8
c03ad8a4 000000ff c03ad7f4 c03afa94 00000001 c020a7b6 c03ad7f4 00000001
Call Trace: [<c0200128>] [<c01fc940>] [<c0209ba8>] [<c020a7b6>] [<c0105000>]
[<c0105000>] [<c0105067>] [<c01072a3>] [<c0105060>]
Code: Bad EIP value.
<0>Kernel panic: Attempted to kill init!
So, I recompiled the bare.i kernel disabling the compiled in SIS5513 driver, ie I changed it to load as a module. Here's how I built the kernel using the config from the bare.i bootdisk.
Code:
tar jxvf linux-2.4.29.tar.bz2
cd linux-2.4.29
make mrproper
mount /mnt/floppy
cp /mnt/floppy/config .config
make menuconfig
As stated above, all I changed was this and exited the kernel configuration:
Code:
ATA/IDE/MFM/RLL support --->
IDE, ATA and ATAPI Block devices --->
<M> SiS5513 chipset support
Then I built the kernel:
Code:
make dep
make bzImage
cp arch/i386/boot/bzImage /mnt/floppy/vmlinuz
cp System.map /mnt/floppy/
cp .config /mnt/floppy/config
umount /mnt/floppy
That should get you past the bug. The problem is the
inclusion of the sis5513 in the kernel, not the exclusion of. Also with the bootdisk, if you type anything at the
boot: prompt, then you'll need to re-add the root=x option and some others, because the syslinux.cfg file on it is setup in such a way that those options don't get passed if you speficify others. This is likely the reason for your problem in your last post. In other words, if you want to change or add boot options, then pas the entire line modified as needed, like so:
Code:
vmlinuz ramdisk_size=7000 root=/dev/fd0u1440 vga=normal rw SLACK_KERNEL=bare.i
Else you can use "ramdisk" instead of "vmlinux" and all the above will be automatically appended.
Now, that should get you booted to this prompt:
Code:
VFS: Insert root floppy and press ENTER
Here it is requesting the install.1 disk. But, always a but. :) If you want to use the SIS5513 driver during the install, you'll need to add it to that image as well. It may work without it. It worked fine accessing my hard disks (one at primary master, the other at secondary master) but wouldn't work with the CDROM. But neither would the sis5513 driver, so the drive may be shot, don't recall. But anyway, it's no big deal to add it if you want. To do that, first build the modules, from the kernel source tree run:
Now we need to install them, but we don't want to trample on any 2.4.29 kernel we already have installed, so install them like this:
Code:
make INSTALL_MOD_PATH=/lib/modules/custom modules_install
That will install the modules as well as setup them up, in /lib/modules/custom. You can package that up in a tarball and use it instead of the Slackware modules package if you want. The SIS5513 module is NOT in Slackware's default package, so you'll either need to package these and install them or rebuild your kernel once you're up and running. You could also probably just grab the /lib/modules/custom/lib/modules/2.4.29/kernel/drivers/ide/pci/sis5513.o module, add it to the modules Slackware installs, and rerun depmod after your up and running. That's only if you're using a Slackware 10.1 system to build these on though. Simpliest way is probably to rebuild the kernel once up and going. Anyway, I'll show you how to add it to the disk.
Grab the install.1 file, decompress and mount it:
Code:
gunzip -S .1 install.1
mkdir /mnt/loop
mount -o loop install /mnt/loop
Now copy the module and module.dep to it:
Code:
mkdir -p /mnt/loop/lib/modules/2.4.29/kernel/drivers/ide/pci
cp /lib/modules/custom/lib/modules/2.4.29/kernel/drivers/ide/pci/sis5513.o > /mnt/loop/lib/modules/2.4.29/kernel/drivers/ide/pci/
cp /lib/modules/custom/lib/modules/2.4.29/modules.dep /mnt/loop/lib/modules/2.4.29/
umount /mnt/loop
gzip -S .1 install
Now write the new image to a disk, as well as install.2:
Code:
cat install.1 > /dev/fd0
--- Insert a 3rd disk ---
cat install.2 > /dev/fd0
If you want to use that module during the install, then just do a "modprobe sis5513" before entering "setup". Anyway, as I said above using the sis5513 driver as a module instead of compiled into the kernel eliminated the kernel panic. I still wasn't able to access the CDROM though, but it has always been troublesome and may have finally keeled over. I don't use the sis5513 driver at all, module or otherwise, and haven't had any problems except for the CDROM. Anyway, goodluck.