1*4882a593Smuzhiyun /* 2*4882a593Smuzhiyun * 3*4882a593Smuzhiyun * FocalTech TouchScreen driver. 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun * Copyright (c) 2012-2018, FocalTech Systems, Ltd., all rights reserved. 6*4882a593Smuzhiyun * 7*4882a593Smuzhiyun * This software is licensed under the terms of the GNU General Public 8*4882a593Smuzhiyun * License version 2, as published by the Free Software Foundation, and 9*4882a593Smuzhiyun * may be copied, distributed, and modified under those terms. 10*4882a593Smuzhiyun * 11*4882a593Smuzhiyun * This program is distributed in the hope that it will be useful, 12*4882a593Smuzhiyun * but WITHOUT ANY WARRANTY; without even the implied warranty of 13*4882a593Smuzhiyun * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14*4882a593Smuzhiyun * GNU General Public License for more details. 15*4882a593Smuzhiyun * 16*4882a593Smuzhiyun */ 17*4882a593Smuzhiyun /************************************************************************ 18*4882a593Smuzhiyun * 19*4882a593Smuzhiyun * File Name: focaltech_config.h 20*4882a593Smuzhiyun * 21*4882a593Smuzhiyun * Author: Focaltech Driver Team 22*4882a593Smuzhiyun * 23*4882a593Smuzhiyun * Created: 2016-08-08 24*4882a593Smuzhiyun * 25*4882a593Smuzhiyun * Abstract: global configurations 26*4882a593Smuzhiyun * 27*4882a593Smuzhiyun * Version: v1.0 28*4882a593Smuzhiyun * 29*4882a593Smuzhiyun ************************************************************************/ 30*4882a593Smuzhiyun #ifndef _LINUX_FOCLATECH_CONFIG_H_ 31*4882a593Smuzhiyun #define _LINUX_FOCLATECH_CONFIG_H_ 32*4882a593Smuzhiyun 33*4882a593Smuzhiyun /**************************************************/ 34*4882a593Smuzhiyun /****** G: A, I: B, S: C, U: D ******************/ 35*4882a593Smuzhiyun /****** chip type defines, do not modify *********/ 36*4882a593Smuzhiyun #define _FT8716 0x87160805 37*4882a593Smuzhiyun #define _FT8736 0x87360806 38*4882a593Smuzhiyun #define _FT8006M 0x80060807 39*4882a593Smuzhiyun #define _FT7250 0x72500807 40*4882a593Smuzhiyun #define _FT8607 0x86070809 41*4882a593Smuzhiyun #define _FT8006U 0x8006D80B 42*4882a593Smuzhiyun #define _FT8006S 0x8006A80B 43*4882a593Smuzhiyun #define _FT8613 0x8613080C 44*4882a593Smuzhiyun #define _FT8719 0x8719080D 45*4882a593Smuzhiyun #define _FT8739 0x8739080E 46*4882a593Smuzhiyun #define _FT8615 0x8615080F 47*4882a593Smuzhiyun #define _FT8201 0x82010810 48*4882a593Smuzhiyun #define _FT8006P 0x86220811 49*4882a593Smuzhiyun 50*4882a593Smuzhiyun #define _FT5416 0x54160402 51*4882a593Smuzhiyun #define _FT5426 0x54260402 52*4882a593Smuzhiyun #define _FT5435 0x54350402 53*4882a593Smuzhiyun #define _FT5436 0x54360402 54*4882a593Smuzhiyun #define _FT5526 0x55260402 55*4882a593Smuzhiyun #define _FT5526I 0x5526B402 56*4882a593Smuzhiyun #define _FT5446 0x54460402 57*4882a593Smuzhiyun #define _FT5346 0x53460402 58*4882a593Smuzhiyun #define _FT5446I 0x5446B402 59*4882a593Smuzhiyun #define _FT5346I 0x5346B402 60*4882a593Smuzhiyun #define _FT7661 0x76610402 61*4882a593Smuzhiyun #define _FT7511 0x75110402 62*4882a593Smuzhiyun #define _FT7421 0x74210402 63*4882a593Smuzhiyun #define _FT7681 0x76810402 64*4882a593Smuzhiyun #define _FT3C47U 0x3C47D402 65*4882a593Smuzhiyun #define _FT3417 0x34170402 66*4882a593Smuzhiyun #define _FT3517 0x35170402 67*4882a593Smuzhiyun #define _FT3327 0x33270402 68*4882a593Smuzhiyun #define _FT3427 0x34270402 69*4882a593Smuzhiyun #define _FT7311 0x73110402 70*4882a593Smuzhiyun 71*4882a593Smuzhiyun #define _FT5626 0x56260401 72*4882a593Smuzhiyun #define _FT5726 0x57260401 73*4882a593Smuzhiyun #define _FT5826B 0x5826B401 74*4882a593Smuzhiyun #define _FT5826S 0x5826C401 75*4882a593Smuzhiyun #define _FT7811 0x78110401 76*4882a593Smuzhiyun #define _FT3D47 0x3D470401 77*4882a593Smuzhiyun #define _FT3617 0x36170401 78*4882a593Smuzhiyun #define _FT3717 0x37170401 79*4882a593Smuzhiyun #define _FT3817B 0x3817B401 80*4882a593Smuzhiyun #define _FT3517U 0x3517D401 81*4882a593Smuzhiyun 82*4882a593Smuzhiyun #define _FT6236U 0x6236D003 83*4882a593Smuzhiyun #define _FT6336G 0x6336A003 84*4882a593Smuzhiyun #define _FT6336U 0x6336D003 85*4882a593Smuzhiyun #define _FT6436U 0x6436D003 86*4882a593Smuzhiyun 87*4882a593Smuzhiyun #define _FT3267 0x32670004 88*4882a593Smuzhiyun #define _FT3367 0x33670004 89*4882a593Smuzhiyun 90*4882a593Smuzhiyun #define _FT3327DQQ_XXX 0x3327D482 91*4882a593Smuzhiyun #define _FT5446DQS_XXX 0x5446D482 92*4882a593Smuzhiyun 93*4882a593Smuzhiyun #define _FT3518 0x35180481 94*4882a593Smuzhiyun #define _FT3558 0x35580481 95*4882a593Smuzhiyun #define _FT3528 0x35280481 96*4882a593Smuzhiyun #define _FT5536 0x55360481 97*4882a593Smuzhiyun 98*4882a593Smuzhiyun #define _FT5446U 0x5446D083 99*4882a593Smuzhiyun #define _FT5456U 0x5456D083 100*4882a593Smuzhiyun #define _FT3417U 0x3417D083 101*4882a593Smuzhiyun #define _FT5426U 0x5426D083 102*4882a593Smuzhiyun #define _FT3428 0x34280083 103*4882a593Smuzhiyun #define _FT3437U 0x3437D083 104*4882a593Smuzhiyun 105*4882a593Smuzhiyun #define _FT7302 0x73020084 106*4882a593Smuzhiyun #define _FT7202 0x72020084 107*4882a593Smuzhiyun #define _FT3308 0x33080084 108*4882a593Smuzhiyun 109*4882a593Smuzhiyun /*************************************************/ 110*4882a593Smuzhiyun 111*4882a593Smuzhiyun /* 112*4882a593Smuzhiyun * choose your ic chip type of focaltech 113*4882a593Smuzhiyun */ 114*4882a593Smuzhiyun #define FTS_CHIP_TYPE _FT8201 115*4882a593Smuzhiyun 116*4882a593Smuzhiyun /******************* Enables *********************/ 117*4882a593Smuzhiyun /*********** 1 to enable, 0 to disable ***********/ 118*4882a593Smuzhiyun 119*4882a593Smuzhiyun /* 120*4882a593Smuzhiyun * show debug log info 121*4882a593Smuzhiyun * enable it for debug, disable it for release 122*4882a593Smuzhiyun */ 123*4882a593Smuzhiyun #define FTS_DEBUG_EN 0 124*4882a593Smuzhiyun 125*4882a593Smuzhiyun /* 126*4882a593Smuzhiyun * Linux MultiTouch Protocol 127*4882a593Smuzhiyun * 1: Protocol B(default), 0: Protocol A 128*4882a593Smuzhiyun */ 129*4882a593Smuzhiyun #define FTS_MT_PROTOCOL_B_EN 1 130*4882a593Smuzhiyun 131*4882a593Smuzhiyun /* 132*4882a593Smuzhiyun * Report Pressure in multitouch 133*4882a593Smuzhiyun * 1:enable(default),0:disable 134*4882a593Smuzhiyun */ 135*4882a593Smuzhiyun #define FTS_REPORT_PRESSURE_EN 1 136*4882a593Smuzhiyun 137*4882a593Smuzhiyun /* 138*4882a593Smuzhiyun * Gesture function enable 139*4882a593Smuzhiyun * default: disable 140*4882a593Smuzhiyun */ 141*4882a593Smuzhiyun #define FTS_GESTURE_EN 0 142*4882a593Smuzhiyun 143*4882a593Smuzhiyun /* 144*4882a593Smuzhiyun * ESD check & protection 145*4882a593Smuzhiyun * default: disable 146*4882a593Smuzhiyun */ 147*4882a593Smuzhiyun #define FTS_ESDCHECK_EN 0 148*4882a593Smuzhiyun 149*4882a593Smuzhiyun /* 150*4882a593Smuzhiyun * Production test enable 151*4882a593Smuzhiyun * 1: enable, 0:disable(default) 152*4882a593Smuzhiyun */ 153*4882a593Smuzhiyun #define FTS_TEST_EN 0 154*4882a593Smuzhiyun 155*4882a593Smuzhiyun /* 156*4882a593Smuzhiyun * Glove mode enable 157*4882a593Smuzhiyun * 1: enable, 0:disable(default) 158*4882a593Smuzhiyun */ 159*4882a593Smuzhiyun #define FTS_GLOVE_EN 0 160*4882a593Smuzhiyun /* 161*4882a593Smuzhiyun * cover enable 162*4882a593Smuzhiyun * 1: enable, 0:disable(default) 163*4882a593Smuzhiyun */ 164*4882a593Smuzhiyun #define FTS_COVER_EN 0 165*4882a593Smuzhiyun /* 166*4882a593Smuzhiyun * Charger enable 167*4882a593Smuzhiyun * 1: enable, 0:disable(default) 168*4882a593Smuzhiyun */ 169*4882a593Smuzhiyun #define FTS_CHARGER_EN 0 170*4882a593Smuzhiyun 171*4882a593Smuzhiyun /* 172*4882a593Smuzhiyun * Nodes for tools, please keep enable 173*4882a593Smuzhiyun */ 174*4882a593Smuzhiyun #define FTS_SYSFS_NODE_EN 0 175*4882a593Smuzhiyun #define FTS_APK_NODE_EN 0 176*4882a593Smuzhiyun 177*4882a593Smuzhiyun /* 178*4882a593Smuzhiyun * Pinctrl enable 179*4882a593Smuzhiyun * default: disable 180*4882a593Smuzhiyun */ 181*4882a593Smuzhiyun #define FTS_PINCTRL_EN 0 182*4882a593Smuzhiyun 183*4882a593Smuzhiyun /* 184*4882a593Smuzhiyun * Customer power enable 185*4882a593Smuzhiyun * enable it when customer need control TP power 186*4882a593Smuzhiyun * default: disable 187*4882a593Smuzhiyun */ 188*4882a593Smuzhiyun #define FTS_POWER_SOURCE_CUST_EN 1 189*4882a593Smuzhiyun 190*4882a593Smuzhiyun /****************************************************/ 191*4882a593Smuzhiyun 192*4882a593Smuzhiyun /********************** Upgrade ****************************/ 193*4882a593Smuzhiyun /* 194*4882a593Smuzhiyun * auto upgrade, please keep enable 195*4882a593Smuzhiyun */ 196*4882a593Smuzhiyun #define FTS_AUTO_UPGRADE_EN 0 197*4882a593Smuzhiyun 198*4882a593Smuzhiyun /* 199*4882a593Smuzhiyun * auto upgrade for lcd cfg 200*4882a593Smuzhiyun */ 201*4882a593Smuzhiyun #define FTS_AUTO_LIC_UPGRADE_EN 1 202*4882a593Smuzhiyun 203*4882a593Smuzhiyun /* 204*4882a593Smuzhiyun * Check vendor_id number 205*4882a593Smuzhiyun * 0:No check vendor_id (default) 206*4882a593Smuzhiyun * 1/2/3: Check vendor_id for vendor compatibility 207*4882a593Smuzhiyun */ 208*4882a593Smuzhiyun #define FTS_GET_VENDOR_ID_NUM 0 209*4882a593Smuzhiyun 210*4882a593Smuzhiyun /* 211*4882a593Smuzhiyun * vendor_id(s) for vendor(s) to be compatible with. 212*4882a593Smuzhiyun * a confirmation of vendor_id(s) is recommended. 213*4882a593Smuzhiyun * FTS_VENDOR_ID = PANEL_ID << 8 + VENDOR_ID 214*4882a593Smuzhiyun * FTS_GET_VENDOR_ID_NUM == 0/1, no check vendor id, you may ignore them 215*4882a593Smuzhiyun * FTS_GET_VENDOR_ID_NUM > 1, compatible with FTS_VENDOR_ID 216*4882a593Smuzhiyun * FTS_GET_VENDOR_ID_NUM >= 2, compatible with FTS_VENDOR_ID2 217*4882a593Smuzhiyun * FTS_GET_VENDOR_ID_NUM >= 3, compatible with FTS_VENDOR_ID3 218*4882a593Smuzhiyun */ 219*4882a593Smuzhiyun #define FTS_VENDOR_ID 0x0000 220*4882a593Smuzhiyun #define FTS_VENDOR_ID2 0x0000 221*4882a593Smuzhiyun #define FTS_VENDOR_ID3 0x0000 222*4882a593Smuzhiyun 223*4882a593Smuzhiyun /* 224*4882a593Smuzhiyun * FW.i file for auto upgrade, you must replace it with your own 225*4882a593Smuzhiyun * define your own fw_file, the sample one to be replaced is invalid 226*4882a593Smuzhiyun * NOTE: if FTS_GET_VENDOR_ID_NUM > 1, it's the fw corresponding with FTS_VENDOR_ID 227*4882a593Smuzhiyun */ 228*4882a593Smuzhiyun #define FTS_UPGRADE_FW_FILE "include/firmware/fw_sample.h" 229*4882a593Smuzhiyun 230*4882a593Smuzhiyun /* 231*4882a593Smuzhiyun * if FTS_GET_VENDOR_ID_NUM >= 2, fw corrsponding with FTS_VENDOR_ID2 232*4882a593Smuzhiyun * define your own fw_file, the sample one is invalid 233*4882a593Smuzhiyun */ 234*4882a593Smuzhiyun #define FTS_UPGRADE_FW2_FILE "include/firmware/fw_sample.h" 235*4882a593Smuzhiyun 236*4882a593Smuzhiyun /* 237*4882a593Smuzhiyun * if FTS_GET_VENDOR_ID_NUM >= 3, fw corrsponding with FTS_VENDOR_ID3 238*4882a593Smuzhiyun * define your own fw_file, the sample one is invalid 239*4882a593Smuzhiyun */ 240*4882a593Smuzhiyun #define FTS_UPGRADE_FW3_FILE "include/firmware/fw_sample.h" 241*4882a593Smuzhiyun 242*4882a593Smuzhiyun /*********************************************************/ 243*4882a593Smuzhiyun 244*4882a593Smuzhiyun #endif /* _LINUX_FOCLATECH_CONFIG_H_ */ 245