1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */ 2878ac3eeSClemens Ladisch #ifndef CM9780_H_INCLUDED 3878ac3eeSClemens Ladisch #define CM9780_H_INCLUDED 4878ac3eeSClemens Ladisch 5878ac3eeSClemens Ladisch #define CM9780_JACK 0x62 6878ac3eeSClemens Ladisch #define CM9780_MIXER 0x64 7878ac3eeSClemens Ladisch #define CM9780_GPIO_SETUP 0x70 8878ac3eeSClemens Ladisch #define CM9780_GPIO_STATUS 0x72 9878ac3eeSClemens Ladisch 10878ac3eeSClemens Ladisch /* jack control */ 11878ac3eeSClemens Ladisch #define CM9780_RSOE 0x0001 12878ac3eeSClemens Ladisch #define CM9780_CBOE 0x0002 13878ac3eeSClemens Ladisch #define CM9780_SSOE 0x0004 14878ac3eeSClemens Ladisch #define CM9780_FROE 0x0008 15878ac3eeSClemens Ladisch #define CM9780_HP2FMICOE 0x0010 16878ac3eeSClemens Ladisch #define CM9780_CB2MICOE 0x0020 17878ac3eeSClemens Ladisch #define CM9780_FMIC2LI 0x0040 18878ac3eeSClemens Ladisch #define CM9780_FMIC2MIC 0x0080 19878ac3eeSClemens Ladisch #define CM9780_HP2LI 0x0100 20878ac3eeSClemens Ladisch #define CM9780_HP2MIC 0x0200 21878ac3eeSClemens Ladisch #define CM9780_MIC2LI 0x0400 22878ac3eeSClemens Ladisch #define CM9780_MIC2MIC 0x0800 23878ac3eeSClemens Ladisch #define CM9780_LI2LI 0x1000 24878ac3eeSClemens Ladisch #define CM9780_LI2MIC 0x2000 25878ac3eeSClemens Ladisch #define CM9780_LO2LI 0x4000 26878ac3eeSClemens Ladisch #define CM9780_LO2MIC 0x8000 27878ac3eeSClemens Ladisch 28878ac3eeSClemens Ladisch /* mixer control */ 29878ac3eeSClemens Ladisch #define CM9780_BSTSEL 0x0001 30878ac3eeSClemens Ladisch #define CM9780_STRO_MIC 0x0002 31878ac3eeSClemens Ladisch #define CM9780_SPDI_FREX 0x0004 32878ac3eeSClemens Ladisch #define CM9780_SPDI_SSEX 0x0008 33878ac3eeSClemens Ladisch #define CM9780_SPDI_CBEX 0x0010 34878ac3eeSClemens Ladisch #define CM9780_SPDI_RSEX 0x0020 35878ac3eeSClemens Ladisch #define CM9780_MIX2FR 0x0040 36878ac3eeSClemens Ladisch #define CM9780_MIX2SS 0x0080 37878ac3eeSClemens Ladisch #define CM9780_MIX2CB 0x0100 38878ac3eeSClemens Ladisch #define CM9780_MIX2RS 0x0200 39878ac3eeSClemens Ladisch #define CM9780_MIX2FR_EX 0x0400 40878ac3eeSClemens Ladisch #define CM9780_MIX2SS_EX 0x0800 41878ac3eeSClemens Ladisch #define CM9780_MIX2CB_EX 0x1000 42878ac3eeSClemens Ladisch #define CM9780_MIX2RS_EX 0x2000 43878ac3eeSClemens Ladisch #define CM9780_P47_IO 0x4000 44878ac3eeSClemens Ladisch #define CM9780_PCBSW 0x8000 45878ac3eeSClemens Ladisch 46878ac3eeSClemens Ladisch /* GPIO setup */ 47878ac3eeSClemens Ladisch #define CM9780_GPI0EN 0x0001 48878ac3eeSClemens Ladisch #define CM9780_GPI1EN 0x0002 49878ac3eeSClemens Ladisch #define CM9780_SENSE_P 0x0004 50878ac3eeSClemens Ladisch #define CM9780_LOCK_P 0x0008 51878ac3eeSClemens Ladisch #define CM9780_GPIO0P 0x0010 52878ac3eeSClemens Ladisch #define CM9780_GPIO1P 0x0020 53878ac3eeSClemens Ladisch #define CM9780_GPIO0IO 0x0100 54878ac3eeSClemens Ladisch #define CM9780_GPIO1IO 0x0200 55878ac3eeSClemens Ladisch 56878ac3eeSClemens Ladisch /* GPIO status */ 57878ac3eeSClemens Ladisch #define CM9780_GPO0 0x0001 58878ac3eeSClemens Ladisch #define CM9780_GPO1 0x0002 59878ac3eeSClemens Ladisch #define CM9780_GPIO0S 0x0010 60878ac3eeSClemens Ladisch #define CM9780_GPIO1S 0x0020 61878ac3eeSClemens Ladisch #define CM9780_GPII0S 0x0100 62878ac3eeSClemens Ladisch #define CM9780_GPII1S 0x0200 63878ac3eeSClemens Ladisch 64878ac3eeSClemens Ladisch #endif 65