static int __init sscape_init(void) { int ret; /* * First check whether we were passed any parameters. * These MUST take precedence over ANY automatic way * of allocating cards, because the operator is * S-P-E-L-L-I-N-G it out for us... */ ret = sscape_manual_probe(sscape_params); if (ret < 0) { int i; for (i = 0; i < sscape_cards; ++i) snd_card_free(sscape_card[i]); return ret; } #ifdef CONFIG_PNP if (sscape_cards < SNDRV_CARDS) { ret = pnp_register_card_driver(&sscape_pnpc_driver); if (ret < 0) { sscape_exit(); return ret; } } #endif return 0; }
static int __init sscape_init(void) { int ret; /* * First check whether we were passed any parameters. * These MUST take precedence over ANY automatic way * of allocating cards, because the operator is * S-P-E-L-L-I-N-G it out for us... */ ret = sscape_manual_probe(); if (ret < 0) return ret; #ifdef CONFIG_PNP if (pnp_register_card_driver(&sscape_pnpc_driver) == 0) pnp_registered = 1; #endif return 0; }