Commit 05860f2d966c7d43aebde26eec7f9b8dee6d1523

Authored by Michael Krufky
Committed by Mauro Carvalho Chehab
1 parent b9391f4160

V4L/DVB (10752): sms1xxx: load smsdvb module automatically based on device id

The smsdvb module was separated from the core and usb code. This change loads
smsdvb automatically for driver configurations that depend on it.

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

Showing 3 changed files with 20 additions and 0 deletions Side-by-side Diff

drivers/media/dvb/siano/sms-cards.c
... ... @@ -204,4 +204,21 @@
204 204 return -EINVAL;
205 205 }
206 206 EXPORT_SYMBOL(sms_board_lna_control);
  207 +
  208 +int sms_board_load_modules(int id)
  209 +{
  210 + switch (id) {
  211 + case SMS1XXX_BOARD_HAUPPAUGE_CATAMOUNT:
  212 + case SMS1XXX_BOARD_HAUPPAUGE_OKEMO_A:
  213 + case SMS1XXX_BOARD_HAUPPAUGE_OKEMO_B:
  214 + case SMS1XXX_BOARD_HAUPPAUGE_WINDHAM:
  215 + request_module("smsdvb");
  216 + break;
  217 + default:
  218 + /* do nothing */
  219 + break;
  220 + }
  221 + return 0;
  222 +}
  223 +EXPORT_SYMBOL(sms_board_load_modules);
drivers/media/dvb/siano/sms-cards.h
... ... @@ -54,5 +54,7 @@
54 54 int sms_board_power(struct smscore_device_t *coredev, int onoff);
55 55 int sms_board_lna_control(struct smscore_device_t *coredev, int onoff);
56 56  
  57 +extern int sms_board_load_modules(int id);
  58 +
57 59 #endif /* __SMS_CARDS_H__ */
drivers/media/dvb/siano/smsusb.c
... ... @@ -424,6 +424,7 @@
424 424  
425 425 rc = smsusb_init_device(intf, id->driver_info);
426 426 sms_info("rc %d", rc);
  427 + sms_board_load_modules(id->driver_info);
427 428 return rc;
428 429 }
429 430