2011-08-29 00:05:35 -03:00
/*
* mxl111sf - gpio . h - driver for the MaxLinear MXL111SF
*
2014-01-29 23:10:11 -03:00
* Copyright ( C ) 2010 - 2014 Michael Krufky < mkrufky @ linuxtv . org >
2011-08-29 00:05:35 -03:00
*
* This program is free software ; you can redistribute it and / or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation ; either version 2 of the License , or
* ( at your option ) any later version .
*
* This program is distributed in the hope that it will be useful ,
* but WITHOUT ANY WARRANTY ; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
* GNU General Public License for more details .
*/
# ifndef _DVB_USB_MXL111SF_GPIO_H_
# define _DVB_USB_MXL111SF_GPIO_H_
# include "mxl111sf.h"
int mxl111sf_set_gpio ( struct mxl111sf_state * state , int gpio , int val ) ;
int mxl111sf_init_port_expander ( struct mxl111sf_state * state ) ;
# define MXL111SF_GPIO_MOD_DVBT 0
# define MXL111SF_GPIO_MOD_MH 1
# define MXL111SF_GPIO_MOD_ATSC 2
int mxl111sf_gpio_mode_switch ( struct mxl111sf_state * state , unsigned int mode ) ;
enum mxl111sf_mux_config {
PIN_MUX_DEFAULT = 0 ,
PIN_MUX_TS_OUT_PARALLEL ,
PIN_MUX_TS_OUT_SERIAL ,
PIN_MUX_GPIO_MODE ,
PIN_MUX_TS_SERIAL_IN_MODE_0 ,
PIN_MUX_TS_SERIAL_IN_MODE_1 ,
PIN_MUX_TS_SPI_IN_MODE_0 ,
PIN_MUX_TS_SPI_IN_MODE_1 ,
PIN_MUX_TS_PARALLEL_IN ,
PIN_MUX_BT656_I2S_MODE ,
} ;
int mxl111sf_config_pin_mux_modes ( struct mxl111sf_state * state ,
enum mxl111sf_mux_config pin_mux_config ) ;
# endif /* _DVB_USB_MXL111SF_GPIO_H_ */