diff options
author | Michael Krufky <mkrufky@linuxtv.org> | 2008-11-22 14:33:00 -0300 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2008-12-30 09:38:14 -0200 |
commit | dff65740e0c3a18cf56b2e3cbeebd9e9cfa7ac0d (patch) | |
tree | 5234c409d0259e46c1dc38014ad3974699159ed5 | |
parent | ec984f437842426622fb54b56bbcc416183eefe6 (diff) |
V4L/DVB (9737): sms1xxx: enable LNA control on Hauppauge WinTV MiniCard
Power the LNA while the frontend is in use.
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r-- | drivers/media/dvb/siano/sms-cards.c | 13 | ||||
-rw-r--r-- | drivers/media/dvb/siano/sms-cards.h | 3 |
2 files changed, 14 insertions, 2 deletions
diff --git a/drivers/media/dvb/siano/sms-cards.c b/drivers/media/dvb/siano/sms-cards.c index f4eb46a7c90..fd62e0b8562 100644 --- a/drivers/media/dvb/siano/sms-cards.c +++ b/drivers/media/dvb/siano/sms-cards.c @@ -41,7 +41,7 @@ struct usb_device_id smsusb_id_table[] = { { USB_DEVICE(0x2040, 0x2000), .driver_info = SMS1XXX_BOARD_HAUPPAUGE_TIGER_MINICARD }, { USB_DEVICE(0x2040, 0x2009), - .driver_info = SMS1XXX_BOARD_HAUPPAUGE_TIGER_MINICARD }, + .driver_info = SMS1XXX_BOARD_HAUPPAUGE_TIGER_MINICARD_R2 }, { USB_DEVICE(0x2040, 0x200a), .driver_info = SMS1XXX_BOARD_HAUPPAUGE_TIGER_MINICARD }, { USB_DEVICE(0x2040, 0x2010), @@ -165,6 +165,11 @@ int sms_board_setup(struct smscore_device_t *coredev) sms_set_gpio(coredev, board->led_hi, 0); sms_set_gpio(coredev, board->led_lo, 0); break; + case SMS1XXX_BOARD_HAUPPAUGE_TIGER_MINICARD_R2: + case SMS1XXX_BOARD_HAUPPAUGE_TIGER_MINICARD: + /* turn off LNA */ + sms_set_gpio(coredev, board->lna_ctrl, 0); + break; } return 0; } @@ -180,6 +185,12 @@ int sms_board_power(struct smscore_device_t *coredev, int onoff) sms_set_gpio(coredev, board->led_power, onoff ? 1 : 0); break; + case SMS1XXX_BOARD_HAUPPAUGE_TIGER_MINICARD_R2: + case SMS1XXX_BOARD_HAUPPAUGE_TIGER_MINICARD: + /* LNA */ + sms_set_gpio(coredev, + board->lna_ctrl, onoff ? 1 : 0); + break; } return 0; } diff --git a/drivers/media/dvb/siano/sms-cards.h b/drivers/media/dvb/siano/sms-cards.h index 5c013c4390d..8e0fe9fd261 100644 --- a/drivers/media/dvb/siano/sms-cards.h +++ b/drivers/media/dvb/siano/sms-cards.h @@ -33,13 +33,14 @@ #define SMS1XXX_BOARD_HAUPPAUGE_OKEMO_B 7 #define SMS1XXX_BOARD_HAUPPAUGE_WINDHAM 8 #define SMS1XXX_BOARD_HAUPPAUGE_TIGER_MINICARD 9 +#define SMS1XXX_BOARD_HAUPPAUGE_TIGER_MINICARD_R2 10 struct sms_board { enum sms_device_type_st type; char *name, *fw[DEVICE_MODE_MAX]; /* gpios */ - int led_power, led_hi, led_lo; + int led_power, led_hi, led_lo, lna_ctrl; }; struct sms_board *sms_get_board(int id); |