2002-12-10 14:55:35

by Burton Windle

[permalink] [raw]
Subject: [2.5.51] unknown field 'driver_data' compiling cs4243

I'm getting an error compiling cs4232 in 2.5.51. It built fine in 50-bk6.

gcc -Wp,-MD,sound/oss/.cs4232.o.d -D__KERNEL__ -Iinclude -Wall
-Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-al
iasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=i686
-Iarch/i386/mach-generic -nostdinc -iwithprefix incl
ude -DKBUILD_BASENAME=cs4232 -DKBUILD_MODNAME=cs4232 -c -o
sound/oss/cs4232.o sound/oss/cs4232.c
sound/oss/cs4232.c:361: unknown field `driver_data' specified in initializer
sound/oss/cs4232.c:362: unknown field `driver_data' specified in initializer
sound/oss/cs4232.c:365: unknown field `driver_data' specified in initializer
sound/oss/cs4232.c: In function `cs4232_pnp_probe':
sound/oss/cs4232.c:389: warning: passing arg 1 of `pci_set_drvdata' from incompatible pointer type
sound/oss/cs4232.c: In function `cs4232_pnp_remove':
sound/oss/cs4232.c:395: structure has no member named `driver_data'
sound/oss/cs4232.c: At top level:
sound/oss/cs4232.c:402: unknown field `card_id_table' specified in initializer
sound/oss/cs4232.c:403: duplicate initializer
sound/oss/cs4232.c:403: (near initialization for `cs4232_driver.id_table')
sound/oss/cs4232.c:404: warning: initialization from incompatible pointer type
sound/oss/cs4232.c:327: warning: `synthirq' defined but not used
make[2]: *** [sound/oss/cs4232.o] Error 1
make[1]: *** [sound/oss] Error 2
make: *** [sound] Error 2


CONFIG_PNP=y
CONFIG_PNP_NAMES=y
CONFIG_PNPBIOS=y

CONFIG_SOUND=y
CONFIG_SOUND_PRIME=y
CONFIG_SOUND_OSS=y
CONFIG_SOUND_TRACEINIT=y
CONFIG_SOUND_CS4232=y

Gnu C 2.95.4
Gnu make 3.79.1
util-linux 2.11n
mount 2.11n
modutils 2.4.19
e2fsprogs 1.30-WIP
Linux C Library 2.2.5
Dynamic linker (ldd) 2.2.5
Procps 2.0.7
Net-tools 1.60
Console-tools 0.2.3
Sh-utils 4.5.2
Modules Loaded



--
Burton Windle [email protected]
Linux: the "grim reaper of innocent orphaned children."
from /usr/src/linux-2.4.18/init/main.c:461



2002-12-10 22:48:21

by Adam J. Richter

[permalink] [raw]
Subject: Re: [2.5.51] unknown field 'driver_data' compiling cs4243

Burton Windle writes:
>I'm getting an error compiling cs4232 in 2.5.51. It built fine in 50-bk6.
[...]
>sound/oss/cs4232.c:361: unknown field `driver_data' specified in initializer
[etc.]

This is not due to the change that I submitted removing
driver_data from struct pci_dev, although it looks like a similar change
for isapnp devices. I started to make a change to convert
the references to driver_data to
dev_set_drvdata(&isapnpdev->dev,...) and dev_get_drvdata(&isapnpdev->dev),
but got a little confused by the multiple classes of isapnp drivers:

Driver structure Device structure ID structure

include/linux/isapnp.h:
isapnp_driver pci_dev isapnp_device_id
(none) pci_bus isapnp_card_id

include/linux/pnp.h:
pnpc_driver pnp_card pnp_card_id
pnp_driver pnp_dev pnp_id


From ChangeLog-2.5.51, I see mention of isapnp changes
associated with Adam Belay. So, I'm cc'ing him as he is probably
much better qualified to explain.

Adam J. Richter __ ______________ 575 Oroville Road
[email protected] \ / Milpitas, California 95035
+1 408 309-6081 | g g d r a s i l United States of America
"Free Software For The Rest Of Us."