Now that MMIO addresses 0-1023 point at valid memory, let's use it
describe a fake pinctrl-single controller. This allows testing common
pinctrl code in sandbox.

Device parameter support to select the state will follow later.

Signed-off-by: Ahmad Fatoum <a.fat...@pengutronix.de>
---
 arch/sandbox/dts/sandbox.dts | 53 ++++++++++++++++++++++++++++++++++++
 1 file changed, 53 insertions(+)

diff --git a/arch/sandbox/dts/sandbox.dts b/arch/sandbox/dts/sandbox.dts
index f3fe6ce65c08..bb37cfeaf9a2 100644
--- a/arch/sandbox/dts/sandbox.dts
+++ b/arch/sandbox/dts/sandbox.dts
@@ -108,19 +108,72 @@ power {
                compatible = "barebox,sandbox-power";
                nvmem-cell-names = "reset-source";
                nvmem-cells = <&reset_source>;
+               pinctrl-names = "default", "sleep";
+               pinctrl-0 = <&pinctrl_power_default>;
+               pinctrl-1 = <&pinctrl_power_sleep>;
        };
 
        watchdog {
                compatible = "barebox,sandbox-watchdog";
                nvmem-cell-names = "reset-source";
                nvmem-cells = <&reset_source>;
+               pinctrl-names = "default", "sleep";
+               pinctrl-0 = <&pinctrl_watchdog_default>;
+               pinctrl-1 = <&pinctrl_watchdog_sleep>;
        };
 
        sound {
                compatible = "barebox,sandbox-sound";
+               pinctrl-names = "default", "sleep";
+               pinctrl-0 = <&pinctrl_sound_default>;
+               pinctrl-1 = <&pinctrl_sound_sleep>;
        };
 
        led {
                compatible = "barebox,sandbox-led";
+               pinctrl-names = "default", "sleep";
+               pinctrl-0 = <&pinctrl_led_default>;
+               pinctrl-1 = <&pinctrl_led_sleep>;
+       };
+
+       pinctrl {
+               compatible = "pinctrl-single";
+               /* Proxy 0 addressing */
+               reg = <0x0 0x0 0x0 0x4>;
+               #pinctrl-cells = <1>;
+               pinctrl-single,register-width = <8>;
+               pinctrl-single,function-mask = <0x0000000f>;
+
+               pinctrl_power_default: power-default-pins {
+                       pinctrl-single,pins = <0x00     0x01>;
+               };
+
+               pinctrl_power_sleep: power-sleep-pins {
+                       pinctrl-single,pins = <0x00     0x02>;
+               };
+
+               pinctrl_watchdog_default: watchdog-default-pins {
+                       pinctrl-single,pins = <0x01     0x01>;
+               };
+
+               pinctrl_watchdog_sleep: watchdog-sleep-pins {
+                       pinctrl-single,pins = <0x01     0x02>;
+               };
+
+               pinctrl_sound_default: sound-default-pins {
+                       pinctrl-single,pins = <0x02     0x01>;
+               };
+
+               pinctrl_sound_sleep: sound-sleep-pins {
+                       pinctrl-single,pins = <0x02     0x02>;
+               };
+
+               pinctrl_led_default: led-default-pins {
+                       pinctrl-single,pins = <0x03     0x01>;
+               };
+
+               pinctrl_led_sleep: led-sleep-pins {
+                       pinctrl-single,pins = <0x03     0x02>;
+               };
        };
 };
-- 
2.39.2


Reply via email to