10b966c5eSopenharmony_ciroot { 20b966c5eSopenharmony_ci platform { 30b966c5eSopenharmony_ci template dai_controller { 40b966c5eSopenharmony_ci match_attr = ""; 50b966c5eSopenharmony_ci serviceName = ""; 60b966c5eSopenharmony_ci } 70b966c5eSopenharmony_ci controller_0x120c1020 :: dai_controller { 80b966c5eSopenharmony_ci match_attr = "hdf_dai_driver"; 90b966c5eSopenharmony_ci serviceName = "dai_service"; 100b966c5eSopenharmony_ci 110b966c5eSopenharmony_ci idInfo { 120b966c5eSopenharmony_ci chipName = "rk3588"; 130b966c5eSopenharmony_ci chipIdRegister = 0xfe470000; 140b966c5eSopenharmony_ci chipIdSize = 0x1000; 150b966c5eSopenharmony_ci } 160b966c5eSopenharmony_ci 170b966c5eSopenharmony_ci regConfig { 180b966c5eSopenharmony_ci 190b966c5eSopenharmony_ci /* reg: register address 200b966c5eSopenharmony_ci rreg: register address 210b966c5eSopenharmony_ci shift: shift bits 220b966c5eSopenharmony_ci rshift: rshift bits 230b966c5eSopenharmony_ci min: min value 240b966c5eSopenharmony_ci max: max value 250b966c5eSopenharmony_ci mask: mask of value 260b966c5eSopenharmony_ci invert: enum InvertVal 0-uninvert 1-invert 270b966c5eSopenharmony_ci value: value 280b966c5eSopenharmony_ci 290b966c5eSopenharmony_ci reg, rreg, shift, value, min, max, mask, invert value 300b966c5eSopenharmony_ci */ 310b966c5eSopenharmony_ci ctrlParamsSeqConfig = [ 320b966c5eSopenharmony_ci 0xff, 0xff, 8, 8, 0x0, 0x1, 0x1, 0, 0, // accessory enable 330b966c5eSopenharmony_ci 0xff, 0xff, 0, 0, 0x0, 0x1, 0x1, 0, 0 // codec enable 340b966c5eSopenharmony_ci ]; 350b966c5eSopenharmony_ci 360b966c5eSopenharmony_ci 370b966c5eSopenharmony_ci controlsConfig = [ 380b966c5eSopenharmony_ci /* 390b966c5eSopenharmony_ci "External Codec Enable", 400b966c5eSopenharmony_ci "Internally Codec Enable", 410b966c5eSopenharmony_ci */ 420b966c5eSopenharmony_ci /*array index, iface, enable*/ 430b966c5eSopenharmony_ci 6, 4, 0, 440b966c5eSopenharmony_ci 7, 4, 0 450b966c5eSopenharmony_ci ]; 460b966c5eSopenharmony_ci 470b966c5eSopenharmony_ci daiStartupSeqConfig = [ 480b966c5eSopenharmony_ci 0x0000, 0x0000, 0, 0, 0, 0xF, 0xF, 0, 0xf, // AIP_I2S_REG_CFG0 490b966c5eSopenharmony_ci 0x0004, 0x0004, 0, 0, 0, 0xF, 0xF, 0, 0xf, // AIP_I2S_REG_CFG1 500b966c5eSopenharmony_ci 0x0008, 0x0008, 0, 0, 0, 0xFFFFF, 0xFFFFF, 0, 0x00071f1f, // AOP_I2S_REG_CFG0 510b966c5eSopenharmony_ci 0x0010, 0x0010, 16, 16, 0, 0xFFFFFFFF, 0xFFFFFFFF, 0, 0x1f0100 // AOP_I2S_REG_CFG1 520b966c5eSopenharmony_ci ]; 530b966c5eSopenharmony_ci 540b966c5eSopenharmony_ci daiParamsSeqConfig = [ 550b966c5eSopenharmony_ci 0x0008, 0x0008, 16, 16, 0x0, 0xFF, 0xFF, 0, 0x0, // ao i2s_frequency 560b966c5eSopenharmony_ci 0x0008, 0x0008, 0, 0, 0x1E, 0xFF, 0xFF, 0, 0x0, // ao i2s_frequency 570b966c5eSopenharmony_ci 0x0000, 0x0000, 0, 0, 0x0, 0xF, 0xF, 0, 0x0, // ao i2s_format 580b966c5eSopenharmony_ci 0x0000, 0x0000, 15, 15, 0x0, 0x3, 0x3, 0, 0x0, // ao i2s_channel 590b966c5eSopenharmony_ci 0x0008, 0x0008, 16, 16, 0x0, 0xFF, 0xFF, 0, 0x0, // ai i2s_frequency 600b966c5eSopenharmony_ci 0x0008, 0x0008, 8, 8, 0x1E, 0xFF, 0xFF, 0, 0x0, // ai i2s_frequency 610b966c5eSopenharmony_ci 0x0004, 0x0004, 0, 0, 0x0, 0xF, 0xF, 0, 0x0, // ai i2s_format 620b966c5eSopenharmony_ci 0x0004, 0x0004, 15, 15, 0x0, 0x3, 0x3, 0, 0x0 // ai i2s_channel 630b966c5eSopenharmony_ci ]; 640b966c5eSopenharmony_ci 650b966c5eSopenharmony_ci } 660b966c5eSopenharmony_ci } 670b966c5eSopenharmony_ci } 680b966c5eSopenharmony_ci} 69