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