|
@@ -0,0 +1,47 @@
|
|
|
|
+Device-Tree binding for regmap
|
|
|
|
+
|
|
|
|
+The endianness mode of CPU & Device scenarios:
|
|
|
|
+Index Device Endianness properties
|
|
|
|
+---------------------------------------------------
|
|
|
|
+1 BE 'big-endian'
|
|
|
|
+2 LE 'little-endian'
|
|
|
|
+
|
|
|
|
+For one device driver, which will run in different scenarios above
|
|
|
|
+on different SoCs using the devicetree, we need one way to simplify
|
|
|
|
+this.
|
|
|
|
+
|
|
|
|
+Required properties:
|
|
|
|
+- {big,little}-endian: these are boolean properties, if absent
|
|
|
|
+ meaning that the CPU and the Device are in the same endianness mode,
|
|
|
|
+ these properties are for register values and all the buffers only.
|
|
|
|
+
|
|
|
|
+Examples:
|
|
|
|
+Scenario 1 : CPU in LE mode & device in LE mode.
|
|
|
|
+dev: dev@40031000 {
|
|
|
|
+ compatible = "name";
|
|
|
|
+ reg = <0x40031000 0x1000>;
|
|
|
|
+ ...
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+Scenario 2 : CPU in LE mode & device in BE mode.
|
|
|
|
+dev: dev@40031000 {
|
|
|
|
+ compatible = "name";
|
|
|
|
+ reg = <0x40031000 0x1000>;
|
|
|
|
+ ...
|
|
|
|
+ big-endian;
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+Scenario 3 : CPU in BE mode & device in BE mode.
|
|
|
|
+dev: dev@40031000 {
|
|
|
|
+ compatible = "name";
|
|
|
|
+ reg = <0x40031000 0x1000>;
|
|
|
|
+ ...
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+Scenario 4 : CPU in BE mode & device in LE mode.
|
|
|
|
+dev: dev@40031000 {
|
|
|
|
+ compatible = "name";
|
|
|
|
+ reg = <0x40031000 0x1000>;
|
|
|
|
+ ...
|
|
|
|
+ little-endian;
|
|
|
|
+};
|