1275876e2SXiubo LiDevice-Tree binding for regmap 2275876e2SXiubo Li 3275876e2SXiubo LiThe endianness mode of CPU & Device scenarios: 4275876e2SXiubo LiIndex Device Endianness properties 5275876e2SXiubo Li--------------------------------------------------- 6275876e2SXiubo Li1 BE 'big-endian' 7275876e2SXiubo Li2 LE 'little-endian' 8a06c488dSMark Brown3 Native 'native-endian' 9275876e2SXiubo Li 10275876e2SXiubo LiFor one device driver, which will run in different scenarios above 11275876e2SXiubo Lion different SoCs using the devicetree, we need one way to simplify 12275876e2SXiubo Lithis. 13275876e2SXiubo Li 14a06c488dSMark BrownOptional properties: 15a06c488dSMark Brown- {big,little,native}-endian: these are boolean properties, if absent 16a06c488dSMark Brown then the implementation will choose a default based on the device 17a06c488dSMark Brown being controlled. These properties are for register values and all 18a06c488dSMark Brown the buffers only. Native endian means that the CPU and device have 19a06c488dSMark Brown the same endianness. 20275876e2SXiubo Li 21275876e2SXiubo LiExamples: 22275876e2SXiubo LiScenario 1 : CPU in LE mode & device in LE mode. 23275876e2SXiubo Lidev: dev@40031000 { 24275876e2SXiubo Li compatible = "name"; 25275876e2SXiubo Li reg = <0x40031000 0x1000>; 26275876e2SXiubo Li ... 27275876e2SXiubo Li}; 28275876e2SXiubo Li 29275876e2SXiubo LiScenario 2 : CPU in LE mode & device in BE mode. 30275876e2SXiubo Lidev: dev@40031000 { 31275876e2SXiubo Li compatible = "name"; 32275876e2SXiubo Li reg = <0x40031000 0x1000>; 33275876e2SXiubo Li ... 34275876e2SXiubo Li big-endian; 35275876e2SXiubo Li}; 36275876e2SXiubo Li 37275876e2SXiubo LiScenario 3 : CPU in BE mode & device in BE mode. 38275876e2SXiubo Lidev: dev@40031000 { 39275876e2SXiubo Li compatible = "name"; 40275876e2SXiubo Li reg = <0x40031000 0x1000>; 41275876e2SXiubo Li ... 42275876e2SXiubo Li}; 43275876e2SXiubo Li 44275876e2SXiubo LiScenario 4 : CPU in BE mode & device in LE mode. 45275876e2SXiubo Lidev: dev@40031000 { 46275876e2SXiubo Li compatible = "name"; 47275876e2SXiubo Li reg = <0x40031000 0x1000>; 48275876e2SXiubo Li ... 49275876e2SXiubo Li little-endian; 50275876e2SXiubo Li}; 51