11802d0beSThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */
259da522aSManjunatha Halli /*
359da522aSManjunatha Halli  *  FM Driver for Connectivity chip of Texas Instruments.
459da522aSManjunatha Halli  *  FM RX module header.
559da522aSManjunatha Halli  *
659da522aSManjunatha Halli  *  Copyright (C) 2011 Texas Instruments
759da522aSManjunatha Halli  */
859da522aSManjunatha Halli 
959da522aSManjunatha Halli #ifndef _FMDRV_RX_H
1059da522aSManjunatha Halli #define _FMDRV_RX_H
1159da522aSManjunatha Halli 
12d24674c6SXi Wang int fm_rx_set_freq(struct fmdev *, u32);
13d24674c6SXi Wang int fm_rx_set_mute_mode(struct fmdev *, u8);
14d24674c6SXi Wang int fm_rx_set_stereo_mono(struct fmdev *, u16);
15d24674c6SXi Wang int fm_rx_set_rds_mode(struct fmdev *, u8);
16d24674c6SXi Wang int fm_rx_set_rds_system(struct fmdev *, u8);
17d24674c6SXi Wang int fm_rx_set_volume(struct fmdev *, u16);
18d24674c6SXi Wang int fm_rx_set_rssi_threshold(struct fmdev *, short);
19d24674c6SXi Wang int fm_rx_set_region(struct fmdev *, u8);
20d24674c6SXi Wang int fm_rx_set_rfdepend_softmute(struct fmdev *, u8);
21d24674c6SXi Wang int fm_rx_set_deemphasis_mode(struct fmdev *, u16);
22d24674c6SXi Wang int fm_rx_set_af_switch(struct fmdev *, u8);
2359da522aSManjunatha Halli 
2459da522aSManjunatha Halli void fm_rx_reset_rds_cache(struct fmdev *);
2559da522aSManjunatha Halli void fm_rx_reset_station_info(struct fmdev *);
2659da522aSManjunatha Halli 
27d24674c6SXi Wang int fm_rx_seek(struct fmdev *, u32, u32, u32);
2859da522aSManjunatha Halli 
29d24674c6SXi Wang int fm_rx_get_rds_mode(struct fmdev *, u8 *);
30d24674c6SXi Wang int fm_rx_get_mute_mode(struct fmdev *, u8 *);
31d24674c6SXi Wang int fm_rx_get_volume(struct fmdev *, u16 *);
32d24674c6SXi Wang int fm_rx_get_band_freq_range(struct fmdev *,
3359da522aSManjunatha Halli 					u32 *, u32 *);
34d24674c6SXi Wang int fm_rx_get_stereo_mono(struct fmdev *, u16 *);
35d24674c6SXi Wang int fm_rx_get_rssi_level(struct fmdev *, u16 *);
36d24674c6SXi Wang int fm_rx_get_rssi_threshold(struct fmdev *, short *);
37d24674c6SXi Wang int fm_rx_get_rfdepend_softmute(struct fmdev *, u8 *);
38d24674c6SXi Wang int fm_rx_get_deemph_mode(struct fmdev *, u16 *);
39d24674c6SXi Wang int fm_rx_get_af_switch(struct fmdev *, u8 *);
4059da522aSManjunatha Halli void fm_rx_get_region(struct fmdev *, u8 *);
4159da522aSManjunatha Halli 
42d24674c6SXi Wang int fm_rx_set_chanl_spacing(struct fmdev *, u8);
43d24674c6SXi Wang int fm_rx_get_chanl_spacing(struct fmdev *, u8 *);
4459da522aSManjunatha Halli #endif
4559da522aSManjunatha Halli 
46