Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 76811 - Kernel doesn't compile with CONFIG_BLK_DEV_OPTI621=y
Summary: Kernel doesn't compile with CONFIG_BLK_DEV_OPTI621=y
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: kernel
Version: 7.3
Hardware: i586
OS: Linux
Target Milestone: ---
Assignee: Arjan van de Ven
QA Contact: Brian Brock
Depends On:
TreeView+ depends on / blocked
Reported: 2002-10-27 07:01 UTC by Juha Saarinen
Modified: 2007-03-27 03:58 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2003-06-08 19:24:35 UTC

Attachments (Terms of Use)
patch to opti621.c from kernel source 2.4.18-26.7.x so it compiles (deleted)
2003-03-07 10:40 UTC, Steffen Kluge
no flags Details | Diff

Description Juha Saarinen 2002-10-27 07:01:18 UTC
From Bugzilla Helper:
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 

Description of problem:
See summary; Alan Cox says "it builds in the base kernel and in my kernel". 
I've tried building a 2.4.18-17.7 kernel on two different systems, but the 
compilation bombs out if you add the driver for OPTi 621x. 

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1.make menuconfig or config or whatever
2.ensure that you have CONFIG_BLK_DEV_OPTI621=y in .config
3.make dep && make bzImage

Actual Results:  make[3]: Entering directory `/usr/src/linux-2.4.18-
gcc -D__KERNEL__ -I/usr/src/linux-2.4.18-17.7.x/include -Wall -Wstrict-
prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-
pointer -pipe -mpreferred-stack-boundary=2 -march=i586   -nostdinc -
I /usr/lib/gcc-lib/i386-redhat-linux/2.96/include -DKBUILD_BASENAME=opti621  -
c -o opti621.o opti621.c
opti621.c: In function `fixup_device_opti621':
opti621.c:326: dereferencing pointer to incomplete type
opti621.c:326: `PCI_DEVICE_ID_OPTI_82C558' undeclared (first use in this 
opti621.c:326: (Each undeclared identifier is reported only once
opti621.c:326: for each function it appears in.)
opti621.c:327: warning: implicit declaration of function `PCI_FUNC'
opti621.c:327: dereferencing pointer to incomplete type
opti621.c:332: dereferencing pointer to incomplete type
opti621.c:332: dereferencing pointer to incomplete type
make[3]: *** [opti621.o] Error 1
make[3]: Leaving directory `/usr/src/linux-2.4.18-17.7.x/drivers/ide'
make[2]: *** [first_rule] Error 2
make[2]: Leaving directory `/usr/src/linux-2.4.18-17.7.x/drivers/ide'
make[1]: *** [_subdir_ide] Error 2
make[1]: Leaving directory `/usr/src/linux-2.4.18-17.7.x/drivers'
make: *** [_dir_drivers] Error 2

Expected Results:  A beautiful new kernel of the highest order.

Additional info:

The OPTi driver isn't compiled into the standard kernel:

Uniform Multi-Platform E-IDE driver Revision: 6.31
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
OPTI621X: IDE controller on PCI bus 00 dev a0
OPTI621X: detected chipset, but driver not compiled in!
OPTI621X: chipset revision 48
OPTI621X: not 100% native mode: will probe irqs later
    ide0: BM-DMA at 0x1000-0x1007, BIOS settings: hda:pio, hdb:pio

So that kind of sucks.

Comment 1 Steffen Kluge 2003-03-07 10:40:56 UTC
Created attachment 90507 [details]
patch to opti621.c from kernel source 2.4.18-26.7.x so it compiles 

Seeing that this issue is still around in kernel-source-2.4.18-26.7.x I thought

I propose the attached simple patch. opti621.c doesn't compile because
PCI_DEVICE_ID_OPTI_82C558 is undefined. It gets defined in pci_ids.h.
Many ide drivers seem to include pci.h which pulls in pci_ids.h, so I just
included it in the opti driver in the same fashion.


Comment 2 Alan Cox 2003-06-08 19:24:35 UTC
Fixed in the base kernel now

Note You need to log in before you can comment on or make changes to this bug.