Commit | Line | Data |
---|---|---|
88e0abcd PM |
1 | ARM Versatile Express system registers |
2 | -------------------------------------- | |
3 | ||
4 | This is a system control registers block, providing multiple low level | |
5 | platform functions like board detection and identification, software | |
6 | interrupt generation, MMC and NOR Flash control etc. | |
7 | ||
8 | Required node properties: | |
9 | - compatible value : = "arm,vexpress,sysreg"; | |
10 | - reg : physical base address and the size of the registers window | |
11 | - gpio-controller : specifies that the node is a GPIO controller | |
12 | - #gpio-cells : size of the GPIO specifier, should be 2: | |
13 | - first cell is the pseudo-GPIO line number: | |
14 | 0 - MMC CARDIN | |
15 | 1 - MMC WPROT | |
16 | 2 - NOR FLASH WPn | |
17 | - second cell can take standard GPIO flags (currently ignored). | |
18 | ||
19 | Example: | |
20 | v2m_sysreg: sysreg@10000000 { | |
21 | compatible = "arm,vexpress-sysreg"; | |
22 | reg = <0x10000000 0x1000>; | |
23 | gpio-controller; | |
24 | #gpio-cells = <2>; | |
25 | }; | |
26 | ||
27 | This block also can also act a bridge to the platform's configuration | |
28 | bus via "system control" interface, addressing devices with site number, | |
29 | position in the board stack, config controller, function and device | |
30 | numbers - see motherboard's TRM for more details. | |
31 | ||
32 | The node describing a config device must refer to the sysreg node via | |
33 | "arm,vexpress,config-bridge" phandle (can be also defined in the node's | |
34 | parent) and relies on the board topology properties - see main vexpress | |
c9f3f2d8 MI |
35 | node documentation for more details. It must also define the following |
36 | property: | |
88e0abcd PM |
37 | - arm,vexpress-sysreg,func : must contain two cells: |
38 | - first cell defines function number (eg. 1 for clock generator, | |
39 | 2 for voltage regulators etc.) | |
40 | - device number (eg. osc 0, osc 1 etc.) | |
41 | ||
42 | Example: | |
43 | mcc { | |
44 | arm,vexpress,config-bridge = <&v2m_sysreg>; | |
45 | ||
46 | osc@0 { | |
47 | compatible = "arm,vexpress-osc"; | |
48 | arm,vexpress-sysreg,func = <1 0>; | |
49 | }; | |
50 | }; |