Commit b822f83d authored by Adam Belay's avatar Adam Belay

[PATCH 2.5] PnP changes to allow MODULE_DEVICE_TABLE()

This patch fixes the MODULE_DEVICE_TABLE problems, the correct code was
accidentally lost a few merges back.  It is from Daniel Ritz
<daniel.ritz@gmx.ch>, below is the original message.

hello adam, jaroslav, list

this patch does:
- rename struct pnp_card_id to pnp_card_device_id
- fix all references to it

this is needed for the MODULE_DEVICE_TABLE() macro to work with pnp_card's.
jaroslav did this a while ago (changeset 1.879.79.1), but adam undid it a bit
later (changeset 1.889.202.3). but why?

w/o the patch gcc dies when compiling als100.c with the message 'storage size
of __mod_pnp_card_device_table unknown' (this is from the macro).

any reasons why i should not send this to linus?
against 2.5.65-bk

rgds
-daniel
parent 4cac87d3
......@@ -909,7 +909,7 @@ static struct pci_driver fcpci_driver = {
#ifdef CONFIG_PNP_CARD
static int __devinit fcpnp_probe(struct pnp_card *card,
const struct pnp_card_id *card_id)
const struct pnp_card_device_id *card_id)
{
struct fritz_adapter *adapter;
struct pnp_dev *pnp_dev;
......@@ -955,7 +955,7 @@ static void __devexit fcpnp_remove(struct pnp_card *pcard)
delete_adapter(adapter);
}
static struct pnp_card_id fcpnp_ids[] __devinitdata = {
static struct pnp_card_device_id fcpnp_ids[] __devinitdata = {
{ .id = "AVM0900",
.driver_data = (unsigned long) "Fritz!Card PnP",
.devs = { { "AVM0900" } },
......
......@@ -22,9 +22,9 @@ LIST_HEAD(pnp_cards);
LIST_HEAD(pnp_card_drivers);
static const struct pnp_card_id * match_card(struct pnp_card_driver * drv, struct pnp_card * card)
static const struct pnp_card_device_id * match_card(struct pnp_card_driver * drv, struct pnp_card * card)
{
const struct pnp_card_id * drv_id = drv->id_table;
const struct pnp_card_device_id * drv_id = drv->id_table;
while (*drv_id->id){
if (compare_pnp_id(card->id,drv_id->id))
return drv_id;
......@@ -52,7 +52,7 @@ static void card_remove_first(struct pnp_dev * dev)
static int card_probe(struct pnp_card * card, struct pnp_card_driver * drv)
{
const struct pnp_card_id *id = match_card(drv,card);
const struct pnp_card_device_id *id = match_card(drv,card);
if (id) {
struct pnp_card_link * clink = pnp_alloc(sizeof(struct pnp_card_link));
if (!clink)
......
......@@ -295,7 +295,7 @@ struct pnp_device_id {
unsigned long driver_data; /* data private to the driver */
};
struct pnp_card_id {
struct pnp_card_device_id {
char id[PNP_ID_LEN];
unsigned long driver_data; /* data private to the driver */
struct {
......@@ -317,9 +317,9 @@ struct pnp_driver {
struct pnp_card_driver {
struct list_head global_list;
char * name;
const struct pnp_card_id *id_table;
const struct pnp_card_device_id *id_table;
unsigned int flags;
int (*probe) (struct pnp_card_link *card, const struct pnp_card_id *card_id);
int (*probe) (struct pnp_card_link *card, const struct pnp_card_device_id *card_id);
void (*remove) (struct pnp_card_link *card);
struct pnp_driver link;
};
......
......@@ -98,7 +98,7 @@ struct snd_card_als100 {
struct pnp_dev *devopl;
};
static struct pnp_card_id snd_als100_pnpids[] __devinitdata = {
static struct pnp_card_device_id snd_als100_pnpids[] __devinitdata = {
/* ALS100 - PRO16PNP */
{ .id = "ALS0001", .devs = { { "@@@0001" }, { "@X@0001" }, { "@H@0001" }, } },
/* ALS110 - MF1000 - Digimate 3D Sound */
......@@ -118,7 +118,7 @@ MODULE_DEVICE_TABLE(pnp_card, snd_als100_pnpids);
static int __devinit snd_card_als100_isapnp(int dev, struct snd_card_als100 *acard,
struct pnp_card_link *card,
const struct pnp_card_id *id)
const struct pnp_card_device_id *id)
{
struct pnp_dev *pdev;
struct pnp_resource_table * cfg = kmalloc(GFP_ATOMIC, sizeof(struct pnp_resource_table));
......@@ -210,7 +210,7 @@ static int __devinit snd_card_als100_isapnp(int dev, struct snd_card_als100 *aca
static int __init snd_card_als100_probe(int dev,
struct pnp_card_link *pcard,
const struct pnp_card_id *pid)
const struct pnp_card_device_id *pid)
{
int error;
sb_t *chip;
......@@ -288,7 +288,7 @@ static int __init snd_card_als100_probe(int dev,
}
static int __devinit snd_als100_pnp_detect(struct pnp_card_link *card,
const struct pnp_card_id *id)
const struct pnp_card_device_id *id)
{
static int dev;
int res;
......
......@@ -69,7 +69,7 @@ struct snd_card_es968 {
struct pnp_dev *dev;
};
static struct pnp_card_id snd_es968_pnpids[] __devinitdata = {
static struct pnp_card_device_id snd_es968_pnpids[] __devinitdata = {
{ .id = "ESS0968", .devs = { { "@@@0968" }, } },
{ .id = "", } /* end */
};
......@@ -92,7 +92,7 @@ static void snd_card_es968_interrupt(int irq, void *dev_id,
static int __devinit snd_card_es968_isapnp(int dev, struct snd_card_es968 *acard,
struct pnp_card_link *card,
const struct pnp_card_id *id)
const struct pnp_card_device_id *id)
{
struct pnp_dev *pdev;
struct pnp_resource_table * cfg = kmalloc(GFP_ATOMIC, sizeof(struct pnp_resource_table));
......@@ -133,7 +133,7 @@ static int __devinit snd_card_es968_isapnp(int dev, struct snd_card_es968 *acard
static int __init snd_card_es968_probe(int dev,
struct pnp_card_link *pcard,
const struct pnp_card_id *pid)
const struct pnp_card_device_id *pid)
{
int error;
sb_t *chip;
......@@ -188,7 +188,7 @@ static int __init snd_card_es968_probe(int dev,
}
static int __devinit snd_es968_pnp_detect(struct pnp_card_link *card,
const struct pnp_card_id *id)
const struct pnp_card_device_id *id)
{
static int dev;
int res;
......
......@@ -224,7 +224,7 @@ static void sb_dev2cfg(struct pnp_dev *dev, struct sb_card_config *scc)
}
/* Probe callback function for the PnP API */
static int sb_pnp_probe(struct pnp_card_link *card, const struct pnp_card_id *card_id)
static int sb_pnp_probe(struct pnp_card_link *card, const struct pnp_card_device_id *card_id)
{
struct sb_card_config *scc;
struct sb_module_options sbmo = {0}; /* Default to 0 for PnP */
......
......@@ -23,7 +23,7 @@ struct sb_card_config {
*/
/* Card PnP ID Table */
static struct pnp_card_id sb_pnp_card_table[] = {
static struct pnp_card_device_id sb_pnp_card_table[] = {
/* Sound Blaster 16 */
{.id = "CTL0024", .driver_data = 0, devs : { {.id="CTL0031"}, } },
/* Sound Blaster 16 */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment