10a7ce71fSopenharmony_ciroot { 20a7ce71fSopenharmony_ci input_config { 30a7ce71fSopenharmony_ci touchConfig { 40a7ce71fSopenharmony_ci touch0 { 50a7ce71fSopenharmony_ci boardConfig { 60a7ce71fSopenharmony_ci match_attr = "touch_device1"; 70a7ce71fSopenharmony_ci inputAttr { 80a7ce71fSopenharmony_ci /* 0:touch 1:key 2:keyboard 3:mouse 4:button 5:crown 6:encoder */ 90a7ce71fSopenharmony_ci inputType = 0; 100a7ce71fSopenharmony_ci solutionX = 480; 110a7ce71fSopenharmony_ci solutionY = 960; 120a7ce71fSopenharmony_ci devName = "main_touch"; 130a7ce71fSopenharmony_ci } 140a7ce71fSopenharmony_ci 150a7ce71fSopenharmony_ci// Hi3516DV300-Runhe gt911--5p5 & 4p0 160a7ce71fSopenharmony_ci busConfig { 170a7ce71fSopenharmony_ci // 0:i2c 1:spi 180a7ce71fSopenharmony_ci busType = 0; 190a7ce71fSopenharmony_ci busNum = 6; 200a7ce71fSopenharmony_ci clkGpio = 86; 210a7ce71fSopenharmony_ci dataGpio = 87; 220a7ce71fSopenharmony_ci i2cClkIomux = [0x114f0048, 0x403]; 230a7ce71fSopenharmony_ci i2cDataIomux = [0x114f004c, 0x403]; 240a7ce71fSopenharmony_ci } 250a7ce71fSopenharmony_ci 260a7ce71fSopenharmony_ci pinConfig { 270a7ce71fSopenharmony_ci rstGpio = 3; 280a7ce71fSopenharmony_ci intGpio = 4; 290a7ce71fSopenharmony_ci rstRegCfg = [0x112f0094, 0x400]; 300a7ce71fSopenharmony_ci intRegCfg = [0x112f0098, 0x400]; 310a7ce71fSopenharmony_ci } 320a7ce71fSopenharmony_ci 330a7ce71fSopenharmony_ci// Hi3516DV300-Ruishi gt911--7p0 340a7ce71fSopenharmony_ci/* 350a7ce71fSopenharmony_ci busConfig { 360a7ce71fSopenharmony_ci // 0:i2c 1:spi 370a7ce71fSopenharmony_ci busType = 0; 380a7ce71fSopenharmony_ci busNum = 6; 390a7ce71fSopenharmony_ci clkGpio = 26; 400a7ce71fSopenharmony_ci dataGpio = 27; 410a7ce71fSopenharmony_ci i2cClkIomux = [0x114f0048, 0x403]; 420a7ce71fSopenharmony_ci i2cDataIomux = [0x114f004c, 0x403]; 430a7ce71fSopenharmony_ci } 440a7ce71fSopenharmony_ci 450a7ce71fSopenharmony_ci pinConfig { 460a7ce71fSopenharmony_ci rstGpio = 13; 470a7ce71fSopenharmony_ci intGpio = 12; 480a7ce71fSopenharmony_ci rstRegCfg = [0x10ff0030, 0x400]; 490a7ce71fSopenharmony_ci intRegCfg = [0x10ff002C, 0x400]; 500a7ce71fSopenharmony_ci } 510a7ce71fSopenharmony_ci*/ 520a7ce71fSopenharmony_ci// Hi3516DV300-Demo board: ft6336--2p35 530a7ce71fSopenharmony_ci/* 540a7ce71fSopenharmony_ci busConfig { 550a7ce71fSopenharmony_ci // 0:i2c 1:spi 560a7ce71fSopenharmony_ci busType = 0; 570a7ce71fSopenharmony_ci busNum = 3; 580a7ce71fSopenharmony_ci clkGpio = 2; 590a7ce71fSopenharmony_ci dataGpio = 1; 600a7ce71fSopenharmony_ci i2cClkIomux = [0x112f0090, 0x5f1]; 610a7ce71fSopenharmony_ci i2cDataIomux = [0x112f008c, 0x5f1]; 620a7ce71fSopenharmony_ci } 630a7ce71fSopenharmony_ci 640a7ce71fSopenharmony_ci pinConfig { 650a7ce71fSopenharmony_ci rstGpio = 3; 660a7ce71fSopenharmony_ci intGpio = 4; 670a7ce71fSopenharmony_ci rstRegCfg = [0x112f0094, 0x5f0]; 680a7ce71fSopenharmony_ci intRegCfg = [0x112f0098, 0x5f0]; 690a7ce71fSopenharmony_ci } 700a7ce71fSopenharmony_ci*/ 710a7ce71fSopenharmony_ci powerConfig { 720a7ce71fSopenharmony_ci /* 0:unused 1:ldo 2:gpio 3:pmic */ 730a7ce71fSopenharmony_ci vccType = 2; 740a7ce71fSopenharmony_ci vccNum = 20; // gpio20 750a7ce71fSopenharmony_ci vccValue = 1800; 760a7ce71fSopenharmony_ci vciType = 1; 770a7ce71fSopenharmony_ci vciNum = 12; // ldo12 780a7ce71fSopenharmony_ci vciValue = 3300; 790a7ce71fSopenharmony_ci } 800a7ce71fSopenharmony_ci 810a7ce71fSopenharmony_ci featureConfig { 820a7ce71fSopenharmony_ci capacitanceTest = 0; 830a7ce71fSopenharmony_ci gestureMode = 0; 840a7ce71fSopenharmony_ci gloverMOde = 0; 850a7ce71fSopenharmony_ci coverMode = 0; 860a7ce71fSopenharmony_ci chargerMode = 0; 870a7ce71fSopenharmony_ci knuckleMode = 0; 880a7ce71fSopenharmony_ci } 890a7ce71fSopenharmony_ci } 900a7ce71fSopenharmony_ci 910a7ce71fSopenharmony_ci chipConfig { 920a7ce71fSopenharmony_ci template touchChip { 930a7ce71fSopenharmony_ci match_attr = ""; 940a7ce71fSopenharmony_ci chipName = "gt911"; 950a7ce71fSopenharmony_ci vendorName = "zsj"; 960a7ce71fSopenharmony_ci chipInfo = "AAAA11222"; // 4-ProjectName, 2-TP IC, 3-TP Module 970a7ce71fSopenharmony_ci /* 0:i2c 1:spi*/ 980a7ce71fSopenharmony_ci busType = 0; 990a7ce71fSopenharmony_ci deviceAddr = 0x5D; 1000a7ce71fSopenharmony_ci /* 0:None 1:Rising 2:Failing 4:High-level 8:Low-level */ 1010a7ce71fSopenharmony_ci irqFlag = 2; 1020a7ce71fSopenharmony_ci maxSpeed = 400; 1030a7ce71fSopenharmony_ci chipVersion = 0; //parse Coord TypeA 1040a7ce71fSopenharmony_ci powerSequence { 1050a7ce71fSopenharmony_ci /* [type, status, dir , delay] 1060a7ce71fSopenharmony_ci <type> 0:none 1:vcc-1.8v 2:vci-3.3v 3:reset 4:int 1070a7ce71fSopenharmony_ci <status> 0:off or low 1:on or high 2:no ops 1080a7ce71fSopenharmony_ci <dir> 0:input 1:output 2:no ops 1090a7ce71fSopenharmony_ci <delay> meanings delay xms, 20: delay 20ms 1100a7ce71fSopenharmony_ci */ 1110a7ce71fSopenharmony_ci powerOnSeq = [4, 0, 1, 0, 1120a7ce71fSopenharmony_ci 3, 0, 1, 10, 1130a7ce71fSopenharmony_ci 3, 1, 2, 60, 1140a7ce71fSopenharmony_ci 4, 2, 0, 0]; 1150a7ce71fSopenharmony_ci suspendSeq = [3, 0, 2, 10]; 1160a7ce71fSopenharmony_ci resumeSeq = [3, 1, 2, 10]; 1170a7ce71fSopenharmony_ci powerOffSeq = [3, 0, 2, 10, 1180a7ce71fSopenharmony_ci 1, 0, 2, 20]; 1190a7ce71fSopenharmony_ci } 1200a7ce71fSopenharmony_ci } 1210a7ce71fSopenharmony_ci 1220a7ce71fSopenharmony_ci chip0 :: touchChip { 1230a7ce71fSopenharmony_ci match_attr = "zsj_gt911_5p5"; 1240a7ce71fSopenharmony_ci chipInfo = "ZIDN45100"; // 4-ProjectName, 2-TP IC, 3-TP Module 1250a7ce71fSopenharmony_ci chipVersion = 0; //parse point by TypeA 1260a7ce71fSopenharmony_ci } 1270a7ce71fSopenharmony_ci 1280a7ce71fSopenharmony_ci chip1 :: touchChip { 1290a7ce71fSopenharmony_ci match_attr = "zsj_gt911_4p0"; 1300a7ce71fSopenharmony_ci chipInfo = "ZIDN45101"; 1310a7ce71fSopenharmony_ci chipVersion = 1; //parse point by TypeB 1320a7ce71fSopenharmony_ci } 1330a7ce71fSopenharmony_ci 1340a7ce71fSopenharmony_ci chip2 :: touchChip { 1350a7ce71fSopenharmony_ci match_attr = "tg_gt911_7p0"; 1360a7ce71fSopenharmony_ci vendorName = "tg"; 1370a7ce71fSopenharmony_ci chipInfo = "ZIDN45102"; 1380a7ce71fSopenharmony_ci chipVersion = 2; //parse point by TypeC 1390a7ce71fSopenharmony_ci } 1400a7ce71fSopenharmony_ci 1410a7ce71fSopenharmony_ci chip3 :: touchChip { 1420a7ce71fSopenharmony_ci match_attr = "st_ft6336_2p35"; 1430a7ce71fSopenharmony_ci chipName = "ft6336"; 1440a7ce71fSopenharmony_ci vendorName = "st"; 1450a7ce71fSopenharmony_ci chipInfo = "ZIDN53200"; 1460a7ce71fSopenharmony_ci deviceAddr = 0x38; 1470a7ce71fSopenharmony_ci irqFlag = 1; // Rising 1480a7ce71fSopenharmony_ci powerSequence { 1490a7ce71fSopenharmony_ci /* [type, status, dir , delay] 1500a7ce71fSopenharmony_ci <type> 0:none 1:vcc-1.8v 2:vci-3.3v 3:reset 4:int 1510a7ce71fSopenharmony_ci <status> 0:off or low 1:on or high 2:no ops 1520a7ce71fSopenharmony_ci <dir> 0:input 1:output 2:no ops 1530a7ce71fSopenharmony_ci <delay> meanings delay xms, 20: delay 20ms 1540a7ce71fSopenharmony_ci */ 1550a7ce71fSopenharmony_ci powerOnSeq = [4, 2, 0, 0, 1560a7ce71fSopenharmony_ci 3, 1, 1, 2, 1570a7ce71fSopenharmony_ci 3, 0, 2, 5, 1580a7ce71fSopenharmony_ci 3, 1, 2, 200]; 1590a7ce71fSopenharmony_ci suspendSeq = [3, 0, 2, 10]; 1600a7ce71fSopenharmony_ci resumeSeq = [3, 1, 2, 10]; 1610a7ce71fSopenharmony_ci powerOffSeq = [3, 0, 2, 10, 1620a7ce71fSopenharmony_ci 1, 0, 2, 20]; 1630a7ce71fSopenharmony_ci } 1640a7ce71fSopenharmony_ci } 1650a7ce71fSopenharmony_ci } 1660a7ce71fSopenharmony_ci } 1670a7ce71fSopenharmony_ci } 1680a7ce71fSopenharmony_ci 1690a7ce71fSopenharmony_ci keyConfig { 1700a7ce71fSopenharmony_ci keyList = ["power", "VolUp", "VolDown", "Up", "Down", "Left", "Right"]; 1710a7ce71fSopenharmony_ci keyInfoList { 1720a7ce71fSopenharmony_ci key1 { 1730a7ce71fSopenharmony_ci match_attr = "key_device0"; 1740a7ce71fSopenharmony_ci /* 0:touch 1:key 2:keyboard 3:mouse 4:button 5:crown 6:encoder */ 1750a7ce71fSopenharmony_ci inputType = 1; 1760a7ce71fSopenharmony_ci keyName = "power"; 1770a7ce71fSopenharmony_ci gpioNum = 1; 1780a7ce71fSopenharmony_ci irqFlag = 3; 1790a7ce71fSopenharmony_ci debounceTime = 80; 1800a7ce71fSopenharmony_ci } 1810a7ce71fSopenharmony_ci 1820a7ce71fSopenharmony_ci key2 { 1830a7ce71fSopenharmony_ci keyName = "volUp"; 1840a7ce71fSopenharmony_ci gpioNum = 31; 1850a7ce71fSopenharmony_ci irqFlag = 1; 1860a7ce71fSopenharmony_ci debounceTime = 80; 1870a7ce71fSopenharmony_ci } 1880a7ce71fSopenharmony_ci 1890a7ce71fSopenharmony_ci key3 { 1900a7ce71fSopenharmony_ci keyName = "volDown"; 1910a7ce71fSopenharmony_ci gpioNum = 32; 1920a7ce71fSopenharmony_ci irqFlag = 1; 1930a7ce71fSopenharmony_ci debounceTime = 80; 1940a7ce71fSopenharmony_ci } 1950a7ce71fSopenharmony_ci } 1960a7ce71fSopenharmony_ci } 1970a7ce71fSopenharmony_ci } 1980a7ce71fSopenharmony_ci} 199