/* * This is ridiculous, but we want the strings in * the .init section so that they don't take up * real memory.. Parse the same file multiple times * to get all the info.
*/ #define MANUF( manuf, name ) staticchar __manufstr_##manuf[] __initdata = name; #define ENDMANUF() #define PRODUCT( manuf, prod, name ) staticchar __prodstr_##manuf##prod[] __initdata = name; #include"devlist.h"
void __init zorro_name_device(struct zorro_dev *dev)
{ conststruct zorro_manuf_info *manuf_p = zorro_manuf_list; int i = MANUFS; char *name = dev->name;
do { if (manuf_p->manuf == ZORRO_MANUF(dev->id)) goto match_manuf;
manuf_p++;
} while (--i);
/* Couldn't find either the manufacturer nor the product */ return;
match_manuf: { struct zorro_prod_info *prod_p = manuf_p->prods; int i = manuf_p->nr;
while (i > 0) { if (prod_p->prod ==
((ZORRO_PROD(dev->id)<<8) | ZORRO_EPC(dev->id))) goto match_prod;
prod_p++;
i--;
}
/* Ok, found the manufacturer, but unknown product */
sprintf(name, "Zorro device %08x (%s)", dev->id, manuf_p->name); return;
/* Full match */
match_prod: { char *n = name + sprintf(name, "%s %s", manuf_p->name, prod_p->name); int nr = prod_p->seen + 1;
prod_p->seen = nr; if (nr > 1)
sprintf(n, " (#%d)", nr);
}
}
}
Messung V0.5 in Prozent
¤ Diese beiden folgenden Angebotsgruppen bietet das Unternehmen0.46Angebot
(Wie Sie bei der Firma Beratungs- und Dienstleistungen beauftragen können 2026-04-26)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.