linux/drivers/media/radio/si4713/si4713.h

/*
 * drivers/media/radio/si4713-i2c.h
 *
 * Property and commands definitions for Si4713 radio transmitter chip.
 *
 * Copyright (c) 2008 Instituto Nokia de Tecnologia - INdT
 * Contact: Eduardo Valentin <[email protected]>
 *
 * This file is licensed under the terms of the GNU General Public License
 * version 2. This program is licensed "as is" without any warranty of any
 * kind, whether express or implied.
 *
 */

#ifndef SI4713_I2C_H
#define SI4713_I2C_H

#include <linux/platform_device.h>
#include <linux/regulator/consumer.h>
#include <linux/gpio/consumer.h>
#include <media/v4l2-subdev.h>
#include <media/v4l2-ctrls.h>
#include <linux/platform_data/media/si4713.h>

#define SI4713_PRODUCT_NUMBER

/* Command Timeouts */
#define DEFAULT_TIMEOUT
#define TIMEOUT_SET_PROPERTY
#define TIMEOUT_TX_TUNE_POWER
#define TIMEOUT_TX_TUNE
#define TIMEOUT_POWER_UP

/*
 * Command and its arguments definitions
 */
#define SI4713_PWUP_CTSIEN
#define SI4713_PWUP_GPO2OEN
#define SI4713_PWUP_PATCH
#define SI4713_PWUP_XOSCEN
#define SI4713_PWUP_FUNC_TX
#define SI4713_PWUP_FUNC_PATCH
#define SI4713_PWUP_OPMOD_ANALOG
#define SI4713_PWUP_OPMOD_DIGITAL
#define SI4713_PWUP_NARGS
#define SI4713_PWUP_NRESP
#define SI4713_CMD_POWER_UP

#define SI4713_GETREV_NRESP
#define SI4713_CMD_GET_REV

#define SI4713_PWDN_NRESP
#define SI4713_CMD_POWER_DOWN

#define SI4713_SET_PROP_NARGS
#define SI4713_SET_PROP_NRESP
#define SI4713_CMD_SET_PROPERTY

#define SI4713_GET_PROP_NARGS
#define SI4713_GET_PROP_NRESP
#define SI4713_CMD_GET_PROPERTY

#define SI4713_GET_STATUS_NRESP
#define SI4713_CMD_GET_INT_STATUS

#define SI4713_CMD_PATCH_ARGS
#define SI4713_CMD_PATCH_DATA

#define SI4713_MAX_FREQ
#define SI4713_MIN_FREQ
#define SI4713_TXFREQ_NARGS
#define SI4713_TXFREQ_NRESP
#define SI4713_CMD_TX_TUNE_FREQ

#define SI4713_MAX_POWER
#define SI4713_MIN_POWER
#define SI4713_MAX_ANTCAP
#define SI4713_MIN_ANTCAP
#define SI4713_TXPWR_NARGS
#define SI4713_TXPWR_NRESP
#define SI4713_CMD_TX_TUNE_POWER

#define SI4713_TXMEA_NARGS
#define SI4713_TXMEA_NRESP
#define SI4713_CMD_TX_TUNE_MEASURE

#define SI4713_INTACK_MASK
#define SI4713_TXSTATUS_NARGS
#define SI4713_TXSTATUS_NRESP
#define SI4713_CMD_TX_TUNE_STATUS

#define SI4713_OVERMOD_BIT
#define SI4713_IALH_BIT
#define SI4713_IALL_BIT
#define SI4713_ASQSTATUS_NARGS
#define SI4713_ASQSTATUS_NRESP
#define SI4713_CMD_TX_ASQ_STATUS

#define SI4713_RDSBUFF_MODE_MASK
#define SI4713_RDSBUFF_NARGS
#define SI4713_RDSBUFF_NRESP
#define SI4713_CMD_TX_RDS_BUFF

#define SI4713_RDSPS_PSID_MASK
#define SI4713_RDSPS_NARGS
#define SI4713_RDSPS_NRESP
#define SI4713_CMD_TX_RDS_PS

#define SI4713_CMD_GPO_CTL
#define SI4713_CMD_GPO_SET

/*
 * Bits from status response
 */
#define SI4713_CTS
#define SI4713_ERR
#define SI4713_RDS_INT
#define SI4713_ASQ_INT
#define SI4713_STC_INT

/*
 * Property definitions
 */
#define SI4713_GPO_IEN
#define SI4713_DIG_INPUT_FORMAT
#define SI4713_DIG_INPUT_SAMPLE_RATE
#define SI4713_REFCLK_FREQ
#define SI4713_REFCLK_PRESCALE
#define SI4713_TX_COMPONENT_ENABLE
#define SI4713_TX_AUDIO_DEVIATION
#define SI4713_TX_PILOT_DEVIATION
#define SI4713_TX_RDS_DEVIATION
#define SI4713_TX_LINE_INPUT_LEVEL
#define SI4713_TX_LINE_INPUT_MUTE
#define SI4713_TX_PREEMPHASIS
#define SI4713_TX_PILOT_FREQUENCY
#define SI4713_TX_ACOMP_ENABLE
#define SI4713_TX_ACOMP_THRESHOLD
#define SI4713_TX_ACOMP_ATTACK_TIME
#define SI4713_TX_ACOMP_RELEASE_TIME
#define SI4713_TX_ACOMP_GAIN
#define SI4713_TX_LIMITER_RELEASE_TIME
#define SI4713_TX_ASQ_INTERRUPT_SOURCE
#define SI4713_TX_ASQ_LEVEL_LOW
#define SI4713_TX_ASQ_DURATION_LOW
#define SI4713_TX_ASQ_LEVEL_HIGH
#define SI4713_TX_ASQ_DURATION_HIGH
#define SI4713_TX_RDS_INTERRUPT_SOURCE
#define SI4713_TX_RDS_PI
#define SI4713_TX_RDS_PS_MIX
#define SI4713_TX_RDS_PS_MISC
#define SI4713_TX_RDS_PS_REPEAT_COUNT
#define SI4713_TX_RDS_PS_MESSAGE_COUNT
#define SI4713_TX_RDS_PS_AF
#define SI4713_TX_RDS_FIFO_SIZE

#define PREEMPHASIS_USA
#define PREEMPHASIS_EU
#define PREEMPHASIS_DISABLED
#define FMPE_USA
#define FMPE_EU
#define FMPE_DISABLED

#define POWER_UP
#define POWER_DOWN

#define MAX_RDS_PTY
#define MAX_RDS_DEVIATION

/*
 * PSNAME is known to be defined as 8 character sized (RDS Spec).
 * However, there is receivers which scroll PSNAME 8xN sized.
 */
#define MAX_RDS_PS_NAME

/*
 * MAX_RDS_RADIO_TEXT is known to be defined as 32 (2A group) or 64 (2B group)
 * character sized (RDS Spec).
 * However, there is receivers which scroll them as well.
 */
#define MAX_RDS_RADIO_TEXT

#define MAX_LIMITER_RELEASE_TIME
#define MAX_LIMITER_DEVIATION

#define MAX_PILOT_DEVIATION
#define MAX_PILOT_FREQUENCY

#define MAX_ACOMP_RELEASE_TIME
#define MAX_ACOMP_ATTACK_TIME
#define MAX_ACOMP_THRESHOLD
#define MIN_ACOMP_THRESHOLD
#define MAX_ACOMP_GAIN

/*
 * si4713_device - private data
 */
struct si4713_device {};

struct radio_si4713_platform_data {};
#endif /* ifndef SI4713_I2C_H */