summaryrefslogtreecommitdiffstats
path: root/Documentation/devicetree/bindings/regmap/regmap.txt
blob: 0127be360fe852d70a853026c03de1fcc8c8a7a0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Devicetree binding for regmap

Optional properties:

   little-endian,
   big-endian,
   native-endian:	See common-properties.txt for a definition

Note:
Regmap defaults to little-endian register access on MMIO based
devices, this is by far the most common setting. On CPU
architectures that typically run big-endian operating systems
(e.g. PowerPC), registers can be defined as big-endian and must
be marked that way in the devicetree.

On SoCs that can be operated in both big-endian and little-endian
modes, with a single hardware switch controlling both the endianess
of the CPU and a byteswap for MMIO registers (e.g. many Broadcom MIPS
chips), "native-endian" is used to allow using the same device tree
blob in both cases.

Examples:
Scenario 1 : a register set in big-endian mode.
dev: dev@40031000 {
	      compatible = "syscon";
	      reg = <0x40031000 0x1000>;
	      big-endian;
	      ...
};