2008-06-19 09:09:55 +08:00
|
|
|
/*
|
|
|
|
* Card-specific functions for the Siano SMS1xxx USB dongle
|
|
|
|
*
|
|
|
|
* Copyright (c) 2008 Michael Krufky <mkrufky@linuxtv.org>
|
|
|
|
*
|
|
|
|
* This program is free software; you can redistribute it and/or modify
|
2008-09-04 03:48:17 +08:00
|
|
|
* it under the terms of the GNU General Public License version 2 as
|
2008-06-19 09:09:55 +08:00
|
|
|
* published by the Free Software Foundation;
|
|
|
|
*
|
|
|
|
* Software distributed under the License is distributed on an "AS IS"
|
|
|
|
* basis, WITHOUT WARRANTY OF ANY KIND, either express or implied.
|
|
|
|
*
|
|
|
|
* See the GNU General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU General Public License
|
|
|
|
* along with this program; if not, write to the Free Software
|
|
|
|
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef __SMS_CARDS_H__
|
|
|
|
#define __SMS_CARDS_H__
|
|
|
|
|
|
|
|
#include <linux/usb.h>
|
|
|
|
#include "smscoreapi.h"
|
|
|
|
|
|
|
|
#define SMS_BOARD_UNKNOWN 0
|
2008-06-29 03:45:36 +08:00
|
|
|
#define SMS1XXX_BOARD_SIANO_STELLAR 1
|
|
|
|
#define SMS1XXX_BOARD_SIANO_NOVA_A 2
|
|
|
|
#define SMS1XXX_BOARD_SIANO_NOVA_B 3
|
|
|
|
#define SMS1XXX_BOARD_SIANO_VEGA 4
|
2008-06-29 10:55:36 +08:00
|
|
|
#define SMS1XXX_BOARD_HAUPPAUGE_CATAMOUNT 5
|
|
|
|
#define SMS1XXX_BOARD_HAUPPAUGE_OKEMO_A 6
|
|
|
|
#define SMS1XXX_BOARD_HAUPPAUGE_OKEMO_B 7
|
|
|
|
#define SMS1XXX_BOARD_HAUPPAUGE_WINDHAM 8
|
2008-11-22 22:21:02 +08:00
|
|
|
#define SMS1XXX_BOARD_HAUPPAUGE_TIGER_MINICARD 9
|
2008-11-23 01:33:00 +08:00
|
|
|
#define SMS1XXX_BOARD_HAUPPAUGE_TIGER_MINICARD_R2 10
|
2008-06-19 09:09:55 +08:00
|
|
|
|
|
|
|
struct sms_board {
|
|
|
|
enum sms_device_type_st type;
|
2008-06-26 15:58:30 +08:00
|
|
|
char *name, *fw[DEVICE_MODE_MAX];
|
2008-11-17 09:45:42 +08:00
|
|
|
|
|
|
|
/* gpios */
|
2008-12-16 13:56:08 +08:00
|
|
|
int led_power, led_hi, led_lo, lna_ctrl, rf_switch;
|
2008-06-19 09:09:55 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
struct sms_board *sms_get_board(int id);
|
|
|
|
|
2008-11-17 09:45:42 +08:00
|
|
|
int sms_board_setup(struct smscore_device_t *coredev);
|
|
|
|
|
2008-11-23 02:32:19 +08:00
|
|
|
#define SMS_LED_OFF 0
|
|
|
|
#define SMS_LED_LO 1
|
|
|
|
#define SMS_LED_HI 2
|
|
|
|
int sms_board_led_feedback(struct smscore_device_t *coredev, int led);
|
2008-11-23 01:26:37 +08:00
|
|
|
int sms_board_power(struct smscore_device_t *coredev, int onoff);
|
2008-12-16 13:56:08 +08:00
|
|
|
int sms_board_lna_control(struct smscore_device_t *coredev, int onoff);
|
2008-11-23 01:26:37 +08:00
|
|
|
|
2008-09-01 04:39:58 +08:00
|
|
|
extern int sms_board_load_modules(int id);
|
|
|
|
|
2008-06-19 09:09:55 +08:00
|
|
|
#endif /* __SMS_CARDS_H__ */
|