1*4882a593Smuzhiyun* Texas Instruments OMAP 2*4882a593Smuzhiyun 3*4882a593SmuzhiyunOMAP is currently using a static file per SoC family to describe the 4*4882a593SmuzhiyunIPs present in the SoC. 5*4882a593SmuzhiyunOn top of that an omap_device is created to extend the platform_device 6*4882a593Smuzhiyuncapabilities and to allow binding with one or several hwmods. 7*4882a593SmuzhiyunThe hwmods will contain all the information to build the device: 8*4882a593Smuzhiyunaddress range, irq lines, dma lines, interconnect, PRCM register, 9*4882a593Smuzhiyunclock domain, input clocks. 10*4882a593SmuzhiyunFor the moment just point to the existing hwmod, the next step will be 11*4882a593Smuzhiyunto move data from hwmod to device-tree representation. 12*4882a593Smuzhiyun 13*4882a593Smuzhiyun 14*4882a593SmuzhiyunRequired properties: 15*4882a593Smuzhiyun- compatible: Every devices present in OMAP SoC should be in the 16*4882a593Smuzhiyun form: "ti,XXX" 17*4882a593Smuzhiyun- ti,hwmods: list of hwmod names (ascii strings), that comes from the OMAP 18*4882a593Smuzhiyun HW documentation, attached to a device. Must contain at least 19*4882a593Smuzhiyun one hwmod. 20*4882a593Smuzhiyun 21*4882a593SmuzhiyunOptional properties: 22*4882a593Smuzhiyun- ti,no_idle_on_suspend: When present, it prevents the PM to idle the module 23*4882a593Smuzhiyun during suspend. 24*4882a593Smuzhiyun- ti,no-reset-on-init: When present, the module should not be reset at init 25*4882a593Smuzhiyun- ti,no-idle-on-init: When present, the module should not be idled at init 26*4882a593Smuzhiyun- ti,no-idle: When present, the module is never allowed to idle. 27*4882a593Smuzhiyun 28*4882a593SmuzhiyunExample: 29*4882a593Smuzhiyun 30*4882a593Smuzhiyunspinlock@1 { 31*4882a593Smuzhiyun compatible = "ti,omap4-spinlock"; 32*4882a593Smuzhiyun ti,hwmods = "spinlock"; 33*4882a593Smuzhiyun}; 34*4882a593Smuzhiyun 35*4882a593SmuzhiyunSoC Type (optional): 36*4882a593Smuzhiyun 37*4882a593Smuzhiyun- General Purpose devices 38*4882a593Smuzhiyun compatible = "ti,gp" 39*4882a593Smuzhiyun- High Security devices 40*4882a593Smuzhiyun compatible = "ti,hs" 41*4882a593Smuzhiyun 42*4882a593SmuzhiyunSoC Families: 43*4882a593Smuzhiyun 44*4882a593Smuzhiyun- OMAP2 generic - defaults to OMAP2420 45*4882a593Smuzhiyun compatible = "ti,omap2" 46*4882a593Smuzhiyun- OMAP3 generic 47*4882a593Smuzhiyun compatible = "ti,omap3" 48*4882a593Smuzhiyun- OMAP4 generic - defaults to OMAP4430 49*4882a593Smuzhiyun compatible = "ti,omap4" 50*4882a593Smuzhiyun- OMAP5 generic - defaults to OMAP5430 51*4882a593Smuzhiyun compatible = "ti,omap5" 52*4882a593Smuzhiyun- DRA7 generic - defaults to DRA742 53*4882a593Smuzhiyun compatible = "ti,dra7" 54*4882a593Smuzhiyun- AM33x generic 55*4882a593Smuzhiyun compatible = "ti,am33xx" 56*4882a593Smuzhiyun- AM43x generic - defaults to AM4372 57*4882a593Smuzhiyun compatible = "ti,am43" 58*4882a593Smuzhiyun 59*4882a593SmuzhiyunSoCs: 60*4882a593Smuzhiyun 61*4882a593Smuzhiyun- OMAP2420 62*4882a593Smuzhiyun compatible = "ti,omap2420", "ti,omap2" 63*4882a593Smuzhiyun- OMAP2430 64*4882a593Smuzhiyun compatible = "ti,omap2430", "ti,omap2" 65*4882a593Smuzhiyun 66*4882a593Smuzhiyun- OMAP3430 67*4882a593Smuzhiyun compatible = "ti,omap3430", "ti,omap3" 68*4882a593Smuzhiyun legacy: "ti,omap34xx" - please do not use any more 69*4882a593Smuzhiyun- AM3517 70*4882a593Smuzhiyun compatible = "ti,am3517", "ti,omap3" 71*4882a593Smuzhiyun- OMAP3630 72*4882a593Smuzhiyun compatible = "ti,omap3630", "ti,omap3" 73*4882a593Smuzhiyun legacy: "ti,omap36xx" - please do not use any more 74*4882a593Smuzhiyun- AM335x 75*4882a593Smuzhiyun compatible = "ti,am33xx" 76*4882a593Smuzhiyun 77*4882a593Smuzhiyun- OMAP4430 78*4882a593Smuzhiyun compatible = "ti,omap4430", "ti,omap4" 79*4882a593Smuzhiyun- OMAP4460 80*4882a593Smuzhiyun compatible = "ti,omap4460", "ti,omap4" 81*4882a593Smuzhiyun 82*4882a593Smuzhiyun- OMAP5430 83*4882a593Smuzhiyun compatible = "ti,omap5430", "ti,omap5" 84*4882a593Smuzhiyun- OMAP5432 85*4882a593Smuzhiyun compatible = "ti,omap5432", "ti,omap5" 86*4882a593Smuzhiyun 87*4882a593Smuzhiyun- DRA762 88*4882a593Smuzhiyun compatible = "ti,dra762", "ti,dra7" 89*4882a593Smuzhiyun 90*4882a593Smuzhiyun- DRA742 91*4882a593Smuzhiyun compatible = "ti,dra742", "ti,dra74", "ti,dra7" 92*4882a593Smuzhiyun 93*4882a593Smuzhiyun- DRA722 94*4882a593Smuzhiyun compatible = "ti,dra722", "ti,dra72", "ti,dra7" 95*4882a593Smuzhiyun 96*4882a593Smuzhiyun- DRA718 97*4882a593Smuzhiyun compatible = "ti,dra718", "ti,dra722", "ti,dra72", "ti,dra7" 98*4882a593Smuzhiyun 99*4882a593Smuzhiyun- AM5748 100*4882a593Smuzhiyun compatible = "ti,am5748", "ti,dra762", "ti,dra7" 101*4882a593Smuzhiyun 102*4882a593Smuzhiyun- AM5728 103*4882a593Smuzhiyun compatible = "ti,am5728", "ti,dra742", "ti,dra74", "ti,dra7" 104*4882a593Smuzhiyun 105*4882a593Smuzhiyun- AM5726 106*4882a593Smuzhiyun compatible = "ti,am5726", "ti,dra742", "ti,dra74", "ti,dra7" 107*4882a593Smuzhiyun 108*4882a593Smuzhiyun- AM5718 109*4882a593Smuzhiyun compatible = "ti,am5718", "ti,dra722", "ti,dra72", "ti,dra7" 110*4882a593Smuzhiyun 111*4882a593Smuzhiyun- AM5716 112*4882a593Smuzhiyun compatible = "ti,am5716", "ti,dra722", "ti,dra72", "ti,dra7" 113*4882a593Smuzhiyun 114*4882a593Smuzhiyun- AM4372 115*4882a593Smuzhiyun compatible = "ti,am4372", "ti,am43" 116*4882a593Smuzhiyun 117*4882a593SmuzhiyunBoards (incomplete list of examples): 118*4882a593Smuzhiyun 119*4882a593Smuzhiyun- OMAP3 BeagleBoard : Low cost community board 120*4882a593Smuzhiyun compatible = "ti,omap3-beagle", "ti,omap3430", "ti,omap3" 121*4882a593Smuzhiyun 122*4882a593Smuzhiyun- OMAP3 BeagleBoard A to B4 : Early BeagleBoard revisions A to B4 with a timer quirk 123*4882a593Smuzhiyun compatible = "ti,omap3-beagle-ab4", "ti,omap3-beagle", "ti,omap3430", "ti,omap3" 124*4882a593Smuzhiyun 125*4882a593Smuzhiyun- OMAP3 Tobi with Overo : Commercial expansion board with daughter board 126*4882a593Smuzhiyun compatible = "gumstix,omap3-overo-tobi", "gumstix,omap3-overo", "ti,omap3430", "ti,omap3" 127*4882a593Smuzhiyun 128*4882a593Smuzhiyun- OMAP4 SDP : Software Development Board 129*4882a593Smuzhiyun compatible = "ti,omap4-sdp", "ti,omap4430", "ti,omap4" 130*4882a593Smuzhiyun 131*4882a593Smuzhiyun- OMAP4 PandaBoard : Low cost community board 132*4882a593Smuzhiyun compatible = "ti,omap4-panda", "ti,omap4430", "ti,omap4" 133*4882a593Smuzhiyun 134*4882a593Smuzhiyun- OMAP4 DuoVero with Parlor : Commercial expansion board with daughter board 135*4882a593Smuzhiyun compatible = "gumstix,omap4-duovero-parlor", "gumstix,omap4-duovero", "ti,omap4430", "ti,omap4"; 136*4882a593Smuzhiyun 137*4882a593Smuzhiyun- OMAP4 VAR-STK-OM44 : Commercial dev kit with VAR-OM44CustomBoard and VAR-SOM-OM44 w/WLAN 138*4882a593Smuzhiyun compatible = "variscite,var-stk-om44", "variscite,var-som-om44", "ti,omap4460", "ti,omap4"; 139*4882a593Smuzhiyun 140*4882a593Smuzhiyun- OMAP4 VAR-DVK-OM44 : Commercial dev kit with VAR-OM44CustomBoard, VAR-SOM-OM44 w/WLAN and LCD touchscreen 141*4882a593Smuzhiyun compatible = "variscite,var-dvk-om44", "variscite,var-som-om44", "ti,omap4460", "ti,omap4"; 142*4882a593Smuzhiyun 143*4882a593Smuzhiyun- OMAP3 EVM : Software Development Board for OMAP35x, AM/DM37x 144*4882a593Smuzhiyun compatible = "ti,omap3-evm", "ti,omap3630", "ti,omap3" 145*4882a593Smuzhiyun 146*4882a593Smuzhiyun- AM335X EVM : Software Development Board for AM335x 147*4882a593Smuzhiyun compatible = "ti,am335x-evm", "ti,am33xx" 148*4882a593Smuzhiyun 149*4882a593Smuzhiyun- AM335X Bone : Low cost community board 150*4882a593Smuzhiyun compatible = "ti,am335x-bone", "ti,am33xx" 151*4882a593Smuzhiyun 152*4882a593Smuzhiyun- AM3359 ICEv2 : Low cost Industrial Communication Engine EVM. 153*4882a593Smuzhiyun compatible = "ti,am3359-icev2", "ti,am33xx" 154*4882a593Smuzhiyun 155*4882a593Smuzhiyun- AM335X OrionLXm : Substation Automation Platform 156*4882a593Smuzhiyun compatible = "novatech,am335x-lxm", "ti,am33xx" 157*4882a593Smuzhiyun 158*4882a593Smuzhiyun- AM335X phyBOARD-WEGA: Single Board Computer dev kit 159*4882a593Smuzhiyun compatible = "phytec,am335x-wega", "phytec,am335x-phycore-som", "ti,am33xx" 160*4882a593Smuzhiyun 161*4882a593Smuzhiyun- AM335X CM-T335 : System On Module, built around the Sitara AM3352/4 162*4882a593Smuzhiyun compatible = "compulab,cm-t335", "ti,am33xx" 163*4882a593Smuzhiyun 164*4882a593Smuzhiyun- AM335X SBC-T335 : single board computer, built around the Sitara AM3352/4 165*4882a593Smuzhiyun compatible = "compulab,sbc-t335", "compulab,cm-t335", "ti,am33xx" 166*4882a593Smuzhiyun 167*4882a593Smuzhiyun- AM335X phyCORE-AM335x: Development kit 168*4882a593Smuzhiyun compatible = "phytec,am335x-pcm-953", "phytec,am335x-phycore-som", "ti,am33xx" 169*4882a593Smuzhiyun 170*4882a593Smuzhiyun- AM335x phyBOARD-REGOR: Single Board Computer 171*4882a593Smuzhiyun compatible = "phytec,am335x-regor", "phytec,am335x-phycore-som", "ti,am33xx" 172*4882a593Smuzhiyun 173*4882a593Smuzhiyun- AM335X UC-8100-ME-T: Communication-centric industrial computing platform 174*4882a593Smuzhiyun compatible = "moxa,uc-8100-me-t", "ti,am33xx"; 175*4882a593Smuzhiyun 176*4882a593Smuzhiyun- OMAP5 EVM : Evaluation Module 177*4882a593Smuzhiyun compatible = "ti,omap5-evm", "ti,omap5" 178*4882a593Smuzhiyun 179*4882a593Smuzhiyun- AM437x CM-T43 180*4882a593Smuzhiyun compatible = "compulab,am437x-cm-t43", "ti,am4372", "ti,am43" 181*4882a593Smuzhiyun 182*4882a593Smuzhiyun- AM437x SBC-T43 183*4882a593Smuzhiyun compatible = "compulab,am437x-sbc-t43", "compulab,am437x-cm-t43", "ti,am4372", "ti,am43" 184*4882a593Smuzhiyun 185*4882a593Smuzhiyun- AM43x EPOS EVM 186*4882a593Smuzhiyun compatible = "ti,am43x-epos-evm", "ti,am43", "ti,am438x" 187*4882a593Smuzhiyun 188*4882a593Smuzhiyun- AM437x GP EVM 189*4882a593Smuzhiyun compatible = "ti,am437x-gp-evm", "ti,am4372", "ti,am43" 190*4882a593Smuzhiyun 191*4882a593Smuzhiyun- AM437x SK EVM: AM437x StarterKit Evaluation Module 192*4882a593Smuzhiyun compatible = "ti,am437x-sk-evm", "ti,am4372", "ti,am43" 193*4882a593Smuzhiyun 194*4882a593Smuzhiyun- AM57XX CL-SOM-AM57x 195*4882a593Smuzhiyun compatible = "compulab,cl-som-am57x", "ti,am5728", "ti,dra742", "ti,dra74", "ti,dra7" 196*4882a593Smuzhiyun 197*4882a593Smuzhiyun- AM57XX SBC-AM57x 198*4882a593Smuzhiyun compatible = "compulab,sbc-am57x", "compulab,cl-som-am57x", "ti,am5728", "ti,dra742", "ti,dra74", "ti,dra7" 199*4882a593Smuzhiyun 200*4882a593Smuzhiyun- AM5748 IDK 201*4882a593Smuzhiyun compatible = "ti,am5748-idk", "ti,am5748", "ti,dra762", "ti,dra7"; 202*4882a593Smuzhiyun 203*4882a593Smuzhiyun- AM5728 IDK 204*4882a593Smuzhiyun compatible = "ti,am5728-idk", "ti,am5728", "ti,dra742", "ti,dra74", "ti,dra7" 205*4882a593Smuzhiyun 206*4882a593Smuzhiyun- AM5718 IDK 207*4882a593Smuzhiyun compatible = "ti,am5718-idk", "ti,am5718", "ti,dra7" 208*4882a593Smuzhiyun 209*4882a593Smuzhiyun- DRA762 EVM: Software Development Board for DRA762 210*4882a593Smuzhiyun compatible = "ti,dra76-evm", "ti,dra762", "ti,dra7" 211*4882a593Smuzhiyun 212*4882a593Smuzhiyun- DRA742 EVM: Software Development Board for DRA742 213*4882a593Smuzhiyun compatible = "ti,dra7-evm", "ti,dra742", "ti,dra74", "ti,dra7" 214*4882a593Smuzhiyun 215*4882a593Smuzhiyun- DRA722 EVM: Software Development Board for DRA722 216*4882a593Smuzhiyun compatible = "ti,dra72-evm", "ti,dra722", "ti,dra72", "ti,dra7" 217*4882a593Smuzhiyun 218*4882a593Smuzhiyun- DRA718 EVM: Software Development Board for DRA718 219*4882a593Smuzhiyun compatible = "ti,dra718-evm", "ti,dra718", "ti,dra722", "ti,dra72", "ti,dra7" 220*4882a593Smuzhiyun 221*4882a593Smuzhiyun- DM3730 Logic PD Torpedo + Wireless: Commercial System on Module with WiFi and Bluetooth 222*4882a593Smuzhiyun compatible = "logicpd,dm3730-torpedo-devkit", "ti,omap3630", "ti,omap3" 223*4882a593Smuzhiyun 224*4882a593Smuzhiyun- DM3730 Logic PD SOM-LV: Commercial System on Module with WiFi and Bluetooth 225*4882a593Smuzhiyun compatible = "logicpd,dm3730-som-lv-devkit", "ti,omap3630", "ti,omap3" 226