* Texas Instruments OMAP

OMAP is currently using a static file per SoC family to describe the
IPs present in the SoC.
On top of that an omap_device is created to extend the platform_device
capabilities and to allow binding with one or several hwmods.
The hwmods will contain all the information to build the device:
address range, irq lines, dma lines, interconnect, PRCM register,
clock domain, input clocks.
For the moment just point to the existing hwmod, the next step will be
to move data from hwmod to device-tree representation.


Required properties:
- compatible: Every devices present in OMAP SoC should be in the
  form: "ti,XXX"
- ti,hwmods: list of hwmod names (ascii strings), that comes from the OMAP
  HW documentation, attached to a device. Must contain at least
  one hwmod.

Optional properties:
- ti,no_idle_on_suspend: When present, it prevents the PM to idle the module
  during suspend.
- ti,no-reset-on-init: When present, the module should not be reset at init
- ti,no-idle-on-init: When present, the module should not be idled at init
- ti,no-idle: When present, the module is never allowed to idle.

Example:

spinlock@1 {
    compatible = "ti,omap4-spinlock";
    ti,hwmods = "spinlock";
};

SoC Type (optional):

- General Purpose devices
  compatible = "ti,gp"
- High Security devices
  compatible = "ti,hs"

SoC Families:

- OMAP2 generic - defaults to OMAP2420
  compatible = "ti,omap2"
- OMAP3 generic - defaults to OMAP3430
  compatible = "ti,omap3"
- OMAP4 generic - defaults to OMAP4430
  compatible = "ti,omap4"
- OMAP5 generic - defaults to OMAP5430
  compatible = "ti,omap5"
- DRA7 generic - defaults to DRA742
  compatible = "ti,dra7"
- AM43x generic - defaults to AM4372
  compatible = "ti,am43"

SoCs:

- OMAP2420
  compatible = "ti,omap2420", "ti,omap2"
- OMAP2430
  compatible = "ti,omap2430", "ti,omap2"

- OMAP3430
  compatible = "ti,omap3430", "ti,omap3"
- AM3517
  compatible = "ti,am3517", "ti,omap3"
- OMAP3630
  compatible = "ti,omap36xx", "ti,omap3"
- AM33xx
  compatible = "ti,am33xx", "ti,omap3"

- OMAP4430
  compatible = "ti,omap4430", "ti,omap4"
- OMAP4460
  compatible = "ti,omap4460", "ti,omap4"

- OMAP5430
  compatible = "ti,omap5430", "ti,omap5"
- OMAP5432
  compatible = "ti,omap5432", "ti,omap5"

- DRA762
  compatible = "ti,dra762", "ti,dra7"

- DRA742
  compatible = "ti,dra742", "ti,dra74", "ti,dra7"

- DRA722
  compatible = "ti,dra722", "ti,dra72", "ti,dra7"

- DRA718
  compatible = "ti,dra718", "ti,dra722", "ti,dra72", "ti,dra7"

- AM5748
  compatible = "ti,am5748", "ti,dra762", "ti,dra7"

- AM5728
  compatible = "ti,am5728", "ti,dra742", "ti,dra74", "ti,dra7"

- AM5726
  compatible = "ti,am5726", "ti,dra742", "ti,dra74", "ti,dra7"

- AM5718
  compatible = "ti,am5718", "ti,dra722", "ti,dra72", "ti,dra7"

- AM5716
  compatible = "ti,am5716", "ti,dra722", "ti,dra72", "ti,dra7"

- AM4372
  compatible = "ti,am4372", "ti,am43"

Boards:

- OMAP3 BeagleBoard : Low cost community board
  compatible = "ti,omap3-beagle", "ti,omap3"

- OMAP3 Tobi with Overo : Commercial expansion board with daughter board
  compatible = "gumstix,omap3-overo-tobi", "gumstix,omap3-overo", "ti,omap3"

- OMAP4 SDP : Software Development Board
  compatible = "ti,omap4-sdp", "ti,omap4430"

- OMAP4 PandaBoard : Low cost community board
  compatible = "ti,omap4-panda", "ti,omap4430"

- OMAP4 DuoVero with Parlor : Commercial expansion board with daughter board
  compatible = "gumstix,omap4-duovero-parlor", "gumstix,omap4-duovero", "ti,omap4430", "ti,omap4";

- OMAP4 VAR-STK-OM44 : Commercial dev kit with VAR-OM44CustomBoard and VAR-SOM-OM44 w/WLAN
  compatible = "variscite,var-stk-om44", "variscite,var-som-om44", "ti,omap4460", "ti,omap4";

- OMAP4 VAR-DVK-OM44 : Commercial dev kit with VAR-OM44CustomBoard, VAR-SOM-OM44 w/WLAN and LCD touchscreen
  compatible = "variscite,var-dvk-om44", "variscite,var-som-om44", "ti,omap4460", "ti,omap4";

- OMAP3 EVM : Software Development Board for OMAP35x, AM/DM37x
  compatible = "ti,omap3-evm", "ti,omap3"

- AM335X EVM : Software Development Board for AM335x
  compatible = "ti,am335x-evm", "ti,am33xx", "ti,omap3"

- AM335X Bone : Low cost community board
  compatible = "ti,am335x-bone", "ti,am33xx", "ti,omap3"

- AM3359 ICEv2 : Low cost Industrial Communication Engine EVM.
  compatible = "ti,am3359-icev2", "ti,am33xx", "ti,omap3"

- AM335X OrionLXm : Substation Automation Platform
  compatible = "novatech,am335x-lxm", "ti,am33xx"

- AM335X phyBOARD-WEGA: Single Board Computer dev kit
  compatible = "phytec,am335x-wega", "phytec,am335x-phycore-som", "ti,am33xx"

- AM335X CM-T335 : System On Module, built around the Sitara AM3352/4
  compatible = "compulab,cm-t335", "ti,am33xx"

- AM335X SBC-T335 : single board computer, built around the Sitara AM3352/4
  compatible = "compulab,sbc-t335", "compulab,cm-t335", "ti,am33xx"

- AM335X phyCORE-AM335x: Development kit
  compatible = "phytec,am335x-pcm-953", "phytec,am335x-phycore-som", "ti,am33xx"

- AM335X UC-8100-ME-T: Communication-centric industrial computing platform
  compatible = "moxa,uc-8100-me-t", "ti,am33xx";

- OMAP5 EVM : Evaluation Module
  compatible = "ti,omap5-evm", "ti,omap5"

- AM437x CM-T43
  compatible = "compulab,am437x-cm-t43", "ti,am4372", "ti,am43"

- AM437x SBC-T43
  compatible = "compulab,am437x-sbc-t43", "compulab,am437x-cm-t43", "ti,am4372", "ti,am43"

- AM43x EPOS EVM
  compatible = "ti,am43x-epos-evm", "ti,am43", "ti,am438x"

- AM437x GP EVM
  compatible = "ti,am437x-gp-evm", "ti,am4372", "ti,am43"

- AM437x SK EVM: AM437x StarterKit Evaluation Module
  compatible = "ti,am437x-sk-evm", "ti,am4372", "ti,am43"

- AM57XX CL-SOM-AM57x
  compatible = "compulab,cl-som-am57x", "ti,am5728", "ti,dra742", "ti,dra74", "ti,dra7"

- AM57XX SBC-AM57x
  compatible = "compulab,sbc-am57x", "compulab,cl-som-am57x", "ti,am5728", "ti,dra742", "ti,dra74", "ti,dra7"

- AM5748 IDK
  compatible = "ti,am5748-idk", "ti,am5748", "ti,dra762", "ti,dra7";

- AM5728 IDK
  compatible = "ti,am5728-idk", "ti,am5728", "ti,dra742", "ti,dra74", "ti,dra7"

- AM5718 IDK
  compatible = "ti,am5718-idk", "ti,am5718", "ti,dra7"

- DRA762 EVM:  Software Development Board for DRA762
  compatible = "ti,dra76-evm", "ti,dra762", "ti,dra7"

- DRA742 EVM:  Software Development Board for DRA742
  compatible = "ti,dra7-evm", "ti,dra742", "ti,dra74", "ti,dra7"

- DRA722 EVM: Software Development Board for DRA722
  compatible = "ti,dra72-evm", "ti,dra722", "ti,dra72", "ti,dra7"

- DRA718 EVM: Software Development Board for DRA718
  compatible = "ti,dra718-evm", "ti,dra718", "ti,dra722", "ti,dra72", "ti,dra7"

- DM3730 Logic PD Torpedo + Wireless: Commercial System on Module with WiFi and Bluetooth
  compatible = "logicpd,dm3730-torpedo-devkit", "ti,omap3630", "ti,omap3"

- DM3730 Logic PD SOM-LV: Commercial System on Module with WiFi and Bluetooth
  compatible = "logicpd,dm3730-som-lv-devkit", "ti,omap3630", "ti,omap3"
