xref: /linux/Documentation/devicetree/bindings/regmap/regmap.txt (revision 9b9c2cd44322ed9bc536eedf7d9a5e38e1eb4081)
1Device-Tree binding for regmap
2
3The endianness mode of CPU & Device scenarios:
4Index     Device     Endianness properties
5---------------------------------------------------
61         BE         'big-endian'
72         LE         'little-endian'
8
9For one device driver, which will run in different scenarios above
10on different SoCs using the devicetree, we need one way to simplify
11this.
12
13Required properties:
14- {big,little}-endian: these are boolean properties, if absent
15  meaning that the CPU and the Device are in the same endianness mode,
16  these properties are for register values and all the buffers only.
17
18Examples:
19Scenario 1 : CPU in LE mode & device in LE mode.
20dev: dev@40031000 {
21	      compatible = "name";
22	      reg = <0x40031000 0x1000>;
23	      ...
24};
25
26Scenario 2 : CPU in LE mode & device in BE mode.
27dev: dev@40031000 {
28	      compatible = "name";
29	      reg = <0x40031000 0x1000>;
30	      ...
31	      big-endian;
32};
33
34Scenario 3 : CPU in BE mode & device in BE mode.
35dev: dev@40031000 {
36	      compatible = "name";
37	      reg = <0x40031000 0x1000>;
38	      ...
39};
40
41Scenario 4 : CPU in BE mode & device in LE mode.
42dev: dev@40031000 {
43	      compatible = "name";
44	      reg = <0x40031000 0x1000>;
45	      ...
46	      little-endian;
47};
48