xref: /linux/Documentation/devicetree/bindings/regmap/regmap.txt (revision 3d3337de8900a199a7ab304f742a6ad2a973b9f4)
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