board_cfg.h 32 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145
  1. /*
  2. * Copyright (c) 2015 Intel Corporation
  3. *
  4. * SPDX-License-Identifier: Apache-2.0
  5. */
  6. #ifndef __BOARD_CFG_H
  7. #define __BOARD_CFG_H
  8. #define LCD_PADDRV_LEVEL (1)
  9. #define LCD_CLK_PADDRV_LEVEL (2)
  10. #include <drivers/cfg_drv/dev_config.h>
  11. #include <soc.h>
  12. /*
  13. * The device module enables the definition, If 1, the corresponding module is opened, the GPIO configuration is enabled,
  14. * If 0, the corresponding module is closed, and the GPIO configuration is turned off
  15. */
  16. #define CONFIG_GPIO_A 1
  17. #define CONFIG_GPIO_A_NAME "GPIOA"
  18. #define CONFIG_GPIO_B 1
  19. #define CONFIG_GPIO_B_NAME "GPIOB"
  20. #define CONFIG_GPIO_C 1
  21. #define CONFIG_GPIO_C_NAME "GPIOC"
  22. #define CONFIG_WIO 1
  23. #define CONFIG_WIO_NAME "WIO"
  24. #define CONFIG_EXTEND_GPIO 0
  25. #define CONFIG_EXTEND_GPIO_NAME "GPIOD"
  26. #define CONFIG_GPIO_PIN2NAME(x) (((x) < 32) ? CONFIG_GPIO_A_NAME : (((x) < 64) ? CONFIG_GPIO_B_NAME : CONFIG_GPIO_C_NAME))
  27. #define CONFIG_SPI_FLASH_0 0
  28. #define CONFIG_SPI_FLASH_NAME "spi_flash"
  29. #define CONFIG_SPI_FLASH_1 0
  30. #define CONFIG_SPI_FLASH_1_NAME "spi_flash_1"
  31. #define CONFIG_SPI_FLASH_2 0
  32. #define CONFIG_SPI_FLASH_2_NAME "spi_flash_2"
  33. #define CONFIG_SIM_FLASH 0
  34. #define CONFIG_SIM_FLASH_NAME "sim_flash"
  35. #define CONFIG_BLOCK_DEV_FLASH 1
  36. #define CONFIG_BLOCK_DEV_FLASH_NAME "block_dev"
  37. #define CONFIG_ACTLOG_STORAGE_NAME CONFIG_SPI_FLASH_NAME
  38. #define CONFIG_SPINAND_0 0
  39. #define CONFIG_SPINAND_3 0
  40. #define CONFIG_SPINAND_FLASH_NAME "spinand"
  41. #define CONFIG_MMC_0 1
  42. #define CONFIG_MMC_0_NAME "MMC_0"
  43. #define CONFIG_MMC_1 0
  44. #define CONFIG_MMC_1_NAME "MMC_1"
  45. #define CONFIG_SD 1
  46. #define CONFIG_SD_NAME "sd"
  47. #define CONFIG_UART_0 1
  48. #define CONFIG_UART_0_NAME "UART_0"
  49. #define CONFIG_UART_1 0
  50. #define CONFIG_UART_1_NAME "UART_1"
  51. #define CONFIG_UART_2 0
  52. #define CONFIG_UART_2_NAME "UART_2"
  53. #define CONFIG_UART_3 0
  54. #define CONFIG_UART_3_NAME "UART_3"
  55. #define CONFIG_UART_4 0
  56. #define CONFIG_UART_4_NAME "UART_4"
  57. #define CONFIG_PWM 1
  58. #define CONFIG_PWM_NAME "PWM"
  59. #define CONFIG_I2C_0 0
  60. #define CONFIG_I2C_0_NAME "I2C_0"
  61. #define CONFIG_I2C_1 1
  62. #define CONFIG_I2C_1_NAME "I2C_1"
  63. #define CONFIG_I2C_2 0
  64. #define CONFIG_I2C_2_NAME "I2C_2"
  65. #define CONFIG_I2C_3 0
  66. #define CONFIG_I2C_3_NAME "I2C_3"
  67. #define CONFIG_SPI_1 0
  68. #define CONFIG_SPI_1_NAME "SPI_1"
  69. #define CONFIG_SPI_2 0
  70. #define CONFIG_SPI_2_NAME "SPI_2"
  71. #define CONFIG_SPI_3 0
  72. #define CONFIG_SPI_3_NAME "SPI_3"
  73. #define CONFIG_I2CMT_0 1
  74. #define CONFIG_I2CMT_0_NAME "I2CMT_0"
  75. #define CONFIG_I2CMT_1 1
  76. #define CONFIG_I2CMT_1_NAME "I2CMT_1"
  77. #define CONFIG_SPIMT_0 0
  78. #define CONFIG_SPIMT_0_NAME "SPIMT_0"
  79. #define CONFIG_SPIMT_1 0
  80. #define CONFIG_SPIMT_1_NAME "SPIMT_1"
  81. #define CONFIG_AUDIO_DAC_0 1
  82. #define CONFIG_AUDIO_DAC_0_NAME "DAC_0"
  83. #define CONFIG_AUDIO_ADC_0 1
  84. #define CONFIG_AUDIO_ADC_0_NAME "ADC_0"
  85. #define CONFIG_AUDIO_I2STX_0 0
  86. #define CONFIG_AUDIO_I2STX_0_NAME "I2STX_0"
  87. #define CONFIG_AUDIO_I2SRX_0 0
  88. #define CONFIG_AUDIO_I2SRX_0_NAME "I2SRX_0"
  89. #define CONFIG_AUDIO_SPDIFRX_0 0
  90. #define CONFIG_AUDIO_SPDIFRX_0_NAME "SPDIFRX_0"
  91. #define CONFIG_AUDIO_SPDIFTX_0 0
  92. #define CONFIG_AUDIO_SPDIFTX_0_NAME "SPDIFTX_0"
  93. #define CONFIG_PANEL 1
  94. #define CONFIG_LCD_DISPLAY_DEV_NAME "lcd_panel"
  95. #define CONFIG_DISPLAY_ENGINE_DEV 1
  96. #define CONFIG_DISPLAY_ENGINE_DEV_NAME "de_acts"
  97. #define CONFIG_DMA2D_LITE_DEV 1
  98. #define CONFIG_DMA2D_LITE_DEV_NAME "dma2d_lite_acts"
  99. #define CONFIG_JPEG_HW_DEV 1
  100. #define CONFIG_JPEG_HW_DEV_NAME "jpeg_hw_acts"
  101. #define CONFIG_LCDC_DEV 1
  102. #define CONFIG_LCDC_DEV_NAME "lcdc_acts"
  103. #define CONFIG_GPU_DEV 1
  104. #define CONFIG_GPU_DEV_NAME "gpu"
  105. #define CONFIG_ADCKEY 0
  106. #define CONFIG_INPUT_DEV_ACTS_ADCKEY_NAME "keyadc"
  107. #define CONFIG_GPIOKEY 1
  108. #define CONFIG_INPUT_DEV_ACTS_GPIOKEY_NAME "keygpio"
  109. #define CONFIG_ONOFFKEY 1
  110. #define CONFIG_INPUT_DEV_ACTS_ONOFF_KEY_NAME "onoffkey"
  111. #define CONFIG_TPKEY 1
  112. #define CONFIG_TPKEY_DEV_NAME "tpkey"
  113. #define CONFIG_ACTS_BATTERY 1
  114. #define CONFIG_ACTS_BATTERY_DEV_NAME "batadc"
  115. #define CONFIG_VIBRATOR 1
  116. #define CONFIG_VIBRATOR_DEV_NAME "VIBRATOR"
  117. #define CONFIG_CEC 0
  118. #define CONFIG_ACTS_BATTERY_NTC 1
  119. #define CONFIG_UART_0_USE_TX_DMA 1
  120. #define CONFIG_UART_0_TX_DMA_CHAN 0x2
  121. #define CONFIG_UART_0_TX_DMA_ID 1
  122. #define CONFIG_UART_0_USE_RX_DMA 1
  123. #define CONFIG_UART_0_RX_DMA_CHAN 0xff
  124. #define CONFIG_UART_0_RX_DMA_ID 1
  125. #define CONFIG_UART_1_USE_TX_DMA 0
  126. #define CONFIG_UART_1_TX_DMA_CHAN 0xff
  127. #define CONFIG_UART_1_TX_DMA_ID 2
  128. #define CONFIG_MMC_0_USE_DMA 1
  129. #define CONFIG_MMC_0_DMA_CHAN 0xff
  130. #define CONFIG_MMC_0_DMA_ID 5
  131. #define CONFIG_MMC_1_USE_DMA 0
  132. #define CONFIG_MMC_1_DMA_CHAN 0xff
  133. #define CONFIG_MMC_1_DMA_ID 6
  134. #define CONFIG_PWM_USE_DMA 1
  135. #define CONFIG_PWM_DMA_CHAN 0xff
  136. #define CONFIG_PWM_DMA_ID 21
  137. #define CONFIG_I2C_0_USE_DMA 0
  138. #define CONFIG_I2C_0_DMA_CHAN 0xff
  139. #define CONFIG_I2C_0_DMA_ID 19
  140. #define CONFIG_I2C_1_USE_DMA 0
  141. #define CONFIG_I2C_1_DMA_CHAN 0xff
  142. #define CONFIG_I2C_1_DMA_ID 20
  143. #define CONFIG_I2C_2_USE_DMA 0
  144. #define CONFIG_I2C_2_DMA_CHAN 0xff
  145. #define CONFIG_I2C_2_DMA_ID 24
  146. #define CONFIG_I2C_3_USE_DMA 0
  147. #define CONFIG_I2C_3_DMA_CHAN 0xff
  148. #define CONFIG_I2C_3_DMA_ID 25
  149. #define CONFIG_I2CMT_0_USE_DMA 0
  150. #define CONFIG_I2CMT_0_DMA_CHAN 0xff
  151. #define CONFIG_I2CMT_1_USE_DMA 0
  152. #define CONFIG_I2CMT_1_DMA_CHAN 0xff
  153. #define CONFIG_SPI_1_USE_DMA 1
  154. #define CONFIG_SPI_1_TXDMA_CHAN 0xff
  155. #define CONFIG_SPI_1_RXDMA_CHAN 0xff
  156. #define CONFIG_SPI_1_DMA_ID 8
  157. #define CONFIG_SPI_2_USE_DMA 1
  158. #define CONFIG_SPI_2_TXDMA_CHAN 0xff
  159. #define CONFIG_SPI_2_RXDMA_CHAN 0xff
  160. #define CONFIG_SPI_2_DMA_ID 9
  161. #define CONFIG_SPI_3_USE_DMA 1
  162. #define CONFIG_SPI_3_TXDMA_CHAN 0xff
  163. #define CONFIG_SPI_3_RXDMA_CHAN 0xff
  164. #define CONFIG_SPI_3_DMA_ID 10
  165. #define CONFIG_SPIMT_0_DMA_CHAN 0xff
  166. #define CONFIG_SPIMT_1_DMA_CHAN 0xff
  167. /* The DMA channel for DAC FIFO0 */
  168. #define CONFIG_AUDIO_DAC_0_FIFO0_DMA_CHAN (0xff)
  169. /* The DMA slot ID for DAC FIFO0 */
  170. #define CONFIG_AUDIO_DAC_0_FIFO0_DMA_ID (0xb)
  171. /* The DMA channel for DAC FIFO1 */
  172. #define CONFIG_AUDIO_DAC_0_FIFO1_DMA_CHAN (0xff)
  173. /* The DMA slot ID for DAC FIFO1 */
  174. #define CONFIG_AUDIO_DAC_0_FIFO1_DMA_ID (0xc)
  175. /* The DMA channel for ADC FIFO0 */
  176. #define CONFIG_AUDIO_ADC_0_FIFO0_DMA_CHAN (0xff)
  177. /* The DMA slot ID for ADC FIFO0 */
  178. #define CONFIG_AUDIO_ADC_0_FIFO0_DMA_ID (0xb)
  179. /* The DMA channel for ADC FIFO1 */
  180. #define CONFIG_AUDIO_ADC_0_FIFO1_DMA_CHAN (0xff)
  181. /* The DMA slot ID for ADC FIFO1 */
  182. #define CONFIG_AUDIO_ADC_0_FIFO1_DMA_ID (0xc)
  183. /* The DMA channel for I2STX FIFO0 */
  184. #define CONFIG_AUDIO_I2STX_0_FIFO0_DMA_CHAN (0xff)
  185. /* The DMA slot ID for I2STX FIFO0 */
  186. #define CONFIG_AUDIO_I2STX_0_FIFO0_DMA_ID (0xe)
  187. /* The DMA channel for I2SRX FIFO0 */
  188. #define CONFIG_AUDIO_I2SRX_0_FIFO0_DMA_CHAN (0xff)
  189. /* The DMA slot ID for I2SRX FIFO0 */
  190. #define CONFIG_AUDIO_I2SRX_0_FIFO0_DMA_ID (0xe)
  191. /* The DMA channel for SPDIFRX FIFO0 */
  192. #define CONFIG_AUDIO_SPDIFRX_0_FIFO0_DMA_CHAN (0xff)
  193. /* The DMA slot ID for SPDIFRX FIFO0 */
  194. #define CONFIG_AUDIO_SPDIFRX_0_FIFO0_DMA_ID (0x10)
  195. /*
  196. * Device module interrupt priority definition
  197. */
  198. #define CONFIG_BTC_IRQ_PRI 0
  199. #define CONFIG_TWS_IRQ_PRI 0
  200. #define CONFIG_UART_0_IRQ_PRI 0
  201. #define CONFIG_UART_1_IRQ_PRI 0
  202. #define CONFIG_MMC_0_IRQ_PRI 0
  203. #define CONFIG_MMC_1_IRQ_PRI 0
  204. #define CONFIG_DMA_IRQ_PRI 0
  205. #define CONFIG_MPU_IRQ_PRI 0
  206. #define CONFIG_GPIO_IRQ_PRI 0
  207. #define CONFIG_I2C_0_IRQ_PRI 0
  208. #define CONFIG_I2C_1_IRQ_PRI 0
  209. #define CONFIG_I2C_2_IRQ_PRI 0
  210. #define CONFIG_I2C_3_IRQ_PRI 0
  211. #define CONFIG_SPI_1_IRQ_PRI 0
  212. #define CONFIG_SPI_2_IRQ_PRI 0
  213. #define CONFIG_SPI_3_IRQ_PRI 0
  214. #define CONFIG_I2CMT_0_IRQ_PRI 0
  215. #define CONFIG_I2CMT_1_IRQ_PRI 0
  216. #define CONFIG_SPIMT_0_IRQ_PRI 0
  217. #define CONFIG_SPIMT_1_IRQ_PRI 0
  218. #define CONFIG_AUDIO_DAC_0_IRQ_PRI 0
  219. #define CONFIG_AUDIO_ADC_0_IRQ_PRI 0
  220. #define CONFIG_AUDIO_I2STX_0_IRQ_PRI 0
  221. #define CONFIG_AUDIO_I2SRX_0_IRQ_PRI 0
  222. #define CONFIG_AUDIO_SPDIFRX_0_IRQ_PRI 0
  223. #define CONFIG_PMU_IRQ_PRI 0
  224. #define CONFIG_RTC_IRQ_PRI 0
  225. #define CONFIG_WDT_0_IRQ_PRI 0
  226. #define CONFIG_DSP_IRQ_PRI 0
  227. #define CONFIG_PMUADC_IRQ_PRI 0
  228. /*
  229. spi nor flash cfg
  230. */
  231. #define CONFIG_SPI_FLASH_CHIP_SIZE 0x2000000
  232. #define CONFIG_SPI_FLASH_BUS_WIDTH 4
  233. #define CONFIG_SPI_FLASH_DELAY_CHAIN (11*3) //unit:0.25ns
  234. #define CONFIG_SPI_FLASH_NO_IRQ_LOCK 1
  235. #define CONFIG_SPI_FLASH_FREQ_MHZ 96
  236. //#define CONFIG_SPI0_NOR_DTR_MODE
  237. //#define CONFIG_SPI0_NOR_QPI_MODE
  238. //#define CONFIG_SPI_XIP_READ
  239. #define CONFIG_SPI_XIP_VADDR 0x12000000 /*max 32MB xip read*/
  240. /*
  241. spi nand flash cfg
  242. */
  243. #define CONFIG_SPINAND_USE_SPICONTROLER 0
  244. #define CONFIG_SPINAND_FLASH_BUS_WIDTH 4
  245. #define CONFIG_SPINAND_FLASH_FREQ_MHZ 96
  246. /*
  247. mmc board cfg
  248. */
  249. #define CONFIG_MMC_0_BUS_WIDTH 4
  250. #define CONFIG_MMC_0_CLKSEL 0 /*0 or 1, config by pinctrls*/
  251. #define CONFIG_MMC_0_DATA_REG_WIDTH 4
  252. #define CONFIG_MMC_0_USE_GPIO_IRQ 0
  253. #define CONFIG_MMC_0_GPIO_IRQ_DEV CONFIG_GPIO_A_NAME /*CONFIG_GPIO_A_NAME&CONFIG_GPIO_B_NAME&CONFIG_GPIO_C_NAME*/
  254. #define CONFIG_MMC_0_GPIO_IRQ_NUM 10 /*GPIOA10*/
  255. #define CONFIG_MMC_0_GPIO_IRQ_FLAG 0 /*0=GPIO_ACTIVE_HIGH OR 1=GPIO_ACTIVE_LOW*/
  256. #define CONFIG_MMC_0_ENABLE_SDIO_IRQ 0 /* If 1 to enable SD0 SDIO IRQ */
  257. #define CONFIG_MMC_1_BUS_WIDTH 4
  258. #define CONFIG_MMC_1_CLKSEL 0
  259. #define CONFIG_MMC_1_DATA_REG_WIDTH 1
  260. #define CONFIG_MMC_1_MFP
  261. #define CONFIG_MMC_1_USE_GPIO_IRQ 0
  262. #define CONFIG_MMC_1_ENABLE_SDIO_IRQ 0 /* If 1 to enable SD1 SDIO IRQ */
  263. #define CONFIG_MMC_ACTS_ERROR_DETAIL 1 /* If 1 to print detail information when error occured */
  264. #define CONFIG_MMC_WAIT_DAT1_BUSY 1 /* If 1 to wait SD/MMC card data 1 pin busy */
  265. #define CONFIG_MMC_YIELD_WAIT_DMA_DONE 1 /* If 1 to yield task to wait DMA done */
  266. #define CONFIG_MMC_SD0_FIFO_WIDTH_8BITS 0 /* If 1 to enable SD0 FIFO width 8 bits transfer */
  267. #define CONFIG_MMC_STATE_FIFO 0 /* If 1 to enable using FIFO state for CPU read/write operations */
  268. /*
  269. sd board cfg
  270. */
  271. #define CONFIG_SD_MMC_DEV CONFIG_MMC_0_NAME /*CONFIG_MMC_0_NAME or CONFIG_MMC_1_NAME*/
  272. /*
  273. uart board cfg
  274. */
  275. #define CONFIG_UART_0_SPEED 2000000
  276. #define CONFIG_UART_1_SPEED 115200
  277. /*
  278. pwm board cfg
  279. */
  280. #define CONFIG_PWM_CYCLE 8000
  281. /*
  282. I2C board cfg
  283. */
  284. #define CONFIG_I2C_0_CLK_FREQ 100000
  285. #define CONFIG_I2C_0_MAX_ASYNC_ITEMS 10
  286. #define CONFIG_I2C_1_CLK_FREQ 100000
  287. #define CONFIG_I2C_1_MAX_ASYNC_ITEMS 3
  288. #define CONFIG_I2C_2_CLK_FREQ 100000
  289. #define CONFIG_I2C_2_MAX_ASYNC_ITEMS 3
  290. #define CONFIG_I2C_3_CLK_FREQ 100000
  291. #define CONFIG_I2C_3_MAX_ASYNC_ITEMS 3
  292. /*
  293. SPI board cfg
  294. */
  295. /*
  296. I2CMT cfg
  297. */
  298. #define CONFIG_I2CMT_0_CLK_FREQ 400000
  299. #define CONFIG_I2CMT_1_CLK_FREQ 400000
  300. /*
  301. SPIMT cfg
  302. */
  303. /*
  304. tp board cfg
  305. */
  306. #define CONFIG_TP_RESET_GPIO 1
  307. #define CONFIG_TP_RESET_GPIO_NAME CONFIG_GPIO_B_NAME
  308. #define CONFIG_TP_RESET_GPIO_NUM 17
  309. #define CONFIG_TP_RESET_GPIO_FLAG GPIO_ACTIVE_LOW
  310. /*
  311. audio board cfg
  312. */
  313. /**
  314. * The DAC working mode in dedicated PCB layout.
  315. * - 0: single-end(non-direct drive) mode
  316. * - 1: single-end(direct drive VRO) mode
  317. * - 2: differential mode
  318. */
  319. #define CONFIG_AUDIO_DAC_0_LAYOUT (2)
  320. /* If 1 to enable DAC high performance which only works in differential layout */
  321. #define CONFIG_AUDIO_DAC_HIGH_PERFORMACE_DIFF_EN (1)
  322. #if (CONFIG_AUDIO_DAC_HIGH_PERFORMACE_DIFF_EN == 1)
  323. #define CONFIG_AUDIO_DAC_HIGH_PERFORMANCE_SHCL_PW (0xc8)
  324. #define CONFIG_AUDIO_DAC_HIGH_PERFORMANCE_SHCL_SET (0xe1)
  325. #define CONFIG_AUDIO_DAC_HIGH_PERFORMANCE_SHCL_CURBIAS (0)
  326. #endif
  327. /**
  328. * The LEOPARD DAC PA gain setting as below:
  329. * The LEOPARD DAC PA gain setting as below:
  330. * PA gain DARSET = 0 DARSET = 1
  331. * 7 2.72VPP ------
  332. * 6 2.23VPP ------
  333. * 5 1.74VPP ------
  334. * 4 1.20VPP 2.71VPP
  335. * 3 0.98VPP 2.22VPP
  336. * 2 0.76VPP 1.72VPP
  337. * 1 0.54VPP 1.23VPP
  338. * 0 0.32VPP 0.74VPP
  339. */
  340. #define CONFIG_AUDIO_DAC_0_PA_VOL (4)
  341. /* Enable DAC left and right channels mix function. */
  342. #define CONFIG_AUDIO_DAC_0_LR_MIX (0)
  343. /* Enable DAC SDM(noise detect mute) function. */
  344. #define CONFIG_AUDIO_DAC_0_NOISE_DETECT_MUTE (1)
  345. /* SDM mute counter configuration. */
  346. #define CONFIG_AUDIO_DAC_0_SDM_CNT (0x1000)
  347. /* SDM noise dectection threshold */
  348. #define CONFIG_AUDIO_DAC_0_SDM_THRES (0x800)
  349. /* Enable DAC automute function when continuously output 512x(configurable) samples 0 data. */
  350. #define CONFIG_AUDIO_DAC_0_AUTOMUTE (0)
  351. /* Enable ADC loopback to DAC function. */
  352. #define CONFIG_AUDIO_DAC_0_LOOPBACK (0)
  353. /* If 1 to mute the DAC left channel. */
  354. #define CONFIG_AUDIO_DAC_0_LEFT_MUTE (0)
  355. /* If 1 to mute the DAC right channel. */
  356. #define CONFIG_AUDIO_DAC_0_RIGHT_MUTE (0)
  357. /* Auto mute counter configuration. */
  358. #define CONFIG_AUDIO_DAC_0_AM_CNT (0x1000)
  359. /* Auto noise dectection threshold */
  360. #define CONFIG_AUDIO_DAC_0_AM_THRES (0)
  361. /* If 1 to enable DAC automute IRQ function. */
  362. #define CONFIG_AUDIO_DAC_0_AM_IRQ (0)
  363. /* The threshold to generate half empty IRQ signal. */
  364. #define CONFIG_AUDIO_DAC_0_PCMBUF_HE_THRES (0xE0)
  365. /* The threshold to generate half full IRQ signal. */
  366. #define CONFIG_AUDIO_DAC_0_PCMBUF_HF_THRES (0xF0)
  367. /* If 1 to open external PA when power on */
  368. #define CONFIG_POWERON_OPEN_EXTERNAL_PA (0)
  369. /* If 1 to enable DAC power perfered */
  370. #define CONFIG_AUDIO_DAC_POWER_PREFERRED (1)
  371. /* If 1 to wait for writting PCMBUF completly */
  372. #define CONFIG_AUDIO_DAC_WAIT_WRITE_PCMBUF_FINISH (1)
  373. /* The timeout out of writing PCMBUF in microsecond */
  374. #define CONFIG_AUDIO_DAC_WAIT_WRITE_PCMBUF_TIMEOUT_US (1000000)
  375. /* The sleep time in millisecond to of writing PCMBUF */
  376. #define CONFIG_AUDIO_DAC_WAIT_WRITE_PCMBUF_SLEEP_MS (0)
  377. #if (CONFIG_AUDIO_DAC_WAIT_WRITE_PCMBUF_FINISH != 0)
  378. /* Wait until next time writing pcmbuf to write previous one completely */
  379. #define CONFIG_AUDIO_DAC_WAIT_WRITE_PCMBUF_NEXT_TIME (1)
  380. #endif
  381. /********************************** I2STX CONFIGURATION **********************************/
  382. /**
  383. * I2STX channel number selection.
  384. * - 2: 2 channels
  385. * - 4: 4 channels(TDM)
  386. * - 8: 8 channels(TDM)
  387. */
  388. #define CONFIG_AUDIO_I2STX_0_CHANNEL_NUM (2)
  389. /**
  390. * I2STX transfer format selection.
  391. * - 0: I2S format
  392. * - 1: left-justified format
  393. * - 2: right-justified format
  394. * - 3: TDM format
  395. */
  396. #define CONFIG_AUDIO_I2STX_0_FORMAT (0)
  397. /**
  398. * I2STX BCLK data width.
  399. * - 0: 32bits
  400. * - 1: 16bits
  401. */
  402. #define CONFIG_AUDIO_I2STX_0_BCLK_WIDTH (0)
  403. /* Enable the SRD(sample rate detect) function. */
  404. #define CONFIG_AUDIO_I2STX_0_SRD_EN (0)
  405. /**
  406. * I2STX master or slaver mode selection.
  407. * - 0: master
  408. * - 1: slaver
  409. */
  410. #define CONFIG_AUDIO_I2STX_0_MODE (0)
  411. /* Enable in slave mode MCLK to use internal clock. */
  412. #define CONFIG_AUDIO_I2STX_0_SLAVE_INTERNAL_CLK (0)
  413. /**
  414. * I2STX LRCLK process selection.
  415. * - 0: 50% duty for I2S
  416. * - 1: 1 BCLK
  417. */
  418. #define CONFIG_AUDIO_I2STX_0_LRCLK_PROC (0)
  419. /**
  420. * I2STX MCLK reverse selection.
  421. * - 0: normal
  422. * - 1: reverse
  423. */
  424. #define CONFIG_AUDIO_I2STX_0_MCLK_REVERSE (0)
  425. /* Enable I2STX channel BCLK/LRCLK alway existed which used in master mode. */
  426. #define CONFIG_AUDIO_I2STX_0_ALWAYS_OPEN (0)
  427. /**
  428. * I2STX transfer TDM format selection.
  429. * - 0: I2S format
  430. * - 1: left-justified format
  431. */
  432. #define CONFIG_AUDIO_I2STX_0_TDM_FORMAT (0)
  433. /**
  434. * I2STX TDM frame start position selection.
  435. * - 0: the rising edge of LRCLK with a pulse.
  436. * - 1: the rising edge of LRCLK with a 50% duty cycle.
  437. * - 2: the falling edge of LRCLK with a 50% duty cycle.
  438. */
  439. #define CONFIG_AUDIO_I2STX_0_TDM_FRAME (0)
  440. /**
  441. * I2STX data output delay selection.
  442. * - 0: 2 mclk cycles after the bclk rising edge.
  443. * - 1: 3 mclk cycles after the bclk rising edge.
  444. * - 2: 4 mclk cycles after the bclk rising edge.
  445. * - 3: 5 mclk cycles after the bclk rising edge.
  446. */
  447. #define CONFIG_AUDIO_I2STX_0_TX_DELAY (0)
  448. /**
  449. * PCM enable
  450. * selet pcm mode
  451. * 0:disable pcm enable i2s
  452. * 1:enable pcm disable i2s
  453. */
  454. #define CONFIG_AUDIO_PCMTX_0_EN (0)
  455. /**
  456. * first PCM enable
  457. * set pcm format
  458. * 0: short frame
  459. * 1: long frame
  460. */
  461. #define CONFIG_AUDIO_PCMTX_0_FORMART (1)
  462. /**
  463. * first PCM enable
  464. * set pcm slot
  465. * 0: slot 1
  466. * 1: slot 2
  467. * 2: slot 4
  468. * 3: slot 8
  469. */
  470. #define CONFIG_AUDIO_PCMTX_0_SLOT (1)
  471. /********************************** SPDIFTX CONFIGURATION **********************************/
  472. /* Enable the clock of SPDIFTX source from I2STX div2 clock. */
  473. #define CONFIG_AUDIO_SPDIFTX_0_CLK_I2STX_DIV2 (0)
  474. /********************************** ADC CONFIGURATION **********************************/
  475. /* The end address of SRAM which used by DMA interleaved mode */
  476. #define AUDIO_IN_DMA_RESERVED_ADDRESS (0x02000000)
  477. /**
  478. * ADC0 channel HPF auto-set time selection.
  479. * - 0: 1.3ms in 48kfs
  480. * - 1: 5ms in 48kfs
  481. * - 2: 10ms in 48kfs
  482. * - 3: 20ms in 48kfs
  483. */
  484. #define CONFIG_AUDIO_ADC_0_CH0_HPF_TIME (1)
  485. /* ADC channel0 frequency which range from 0 ~ 111111b. */
  486. #define CONFIG_AUDIO_ADC_0_CH0_FREQUENCY (0)
  487. /* If 1 to enable ADC channel0 HPF high frequency range. */
  488. #define CONFIG_AUDIO_ADC_0_CH0_HPF_FC_HIGH (0)
  489. /**
  490. * ADC channel1 HPF auto-set time selection.
  491. * - 0: 1.3ms in 48kfs
  492. * - 1: 5ms in 48kfs
  493. * - 2: 10ms in 48kfs
  494. * - 3: 20ms in 48kfs
  495. */
  496. #define CONFIG_AUDIO_ADC_0_CH1_HPF_TIME (1)
  497. /* ADC channel1 frequency which range from 0 ~ 111111b. */
  498. #define CONFIG_AUDIO_ADC_0_CH1_FREQUENCY (0)
  499. /* If 1 to enable ADC channel1 HPF high frequency range. */
  500. #define CONFIG_AUDIO_ADC_0_CH1_HPF_FC_HIGH (0)
  501. /**
  502. * ADC channel2 HPF auto-set time selection.
  503. * - 0: 1.3ms in 48kfs
  504. * - 1: 5ms in 48kfs
  505. * - 2: 10ms in 48kfs
  506. * - 3: 20ms in 48kfs
  507. */
  508. #define CONFIG_AUDIO_ADC_0_CH2_HPF_TIME (1)
  509. /* ADC channel2 frequency which range from 0 ~ 111111b. */
  510. #define CONFIG_AUDIO_ADC_0_CH2_FREQUENCY (0)
  511. /* If 1 to enable ADC channel2 HPF high frequency range. */
  512. #define CONFIG_AUDIO_ADC_0_CH2_HPF_FC_HIGH (0)
  513. /**
  514. * ADC channel3 HPF auto-set time selection.
  515. * - 0: 1.3ms in 48kfs
  516. * - 1: 5ms in 48kfs
  517. * - 2: 10ms in 48kfs
  518. * - 3: 20ms in 48kfs
  519. */
  520. #define CONFIG_AUDIO_ADC_0_CH3_HPF_TIME (1)
  521. /* ADC channel3 frequency which range from 0 ~ 111111b. */
  522. #define CONFIG_AUDIO_ADC_0_CH3_FREQUENCY (0)
  523. /* If 1 to enable ADC channel3 HPF high frequency range. */
  524. #define CONFIG_AUDIO_ADC_0_CH3_HPF_FC_HIGH (0)
  525. /**
  526. * Audio LDO output voltage selection.
  527. * - 0: 1.6v
  528. * - 1: 1.7v
  529. * - 2: 1.8v
  530. * - 3: 1.9v
  531. */
  532. #define CONFIG_AUDIO_ADC_0_LDO_VOLTAGE (1)
  533. /*
  534. * Audio VMIC control MIC power as <vmic-ctl0, vmic-ctl1, vmic-ctl2>.
  535. * - 0x: disable VMIC OP
  536. * - 2: bypass VMIC OP
  537. * - 3: enable VMIC OP
  538. */
  539. #define CONFIG_AUDIO_ADC_0_VMIC_CTL_ARRAY {3, 3, 3}
  540. /**
  541. * Audio VMIC control the MIC voltage as <vmic-vol0, vmic-vol1>.
  542. * - 0: 0.8 AVCC
  543. * - 1: 0.85 AVCC
  544. * - 2: 0.9 AVCC
  545. * - 3: 0.95 AVCC
  546. */
  547. #define CONFIG_AUDIO_ADC_0_VMIC_VOLTAGE_ARRAY {2, 2, 2}
  548. /* Enable ADC fast capacitor charge function. */
  549. #define CONFIG_AUDIO_ADC_0_FAST_CAP_CHARGE (0)
  550. /**
  551. * ADC channels selection for AEC.
  552. * - 0: select ADC0 for AEC
  553. * - 1: select ADC1 for AEC
  554. */
  555. #define CONFIG_AUDIO_ADC_0_AEC_SEL (1)
  556. /********************************** I2SRX CONFIGURATION **********************************/
  557. /**
  558. * I2SRX channel number selection.
  559. * - 2: 2 channels
  560. * - 4: 4 channels(TDM)
  561. * - 8: 8 channels(TDM)
  562. */
  563. #define CONFIG_AUDIO_I2SRX_0_CHANNEL_NUM (2)
  564. /**
  565. * I2SRX transfer format selection.
  566. * - 0: I2S format
  567. * - 1: left-justified format
  568. * - 2: right-justified format
  569. * - 3: TDM format
  570. */
  571. #define CONFIG_AUDIO_I2SRX_0_FORMAT (0)
  572. /**
  573. * I2SRX BCLK data width.
  574. * - 0: 32bits
  575. * - 1: 16bits
  576. */
  577. #define CONFIG_AUDIO_I2SRX_0_BCLK_WIDTH (0)
  578. /* Enable the SRD(sample rate detect) function. */
  579. #define CONFIG_AUDIO_I2SRX_0_SRD_EN (1)
  580. /**
  581. * I2SRX master or slaver mode selection.
  582. * - 0: master
  583. * - 1: slaver
  584. */
  585. #define CONFIG_AUDIO_I2SRX_0_MODE (0)
  586. /* Enable in slave mode MCLK to use internal clock. */
  587. #define CONFIG_AUDIO_I2SRX_0_SLAVE_INTERNAL_CLK (0)
  588. /**
  589. * I2STX LRCLK process selection.
  590. * - 0: 50% duty for I2S
  591. * - 1: 1 BCLK
  592. */
  593. #define CONFIG_AUDIO_I2SRX_0_LRCLK_PROC (0)
  594. /**
  595. * I2SRX MCLK reverse selection.
  596. * - 0: normal
  597. * - 1: reverse
  598. */
  599. #define CONFIG_AUDIO_I2SRX_0_MCLK_REVERSE (0)
  600. /**
  601. * I2SRX transfer TDM format selection.
  602. * - 0: I2S format
  603. * - 1: left-justified format
  604. */
  605. #define CONFIG_AUDIO_I2SRX_0_TDM_FORMAT (0)
  606. /**
  607. * I2SRX TDM frame start position selection.
  608. * - 0: the rising edge of LRCLK with a pulse.
  609. * - 1: the rising edge of LRCLK with a 50% duty cycle.
  610. * - 2: the falling edge of LRCLK with a 50% duty cycle.
  611. */
  612. #define CONFIG_AUDIO_I2SRX_0_TDM_FRAME (0)
  613. /* If 1 to enable the I2SRX clock source from I2STX. */
  614. #define CONFIG_AUDIO_I2SRX_0_CLK_FROM_I2STX (0)
  615. /**
  616. * PCM enable
  617. * selet pcm mode
  618. * 0:disable pcm enable i2s
  619. * 1:enable pcm disable i2s
  620. */
  621. #define CONFIG_AUDIO_PCMRX_0_EN (0)
  622. /**
  623. * first PCM enable
  624. * set pcm format
  625. * 0: long frame
  626. * 1: short frame
  627. */
  628. #define CONFIG_AUDIO_PCMRX_0_FORMART (1)
  629. /**
  630. * first PCM enable
  631. * set pcm slot
  632. * 0: slot 1
  633. * 1: slot 2
  634. * 2: slot 4
  635. * 3: slot 8
  636. */
  637. #define CONFIG_AUDIO_PCMRX_0_SLOT (1)
  638. /********************************** SPDIFRX CONFIGURATION **********************************/
  639. /* Specify minimal CORE_PLL clock for spdifrx. */
  640. #define CONFIG_AUDIO_SPDIFRX_0_MIN_COREPLL_CLOCK (50000000)
  641. /*
  642. * dma2d lite cfg
  643. */
  644. #define CONFIG_DMA2D_LITE_SDMA_CHAN 1
  645. /*
  646. * jpeg hw cfg
  647. */
  648. #define CONFIG_JPEG_HW_INPUT_SDMA_CHAN 2
  649. #define CONFIG_JPEG_HW_OUTPUT_SDMA_CHAN 3
  650. #define CONFIG_JPEG_HW_COUPLE_SDMA_CHAN 4
  651. #define CONFIG_MEM_OPT_SDMA_CHAN 4
  652. /*
  653. * jpeg cfg
  654. */
  655. /* jpeg clock speed */
  656. #define CONFIG_JPEG_CLOCK_KHZ (200000)
  657. /*
  658. * GPU cfg
  659. */
  660. /* GPU clock speed */
  661. #define CONFIG_GPU_CLOCK_KHZ (200000)
  662. /*
  663. * DE cfg
  664. */
  665. /* DE clock speed */
  666. #define CONFIG_DISPLAY_ENGINE_CLOCK_KHZ (200000)
  667. /*
  668. * LCDC cfg
  669. */
  670. /* LCDC y-flip mode enabled */
  671. #define CONFIG_LCDC_Y_FLIP 0
  672. /*
  673. * panel cfg
  674. */
  675. #define CONFIG_PANEL_PORT_TYPE PANEL_PORT_QSPI
  676. #define CONFIG_PANEL_PORT_CS (0)
  677. #define CONFIG_PANEL_PORT_SPI_CPOL (1)
  678. #define CONFIG_PANEL_PORT_SPI_CPHA (1)
  679. #define CONFIG_PANEL_PORT_SPI_DUAL_LANE (1)
  680. /* Accepted values: 1, 2, 4, 8 */
  681. #define CONFIG_PANEL_PORT_SPI_AHB_CLK_DIVISION (2)
  682. /* X-Resolution */
  683. #define CONFIG_PANEL_TIMING_HACTIVE (466)
  684. /* Y-Resolution */
  685. #define CONFIG_PANEL_TIMING_VACTIVE (466)
  686. /* Pixel transfer clock rate in KHz */
  687. #define CONFIG_PANEL_TIMING_PIXEL_CLK_KHZ (60000)
  688. /* Refresh rate in Hz */
  689. #define CONFIG_PANEL_TIMING_REFRESH_RATE_HZ (60)
  690. /* TE signal exists */
  691. #define CONFIG_PANEL_TIMING_TE_ACTIVE (1)
  692. //#define CONFIG_PANEL_BACKLIGHT_PWM PWM_CFG_MAKE(CONFIG_PWM_NAME, 7, 255, 1)
  693. //#define CONFIG_PANEL_BACKLIGHT_GPIO GPIO_CFG_MAKE(CONFIG_GPIO_C_NAME, 0, GPIO_ACTIVE_HIGH, 1)
  694. #define CONFIG_PANEL_BRIGHTNESS_DELAY_PERIODS (0)
  695. /* brightness range [0, 255] */
  696. #define CONFIG_PANEL_BRIGHTNESS (255)
  697. #define CONFIG_PANEL_AOD_BRIGHTNESS (128)
  698. #define CONFIG_PANEL_TE_SCANLINE (300)
  699. /* fixed screen offset due to material or other issue */
  700. #define CONFIG_PANEL_FIX_OFFSET_X (6)
  701. #define CONFIG_PANEL_FIX_OFFSET_Y (0)
  702. /* (logical) resolution area reported to user */
  703. #define CONFIG_PANEL_HOR_RES (CONFIG_PANEL_TIMING_HACTIVE)
  704. #define CONFIG_PANEL_VER_RES (CONFIG_PANEL_TIMING_VACTIVE)
  705. #define CONFIG_PANEL_OFFSET_X (0)
  706. #define CONFIG_PANEL_OFFSET_Y (0)
  707. /* round panel */
  708. #define CONFIG_PANEL_ROUND_SHAPE (1)
  709. /* ESD check period in milliseconds */
  710. #define CONFIG_PANEL_ESD_CHECK_PERIOD 3000
  711. /* Optimization:
  712. * At most 7 areas (3~7) will be posted for full screen refresh.
  713. *
  714. * Areas are defined as (x1, y1, x2, y2), and must be arraged from top to bottom.
  715. * Both their position and size must also be even.
  716. */
  717. #if 1
  718. #define CONFIG_PANEL_FULL_SCREEN_OPT_AREA \
  719. { \
  720. { 124 - CONFIG_PANEL_OFFSET_X, 0 - CONFIG_PANEL_OFFSET_Y, 341 - CONFIG_PANEL_OFFSET_X, 27 - CONFIG_PANEL_OFFSET_Y }, \
  721. { 68 - CONFIG_PANEL_OFFSET_X, 28 - CONFIG_PANEL_OFFSET_Y, 397 - CONFIG_PANEL_OFFSET_X, 67 - CONFIG_PANEL_OFFSET_Y }, \
  722. { 28 - CONFIG_PANEL_OFFSET_X, 68 - CONFIG_PANEL_OFFSET_Y, 437 - CONFIG_PANEL_OFFSET_X, 123 - CONFIG_PANEL_OFFSET_Y }, \
  723. { 0 - CONFIG_PANEL_OFFSET_X, 124 - CONFIG_PANEL_OFFSET_Y, 465 - CONFIG_PANEL_OFFSET_X, 341 - CONFIG_PANEL_OFFSET_Y }, \
  724. { 28 - CONFIG_PANEL_OFFSET_X, 342 - CONFIG_PANEL_OFFSET_Y, 437 - CONFIG_PANEL_OFFSET_X, 397 - CONFIG_PANEL_OFFSET_Y }, \
  725. { 68 - CONFIG_PANEL_OFFSET_X, 398 - CONFIG_PANEL_OFFSET_Y, 397 - CONFIG_PANEL_OFFSET_X, 437 - CONFIG_PANEL_OFFSET_Y }, \
  726. { 124 - CONFIG_PANEL_OFFSET_X, 438 - CONFIG_PANEL_OFFSET_Y, 341 - CONFIG_PANEL_OFFSET_X, 465 - CONFIG_PANEL_OFFSET_Y }, \
  727. }
  728. #else
  729. #define CONFIG_PANEL_FULL_SCREEN_OPT_AREA \
  730. { \
  731. { 68 - CONFIG_PANEL_OFFSET_X, 0 - CONFIG_PANEL_OFFSET_Y, 397 - CONFIG_PANEL_OFFSET_X, 67 - CONFIG_PANEL_OFFSET_Y }, \
  732. { 0 - CONFIG_PANEL_OFFSET_X, 68 - CONFIG_PANEL_OFFSET_Y, 465 - CONFIG_PANEL_OFFSET_X, 397 - CONFIG_PANEL_OFFSET_Y }, \
  733. { 68 - CONFIG_PANEL_OFFSET_X, 398 - CONFIG_PANEL_OFFSET_Y, 397 - CONFIG_PANEL_OFFSET_X, 465 - CONFIG_PANEL_OFFSET_Y }, \
  734. }
  735. #endif
  736. /*
  737. * tp cfg
  738. */
  739. #define CONFIG_TPKEY_I2C_NAME CONFIG_I2C_1_NAME
  740. #define CONFIG_TPKEY_LOWPOWER (1)
  741. /*
  742. PMU cfg
  743. */
  744. /* If 1 to enable the ON-OFF key short press detection function. */
  745. #define CONFIG_PMU_ONOFF_SHORT_DETECT (1)
  746. /* If 1 to indicates that ON-OFF key and REMOTE key use the same WIO */
  747. #define CONFIG_PMU_ONOFF_REMOTE_SAME_WIO (1)
  748. /*
  749. PMUADC cfg
  750. */
  751. #define CONFIG_PMUADC_DEBOUNCE (1)
  752. /** PMUADC battery channel over sampling counter
  753. * - 0: disable over sampling
  754. * - 1: 4 times
  755. * - 2: 8 times
  756. * - 3: 16 times
  757. */
  758. #define CONFIG_PMUADC_BAT_AVG_CNT (2)
  759. /* If 1 to wait PMUADC AVG sample completely */
  760. #define CONFIG_PMUADC_BAT_WAIT_AVG_COMPLETE (0)
  761. /** PMUADC LRADC1 channel over sampling counter
  762. * - 0: disable over sampling
  763. * - 1: 4 times
  764. * - 2: 8 times
  765. * - 3: 16 times
  766. */
  767. #define CONFIG_PMUADC_LRADC1_AVG (0)
  768. /** PMUADC LRADC2 channel over sampling counter
  769. * - 0: disable over sampling
  770. * - 1: 4 times
  771. * - 2: 8 times
  772. * - 3: 16 times
  773. */
  774. #define CONFIG_PMUADC_LRADC2_AVG (2)
  775. /**
  776. * PMU ADC LRADC clock source selection.
  777. * - 0: RC32K
  778. * - 1: CK32K768
  779. * - 2: RC4M/16
  780. * - 3: HOSC/128
  781. */
  782. #define CONFIG_PMUADC_CLOCK_SOURCE (3)
  783. /**
  784. * PMU ADC LRADC clock source divisor selection.
  785. * - 0: /1
  786. * - 1: /2
  787. * - 2: /4
  788. * - 3: /8
  789. */
  790. #define CONFIG_PMUADC_CLOCK_DIV (0)
  791. /**
  792. * PMU ADC previous buffer current BIAS selection.
  793. * - 0: 0.25uA
  794. * - 1: 0.5uA
  795. * - 2: 0.75uA
  796. * - 3: 1uA
  797. */
  798. #define CONFIG_PMUADC_IBIAS_BUF_SEL (0)
  799. /**
  800. * PMU ADC core current BIAS selection.
  801. * - 0: 0.25uA
  802. * - 1: 0.5uA
  803. * - 2: 0.75uA
  804. * - 3: 1uA
  805. */
  806. #define CONFIG_PMUADC_IBIAS_ADC_SEL (1)
  807. /* The timeout of sync counter8hz */
  808. #define CONFIG_PMU_COUNTER8HZ_SYNC_TIMEOUT_US (2000000)
  809. /* If 1 to enable backup time when power off */
  810. #define CONFIG_PM_BACKUP_TIME_FUNCTION_EN (1)
  811. #define CONFIG_PM_BACKUP_TIME_NVRAM_ITEM_NAME "PM_BAK_TIME"
  812. /*
  813. ADCKEY cfg
  814. */
  815. /* The time interval in millisecond to polling read the PMU ADC key. */
  816. #define CONFIG_ADCKEY_POLL_INTERVAL_MS (20)
  817. /* The total time in millisecond to polling read the PMU ADC key. */
  818. #define CONFIG_ADCKEY_POLL_TOTAL_MS (1000)
  819. /* The stable counter of sample filter. */
  820. #define CONFIG_ADCKEY_SAMPLE_FILTER_CNT (3)
  821. /* The LRADC channel for ADC KEY */
  822. #define CONFIG_ADCKEY_LRADC_CHAN (PMUADC_ID_LRADC3)
  823. /*
  824. ONOFFKEY cfg
  825. */
  826. /*
  827. * The time threshold in millisecond to estimate the on-off key press is a long time pressed.
  828. * - 0: 50ms < t < 0.125s is a short pressed key press; t >= 0.125s is a long pressed key.
  829. * - 1: 50ms < t < 0.25s is a short pressed key; t >= 0.25s is a long pressed key.
  830. * - 2: 50ms < t < 0.5s is a short pressed key press; t >= 0.5s is a long pressed key.
  831. * - 3: 50ms < t < 1s is a short pressed key press; t >= 1s is a long pressed key.
  832. * - 4: 50ms < t < 1.5s is a short pressed key press; t >= 1.5s is a long pressed key.
  833. * - 5: 50ms < t < 2s is a short pressed key press; t >= 2s is a long pressed key.
  834. * - 6: 50ms < t < 3s is a short pressed key press; t >= 3s is a long pressed key.
  835. * - 7: 50ms < t < 4s is a short pressed key press; t >= 4s is a long pressed key.
  836. */
  837. #define CONFIG_ONOFFKEY_LONG_PRESS_TIME (3)
  838. /*
  839. * ON-OFF key function selection.
  840. * - 0: no function
  841. * - 1: reset
  842. * - 2: restart
  843. */
  844. #define CONFIG_ONOFFKEY_FUNCTION (1)
  845. /* The time interval in millisecond to polling read the PMU ADC key. */
  846. #define CONFIG_ONOFFKEY_POLL_INTERVAL_MS (20)
  847. /* The total time in millisecond to polling onoff ADC key */
  848. #define CONFIG_ONOFFKEY_POLL_TOTAL_MS (6000)
  849. /* The stable counter for ONOFF KEY sample filter */
  850. #define CONFIG_ONOFFKEY_SAMPLE_FILTER_CNT (3)
  851. /* The key code of ONOFF KEY which defined by user */
  852. #define CONFIG_ONOFFKEY_USER_KEYCODE (1) /* KEY_POWER which reference to input_dev.h */
  853. /*
  854. GPIOKEY cfg
  855. */
  856. /* The time interval in millisecond to polling read the GPIO key. */
  857. #define CONFIG_GPIOKEY_POLL_INTERVAL_MS (20)
  858. /* The total time in millisecond to polling onoff GPIO key */
  859. #define CONFIG_GPIOKEY_POLL_TOTAL_MS (6000)
  860. /* The stable counter for GPIO KEY sample filter */
  861. #define CONFIG_GPIOKEY_SAMPLE_FILTER_CNT (3)
  862. /* The voltage level when gpio key is pressed */
  863. #define CONFIG_GPIOKEY_PRESSED_VOLTAGE_LEVEL (1)
  864. /* The key code of GPIO KEY which defined by user */
  865. #define CONFIG_GPIOKEY_USER_KEYCODE (9) /* KEY_TBD which reference to input_dev.h */
  866. /*
  867. RTC cfg
  868. */
  869. /**
  870. * The RTC clock source selection.
  871. * - 0: RTC_CLKSRC_HOSC_4HZ
  872. * - 1: RTC_CLKSRC_LOSC_100HZ
  873. * - 2: RTC_CLKSRC_HCL_RC32K_100HZ
  874. */
  875. #define CONFIG_RTC_CLK_SOURCE (2)
  876. /**
  877. * if 1 eanble The RTC clock calibration in power off
  878. RTC CONFIG_RTC_CLK_SOURCE=2 calibration can enable
  879. */
  880. #define CONFIG_RTC_ENABLE_CALIBRATION 1
  881. /*
  882. Watchdog cfg
  883. */
  884. /*
  885. Battery cfg
  886. */
  887. /* The time interval for battery voltage showing debug. */
  888. #define CONFIG_BATTERY_DEBUG_INTERVAL_SEC (60)
  889. #ifdef CONFIG_ACTS_BATTERY_SUPPLY_EXT_COULOMETER
  890. /* extern coulometer device name */
  891. #define CONFIG_ACTS_EXT_COULOMETER_DEV_NAME "coulometer"
  892. /* extern coulometer use i2c device name */
  893. #define CONFIG_COULOMETER_I2C_NAME CONFIG_I2C_1_NAME
  894. /* extern coulometer poll interval period ms */
  895. #define CONFIG_COULOMETER_INTERVAL_MSEC (1000)
  896. #endif
  897. #ifdef CONFIG_ACTS_BATTERY_SUPPLY_EXTERNAL
  898. /* extern charger use i2c device name */
  899. #define CONFIG_EXT_CHARGER_I2C_NAME CONFIG_I2C_1_NAME
  900. #define CONFIG_EXT_CHARGER_ISR_GPIO GPIO_CFG_MAKE(CONFIG_WIO_NAME, 1, GPIO_ACTIVE_LOW, 1) // WIO1
  901. #endif
  902. #endif /* __BOARD_CFG_H */