1 /* 2 * Abilis Systems Single DVB-T Receiver 3 * Copyright (C) 2008 Pierrick Hascoet <pierrick.hascoet@abilis.com> 4 * 5 * This program is free software; you can redistribute it and/or modify 6 * it under the terms of the GNU General Public License as published by 7 * the Free Software Foundation; either version 2, or (at your option) 8 * any later version. 9 * 10 * This program is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 * 15 * You should have received a copy of the GNU General Public License 16 * along with this program; if not, write to the Free Software 17 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 18 */ 19 #ifdef __KERNEL__ 20 struct as10x_bus_adapter_t; 21 struct as102_dev_t; 22 23 #include "as10x_cmd.h" 24 25 /* values for "mode" field */ 26 #define REGMODE8 8 27 #define REGMODE16 16 28 #define REGMODE32 32 29 30 struct as102_priv_ops_t { 31 int (*upload_fw_pkt) (struct as10x_bus_adapter_t *bus_adap, 32 unsigned char *buf, int buflen, int swap32); 33 34 int (*send_cmd) (struct as10x_bus_adapter_t *bus_adap, 35 unsigned char *buf, int buflen); 36 37 int (*xfer_cmd) (struct as10x_bus_adapter_t *bus_adap, 38 unsigned char *send_buf, int send_buf_len, 39 unsigned char *recv_buf, int recv_buf_len); 40 41 int (*start_stream) (struct as102_dev_t *dev); 42 void (*stop_stream) (struct as102_dev_t *dev); 43 44 int (*reset_target) (struct as10x_bus_adapter_t *bus_adap); 45 46 int (*read_write)(struct as10x_bus_adapter_t *bus_adap, uint8_t mode, 47 uint32_t rd_addr, uint16_t rd_len, 48 uint32_t wr_addr, uint16_t wr_len); 49 50 int (*as102_read_ep2) (struct as10x_bus_adapter_t *bus_adap, 51 unsigned char *recv_buf, 52 int recv_buf_len); 53 }; 54 #endif 55