2001-11-06 17:07:41

by John Summerfield

[permalink] [raw]
Subject: Olivetti hangs in PCI initialisation



It's bizarre. The machine boots okay with the Red Hat Linux bootnet
image for RHL 7.2, and starts running the installer - the the point of
configuring my network card.

It was hanging at the point where I saw the message "PCI: Using
configuration type 1."

There aren't many places that message comes from so I decorated the
area with the odd printk and so nothing.

I booted it in another machine - no worries and there were my messages.

So I added another, and now I have this code:

/*
* Check if configuration type 1 works.
*/
if (pci_probe & PCI_PROBE_CONF1) {
outb (0x01, 0xCFB);
tmp = inl (0xCF8);
outl (0x80000000, 0xCF8);
if (inl (0xCF8) == 0x80000000 &&
pci_sanity_check(&pci_direct_conf1)) {
outl (tmp, 0xCF8);
__restore_flags(flags);
printk("JCS-/:\n");
printk("PCI: Using configuration type 1\n");
printk("JCS-0:\n");
request_region(0xCF8, 8, "PCI conf1");
printk("JCS-1:\n");
return &pci_direct_conf1;
}
outl (tmp, 0xCF8);
printk("JCS-2:\n");
}


The last message I see is "JCS-/:."

I verified that there's nothing that is drawn off-screen and as best I
can tell that's it.

The self-same disk boots fine in my pentium II.

the machine with the problem is an Olivetti desktop; it has "xana
53-133" on the front.

CPU is a Pentium 133, BIOS (a very nice AMI one; looks like Windows 3.1
and uses the mouse) is dated Jul 95.

Other than a 3COM 3c59x (boomerang) NIC I don't have much idea what's
inside it.

There's Linux based on RHL 6.2 and a 2.0.36 kernel on it and that runs
(but I can't get in).

Tom's root boot disk 1.7.212 doesn't.

It does not exactly lock uo - I can still twiddle the keyboard lights,
but the only way to reboot is to cycle power.


I'm building my kernel from 2.4.13 source.

Here's the configuration:

CONFIG_X86=y
CONFIG_ISA=y
CONFIG_UID16=y
CONFIG_EXPERIMENTAL=y
CONFIG_MODULES=y
CONFIG_KMOD=y
CONFIG_M586=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_CMPXCHG=y
CONFIG_X86_XADD=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_X86_L1_CACHE_SHIFT=5
CONFIG_X86_USE_STRING_486=y
CONFIG_X86_ALIGNMENT_16=y
CONFIG_X86_MSR=y
CONFIG_NOHIGHMEM=y
CONFIG_MTRR=y
CONFIG_X86_UP_APIC=y
CONFIG_X86_UP_IOAPIC=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y
CONFIG_NET=y
CONFIG_PCI=y
CONFIG_PCI_GOANY=y
CONFIG_PCI_BIOS=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_NAMES=y
CONFIG_SYSVIPC=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_SYSCTL=y
CONFIG_KCORE_ELF=y
CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=y
CONFIG_PM=y
CONFIG_ACPI=y
CONFIG_ACPI_BUSMGR=y
CONFIG_ACPI_SYS=y
CONFIG_ACPI_CPU=y
CONFIG_ACPI_BUTTON=y
CONFIG_ACPI_AC=y
CONFIG_ACPI_EC=y
CONFIG_ACPI_THERMAL=y
CONFIG_PNP=y
CONFIG_ISAPNP=y
CONFIG_BLK_DEV_FD=y
CONFIG_BLK_DEV_LOOP=m
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=4096
CONFIG_BLK_DEV_INITRD=y
CONFIG_UNIX=y
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_PNP=y
CONFIG_IP_PNP_DHCP=y
CONFIG_IP_PNP_BOOTP=y
CONFIG_IP_PNP_RARP=y
CONFIG_BRIDGE=y
CONFIG_IDE=y
CONFIG_BLK_DEV_IDE=y
CONFIG_BLK_DEV_IDEDISK=y
CONFIG_IDEDISK_MULTI_MODE=y
CONFIG_BLK_DEV_CMD640=y
CONFIG_BLK_DEV_CMD640_ENHANCED=y
CONFIG_BLK_DEV_ISAPNP=y
CONFIG_BLK_DEV_RZ1000=y
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_IDEPCI_SHARE_IRQ=y
CONFIG_BLK_DEV_IDEDMA_PCI=y
CONFIG_BLK_DEV_ADMA=y
CONFIG_IDEDMA_PCI_AUTO=y
CONFIG_BLK_DEV_IDEDMA=y
CONFIG_BLK_DEV_AEC62XX=y
CONFIG_AEC62XX_TUNING=y
CONFIG_BLK_DEV_ALI15X3=y
CONFIG_WDC_ALI15X3=y
CONFIG_BLK_DEV_AMD74XX=y
CONFIG_BLK_DEV_CMD64X=y
CONFIG_BLK_DEV_CY82C693=y
CONFIG_BLK_DEV_CS5530=y
CONFIG_BLK_DEV_HPT34X=y
CONFIG_BLK_DEV_HPT366=y
CONFIG_BLK_DEV_PIIX=y
CONFIG_PIIX_TUNING=y
CONFIG_BLK_DEV_NS87415=y
CONFIG_BLK_DEV_OPTI621=y
CONFIG_BLK_DEV_PDC202XX=y
CONFIG_PDC202XX_BURST=y
CONFIG_PDC202XX_FORCE=y
CONFIG_BLK_DEV_SVWKS=y
CONFIG_BLK_DEV_SIS5513=y
CONFIG_BLK_DEV_SLC90E66=y
CONFIG_BLK_DEV_TRM290=y
CONFIG_BLK_DEV_VIA82CXXX=y
CONFIG_IDE_CHIPSETS=y
CONFIG_BLK_DEV_4DRIVES=y
CONFIG_BLK_DEV_ALI14XX=y
CONFIG_BLK_DEV_DTC2278=y
CONFIG_BLK_DEV_HT6560B=y
CONFIG_BLK_DEV_PDC4030=y
CONFIG_BLK_DEV_QD65XX=y
CONFIG_IDEDMA_AUTO=y
CONFIG_IDEDMA_IVB=y
CONFIG_BLK_DEV_IDE_MODES=y
CONFIG_BLK_DEV_ATARAID=m
CONFIG_BLK_DEV_ATARAID_PDC=m
CONFIG_BLK_DEV_ATARAID_HPT=m
CONFIG_NETDEVICES=y
CONFIG_DUMMY=m
CONFIG_NET_ETHERNET=y
CONFIG_NET_VENDOR_3COM=y
CONFIG_VORTEX=y
CONFIG_NET_PCI=y
CONFIG_8139TOO=y
CONFIG_INPUT=y
CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1280
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=1024
CONFIG_INPUT_EVDEV=y
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_SERIAL=y
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
CONFIG_BUSMOUSE=m
CONFIG_ATIXL_BUSMOUSE=m
CONFIG_LOGIBUSMOUSE=m
CONFIG_MS_BUSMOUSE=m
CONFIG_MOUSE=y
CONFIG_PSMOUSE=y
CONFIG_AGP=m
CONFIG_DRM=y
CONFIG_DRM_TDFX=m
CONFIG_DRM_GAMMA=m
CONFIG_DRM_R128=m
CONFIG_DRM_RADEON=m
CONFIG_DRM_I810=m
CONFIG_DRM_MGA=m
CONFIG_AUTOFS_FS=y
CONFIG_AUTOFS4_FS=y
CONFIG_FAT_FS=m
CONFIG_MSDOS_FS=m
CONFIG_UMSDOS_FS=m
CONFIG_VFAT_FS=m
CONFIG_TMPFS=y
CONFIG_ISO9660_FS=m
CONFIG_JOLIET=y
CONFIG_MINIX_FS=m
CONFIG_PROC_FS=y
CONFIG_DEVPTS_FS=y
CONFIG_EXT2_FS=y
CONFIG_UFS_FS=m
CONFIG_NFS_FS=y
CONFIG_NFS_V3=y
CONFIG_ROOT_NFS=y
CONFIG_SUNRPC=y
CONFIG_LOCKD=y
CONFIG_LOCKD_V4=y
CONFIG_SMB_FS=m
CONFIG_MSDOS_PARTITION=y
CONFIG_SMB_NLS=y
CONFIG_NLS=y
CONFIG_NLS_DEFAULT="iso8859-1"
CONFIG_NLS_CODEPAGE_437=m
CONFIG_NLS_CODEPAGE_850=m
CONFIG_NLS_ISO8859_1=m
CONFIG_VGA_CONSOLE=y
CONFIG_VIDEO_SELECT=y
CONFIG_FB=y
CONFIG_DUMMY_CONSOLE=y
CONFIG_FB_RIVA=m
CONFIG_FB_CLGEN=m
CONFIG_FB_PM2=m
CONFIG_FB_VESA=y
CONFIG_FB_VGA16=m
CONFIG_FB_HGA=m
CONFIG_VIDEO_SELECT=y
CONFIG_FB_MATROX=m
CONFIG_FB_MATROX_MILLENIUM=y
CONFIG_FB_MATROX_MYSTIQUE=y
CONFIG_FB_MATROX_G100=y
CONFIG_FB_MATROX_G450=m
CONFIG_FB_ATY=m
CONFIG_FB_ATY_GX=y
CONFIG_FB_ATY_CT=y
CONFIG_FB_RADEON=m
CONFIG_FB_ATY128=m
CONFIG_FB_SIS=m
CONFIG_FB_SIS_300=y
CONFIG_FB_SIS_315=y
CONFIG_FB_3DFX=m
CONFIG_FB_VOODOO1=m
CONFIG_FBCON_ADVANCED=y
CONFIG_FBCON_MFB=m
CONFIG_FBCON_CFB8=y
CONFIG_FBCON_CFB16=y
CONFIG_FBCON_CFB24=y
CONFIG_FBCON_CFB32=y
CONFIG_FBCON_VGA_PLANES=m
CONFIG_FBCON_HGA=m
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y
CONFIG_USB=y
CONFIG_USB_DEVICEFS=y
CONFIG_USB_UHCI=m
CONFIG_USB_UHCI_ALT=m
CONFIG_USB_OHCI=m
CONFIG_USB_BLUETOOTH=m
CONFIG_USB_PRINTER=m
CONFIG_USB_HID=m
CONFIG_USB_HIDDEV=y
CONFIG_USB_KBD=m
CONFIG_USB_MOUSE=m
CONFIG_USB_WACOM=m


Perhaps tomorrow I will try the Red Hat source, but I really would like
to have this work.

Any ideas?


--
Cheers
John Summerfield

Microsoft's most solid OS: http://www.geocities.com/rcwoolley/

Note: mail delivered to me is deemed to be intended for me, for my
disposition.




--
Cheers
John Summerfield

Microsoft's most solid OS: http://www.geocities.com/rcwoolley/

Note: mail delivered to me is deemed to be intended for me, for my
disposition.




2001-11-06 18:39:49

by Rasmus Andersen

[permalink] [raw]
Subject: Re: Olivetti hangs in PCI initialisation

On Wed, Nov 07, 2001 at 01:06:11AM +0800, John Summerfield wrote:
>
>
> It's bizarre. The machine boots okay with the Red Hat Linux bootnet
> image for RHL 7.2, and starts running the installer - the the point of
> configuring my network card.
>
> It was hanging at the point where I saw the message "PCI: Using
> configuration type 1."

Hi.

Some time ago I had an old Pentium Olivetti die on me during boot
in pci-country. I could work around that with the boot parameter
'pci=conf1'. You seem to die in conf1. Maybe you should try out
conf2 and see what happens?
--
Rasmus([email protected])

intoxicated, adj.: When you feel sophisticated without being able to
pronounce it.

2001-11-06 19:27:49

by John Summerfield

[permalink] [raw]
Subject: Re: Olivetti hangs in PCI initialisation

> On Wed, Nov 07, 2001 at 01:06:11AM +0800, John Summerfield wrote:
> >
> >
> > It's bizarre. The machine boots okay with the Red Hat Linux bootnet
> > image for RHL 7.2, and starts running the installer - the the point of
> > configuring my network card.
> >
> > It was hanging at the point where I saw the message "PCI: Using
> > configuration type 1."
>
> Hi.
>
> Some time ago I had an old Pentium Olivetti die on me during boot
> in pci-country. I could work around that with the boot parameter
> 'pci=conf1'. You seem to die in conf1. Maybe you should try out
> conf2 and see what happens?
>

An interesting idea. I didn't expect it to change anything - it doesn't
look as if it's examining hardware at the critical moment, but then
who's going to say the printed info appears on the terminal before it
progresses to the next statement?

Well it went on and hung in ISAPnP checking.


I deleted the syslinux messages and got even further.

It sounds less bizarre now - it seems it can't scroll, but what next?

It's found the internal sound card and attached (bizarre - why does
that word keep coming up) internal modem attached to the sound card.


--
Cheers
John Summerfield

Microsoft's most solid OS: http://www.geocities.com/rcwoolley/

Note: mail delivered to me is deemed to be intended for me, for my
disposition.



2001-11-07 01:35:45

by John Summerfield

[permalink] [raw]
Subject: Re: Olivetti hangs in PCI initialisation

>
> --9amGYk9869ThD9tj
> Content-Type: text/plain; charset=us-ascii
> Content-Disposition: inline
>
> Hello,
>
> I've just read your messages on linux-kernel about your problems with an
> Olivetti PC. I had similar problems with my PC (which is an Olivetti
> Modulo): it hanged on boot and the screen got black (this part is different).
>
> Then it died.
>
> I've found that my problem was caused by some lines in setup.S. Given
> that your problem has the same cause I'm attaching a patch which worked
> for me.
>

It was worth a try, but it had no effect that I could see.

>From other efforts it seems the problem may actually be connected with scrolling and it happens to be in the PCI detection code at the time the need arises.


--
Cheers
John Summerfield

Microsoft's most solid OS: http://www.geocities.com/rcwoolley/

Note: mail delivered to me is deemed to be intended for me, for my disposition.