Skip to content
Closed
67 changes: 67 additions & 0 deletions arch/riscv/boot/dts/spacemit/k1-orangepi-rv2.dts
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,25 @@
ethernet1 = &eth1;
};

reg_dc_in: dc-in-12v {
compatible = "regulator-fixed";
regulator-name = "dc_in_12v";
regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>;
regulator-boot-on;
regulator-always-on;
};

reg_vcc_4v: vcc-4v {
compatible = "regulator-fixed";
regulator-name = "vcc_4v";
regulator-min-microvolt = <4000000>;
regulator-max-microvolt = <4000000>;
regulator-boot-on;
regulator-always-on;
vin-supply = <&reg_dc_in>;
};

chosen {
stdout-path = "serial0";
};
Expand Down Expand Up @@ -92,3 +111,51 @@
pinctrl-0 = <&uart0_2_cfg>;
status = "okay";
};

&i2c8 {
pinctrl-names = "default";
pinctrl-0 = <&i2c8_cfg>;
status = "okay";

pmic@41 {
compatible = "spacemit,p1";
reg = <0x41>;
interrupts = <64>;
vin-supply = <&reg_vcc_4v>;

regulators {
sd_vmmc: buck4 {
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <3300000>;
regulator-ramp-delay = <5000>;
regulator-always-on;
};

sd_vqmmc: aldo1 {
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <3400000>;
regulator-boot-on;
regulator-always-on;
};
};
};
};

&sdhci0 {
pinctrl-names = "default", "state_uhs";
pinctrl-0 = <&mmc1_cfg>;
pinctrl-1 = <&mmc1_uhs_cfg>;
bus-width = <4>;
cd-gpios = <&gpio K1_GPIO(80) GPIO_ACTIVE_HIGH>;
cd-inverted;
no-mmc;
no-sdio;
disable-wp;
cap-sd-highspeed;
vmmc-supply = <&sd_vmmc>;
vqmmc-supply = <&sd_vqmmc>;
sd-uhs-sdr25;
sd-uhs-sdr50;
sd-uhs-sdr104;
status = "okay";
};
40 changes: 40 additions & 0 deletions arch/riscv/boot/dts/spacemit/k1-pinctrl.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -570,4 +570,44 @@
drive-strength = <32>;
};
};

mmc1_cfg: mmc1-cfg {
mmc1-data-cmd-pins {
pinmux = <K1_PADCONF(104, 0)>, /* mmc1_d3 */
<K1_PADCONF(105, 0)>, /* mmc1_d2 */
<K1_PADCONF(106, 0)>, /* mmc1_d1 */
<K1_PADCONF(107, 0)>, /* mmc1_d0 */
<K1_PADCONF(108, 0)>; /* mmc1_cmd */
bias-pull-up = <1>;
drive-strength = <7>;
power-source = <3300>;
};

mmc1-clk-pins {
pinmux = <K1_PADCONF(109, 0)>; /* mmc1_clk */
bias-pull-down = <1>;
drive-strength = <7>;
power-source = <3300>;
};
};

mmc1_uhs_cfg: mmc1-uhs-cfg {
mmc1-data-cmd-pins {
pinmux = <K1_PADCONF(104, 0)>, /* mmc1_d3 */
<K1_PADCONF(105, 0)>, /* mmc1_d2 */
<K1_PADCONF(106, 0)>, /* mmc1_d1 */
<K1_PADCONF(107, 0)>, /* mmc1_d0 */
<K1_PADCONF(108, 0)>; /* mmc1_cmd */
bias-pull-up = <1>;
drive-strength = <13>;
power-source = <1800>;
};

mmc1-clk-pins {
pinmux = <K1_PADCONF(109, 0)>; /* mmc1_clk */
bias-pull-down = <1>;
drive-strength = <13>;
power-source = <1800>;
};
};
};
13 changes: 13 additions & 0 deletions arch/riscv/boot/dts/spacemit/k1.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -1207,6 +1207,19 @@
interrupts = <101>;
status = "disabled";
};

sdhci0: mmc@d4280000 {
compatible = "spacemit,k1-sdhci";
reg = <0x0 0xd4280000 0x0 0x200>;
clocks = <&syscon_apmu CLK_SDH_AXI>,
<&syscon_apmu CLK_SDH0>;
clock-names = "core", "io";
resets = <&syscon_apmu RESET_SDH_AXI>,
<&syscon_apmu RESET_SDH0>;
reset-names = "axi", "sdh";
interrupts = <99>;
status = "disabled";
};
};
};
};
Loading
Loading