94 lines
2.9 KiB
C
94 lines
2.9 KiB
C
/*
|
|
* Copyright (c) CompanyNameMagicTag 2020-2021. All rights reserved.
|
|
* Description: header file for AW88262 driver
|
|
*/
|
|
|
|
#ifndef AW88262_PA_H
|
|
#define AW88262_PA_H
|
|
|
|
#include "soc_uapi_vendor.h"
|
|
|
|
/* registers list */
|
|
#define AW88262_ID_REG (0x00)
|
|
#define AW88262_SYSST_REG (0x01)
|
|
#define AW88262_SYSINT_REG (0x02)
|
|
#define AW88262_SYSINTM_REG (0x03)
|
|
#define AW88262_SYSCTRL_REG (0x04)
|
|
#define AW88262_SYSCTRL2_REG (0x05)
|
|
#define AW88262_I2SCTRL_REG (0x06)
|
|
#define AW88262_I2SCFG1_REG (0x07)
|
|
#define AW88262_I2SCFG2_REG (0x08)
|
|
#define AW88262_HAGCCFG1_REG (0x09)
|
|
#define AW88262_HAGCCFG2_REG (0x0A)
|
|
#define AW88262_HAGCCFG3_REG (0x0B)
|
|
#define AW88262_HAGCCFG4_REG (0x0C)
|
|
#define AW88262_HAGCCFG5_REG (0x0D)
|
|
#define AW88262_HAGCCFG6_REG (0x0E)
|
|
#define AW88262_HAGCCFG7_REG (0x0F)
|
|
#define AW88262_HAGCST_REG (0x10)
|
|
#define AW88262_PRODID_REG (0x11)
|
|
#define AW88262_VBAT_REG (0x12)
|
|
#define AW88262_TEMP_REG (0x13)
|
|
#define AW88262_PVDD_REG (0x14)
|
|
#define AW88262_DBGCTRL_REG (0x20)
|
|
#define AW88262_I2SINT_REG (0x21)
|
|
#define AW88262_I2SCAPCNT_REG (0x22)
|
|
#define AW88262_CRCIN_REG (0x38)
|
|
#define AW88262_CRCOUT_REG (0x39)
|
|
#define AW88262_VSNCTRL1_REG (0x50)
|
|
#define AW88262_ISNCTRL1_REG (0x52)
|
|
#define AW88262_ISNCTRL2_REG (0x53)
|
|
#define AW88262_VTMCTRL1_REG (0x54)
|
|
#define AW88262_VTMCTRL2_REG (0x55)
|
|
#define AW88262_VTMCTRL3_REG (0x56)
|
|
#define AW88262_ISNDAT_REG (0x57)
|
|
#define AW88262_VSNDAT_REG (0x58)
|
|
#define AW88262_PWMCTRL_REG (0x59)
|
|
#define AW88262_PWMCTRL2_REG (0x5A)
|
|
#define AW88262_BSTCTRL1_REG (0x60)
|
|
#define AW88262_BSTCTRL2_REG (0x61)
|
|
#define AW88262_BSTCTRL3_REG (0x62)
|
|
#define AW88262_BSTDBG1_REG (0x63)
|
|
#define AW88262_BSTDBG2_REG (0x64)
|
|
#define AW88262_BSTDBG3_REG (0x65)
|
|
#define AW88262_PLLCTRL1_REG (0x66)
|
|
#define AW88262_PLLCTRL2_REG (0x67)
|
|
#define AW88262_PLLCTRL3_REG (0x68)
|
|
#define AW88262_CDACTRL1_REG (0x69)
|
|
#define AW88262_CDACTRL2_REG (0x6A)
|
|
#define AW88262_SADCCTRL_REG (0x6B)
|
|
#define AW88262_TESTCTRL1_REG (0x70)
|
|
#define AW88262_TESTCTRL2_REG (0x71)
|
|
#define AW88262_EFCTRL1_REG (0x72)
|
|
#define AW88262_EFCTRL2_REG (0x73)
|
|
#define AW88262_EFWH_REG (0x74)
|
|
#define AW88262_EFWM2_REG (0x75)
|
|
#define AW88262_EFWM1_REG (0x76)
|
|
#define AW88262_EFWL_REG (0x77)
|
|
#define AW88262_EFRH_REG (0x78)
|
|
#define AW88262_EFRM2_REG (0x79)
|
|
#define AW88262_EFRM1_REG (0x7A)
|
|
#define AW88262_EFRL_REG (0x7B)
|
|
#define AW88262_TESTDET_REG (0x7C)
|
|
|
|
#define AW88262_CHIP_ID 0x1852
|
|
#define REG_UNITE_SHIFT_COUNT 8
|
|
#define I2C_SEND_DATA_SHIFT_COUNT 8
|
|
#define REG_BIT_SHIFT_COUNT 4
|
|
#define REC_I2C_DATA_LEN 2
|
|
#define DELAY_MTIME 5
|
|
#define AW88262_MUTE 1
|
|
#define AW88262_UNMUTE 0
|
|
#define READ_DATA_SIZE 2
|
|
#define VCALB_OFFSET 13
|
|
#define ICALK_NEG_MASK 0xFC00
|
|
#define VCALK_NEG_MASK 0xFC00
|
|
#define CABL_BASE_VALUE 0x1000
|
|
#define ICALK_SIGN_MASK 0x200
|
|
#define VCALK_SIGN_MASK 0x200
|
|
|
|
td_s32 audio_aw88262_init(const uapi_vendor_codec_attr *attr);
|
|
td_s32 audio_aw88262_deinit(td_void);
|
|
|
|
#endif
|