android13/kernel-5.10/drivers/headset_observe/rk_headset.h

40 lines
1.0 KiB
C

/* SPDX-License-Identifier: GPL-2.0 */
#ifndef RK_HEADSET_H
#define RK_HEADSET_H
#define HEADSET_IN_HIGH 0x00000001
#define HEADSET_IN_LOW 0x00000000
#define HOOK_DOWN_HIGH 0x00000001
#define HOOK_DOWN_LOW 0x00000000
struct rk_headset_pdata {
/* heaset about */
unsigned int headset_gpio;
/* Headphones into the state level */
unsigned int headset_insert_type;
/* hook about */
unsigned int hook_gpio;
/* Hook key down status */
unsigned int hook_down_type;
#ifdef CONFIG_MODEM_MIC_SWITCH
/* mic about */
unsigned int mic_switch_gpio;
unsigned int hp_mic_io_value;
unsigned int main_mic_io_value;
#endif
struct iio_channel *chan;
int headset_wakeup;
int headset_force_flag;
};
#define HOOK_KEY_CODE KEY_MEDIA
int rk_headset_probe(struct platform_device *pdev,
struct rk_headset_pdata *pdata);
int rk_headset_adc_probe(struct platform_device *pdev,
struct rk_headset_pdata *pdata);
int rk_headset_adc_suspend(struct platform_device *pdev, pm_message_t state);
int rk_headset_adc_resume(struct platform_device *pdev);
#endif