Exemple #1
0
static int
wi_pccard_probe(device_t dev)
{
	const struct pccard_product *pp;
	u_int32_t fcn = PCCARD_FUNCTION_UNSPEC;

	wlan_serialize_enter();

	/* Make sure we're a network driver */
	fcn = pccard_get_function_number(dev);
	if (fcn != PCCARD_FUNCTION_NETWORK) {
		wlan_serialize_exit();
		return ENXIO;
	}

	pp = pccard_product_lookup(dev, wi_pccard_products,
	    sizeof(wi_pccard_products[0]), NULL);
	if (pp != NULL) {
		if (pp->pp_name != NULL)
			device_set_desc(dev, pp->pp_name);
		wlan_serialize_exit();
		return 0;
	}
	wlan_serialize_exit();
	return ENXIO;
}
Exemple #2
0
static int
ata_pccard_probe(device_t dev)
{
    const struct pccard_product *pp;
    u_int32_t fcn = PCCARD_FUNCTION_UNSPEC;

    fcn = pccard_get_function_number(dev);

    /* if it says its a disk we should register it */
    if (fcn == PCCARD_FUNCTION_DISK)
	return 0;

    /* match other devices here, primarily cdrom/dvd rom */
    if ((pp = pccard_product_lookup(dev, ata_pccard_products,
				    sizeof(ata_pccard_products[0]), NULL))) {
	if (pp->pp_name)
	    device_set_desc(dev, pp->pp_name);
	return 0;
    }
    return ENXIO;
}