Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
324 changes: 323 additions & 1 deletion arch/riscv/boot/dts/spacemit/k1-musepi-pro.dts
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,12 @@
aliases {
ethernet0 = &eth0;
serial0 = &uart0;
i2c2 = &i2c2;
i2c8 = &i2c8;
};

chosen {
stdout-path = "serial0";
stdout-path = "serial0:115200n8";
};

leds {
Expand All @@ -33,6 +35,65 @@
default-state = "on";
};
};

pcie_vcc_3v3: regulator-pcie-vcc3v3 {
compatible = "regulator-fixed";
regulator-name = "PCIE_VCC3V3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
vin-supply = <&reg_usb_vbus>;
};

mpcie_vcc_3v3: regulator-mpcie-vcc3v3 {
compatible = "regulator-fixed";
regulator-name = "MPCIE_VCC3V3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
vin-supply = <&reg_usb_vbus>;
};

reg_usb_vbus: regulator-usb-vbus {
compatible = "regulator-fixed";
regulator-name = "USBVBUS";
regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>;
regulator-boot-on;
regulator-always-on;
};

reg_vcc_4v0: regulator-vcc-40v {
compatible = "regulator-fixed";
regulator-name = "VCC4V0";
regulator-min-microvolt = <4000000>;
regulator-max-microvolt = <4000000>;
regulator-boot-on;
regulator-always-on;
vin-supply = <&reg_usb_vbus>;
};

reg_5v_vbus: regulator-5v-vbus {
compatible = "regulator-fixed";
regulator-name = "5V_VBUS";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
vin-supply = <&reg_usb_vbus>;
gpio = <&gpio K1_GPIO(79) GPIO_ACTIVE_HIGH>; /* USB3_PWREN */
enable-active-high;
};

reg_vcc5v_hub: regulator-vcc5v-hub {
compatible = "regulator-fixed";
regulator-name = "VCC5V0_HUB";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
vin-supply = <&reg_usb_vbus>;
gpio = <&gpio K1_GPIO(127) GPIO_ACTIVE_HIGH>; /* HUB_PWREN */
enable-active-high;
};
};

&emmc {
Expand All @@ -45,6 +106,10 @@
status = "okay";
};

&combo_phy {
status = "okay";
};

&eth0 {
phy-handle = <&rgmii0>;
phy-mode = "rgmii-id";
Expand Down Expand Up @@ -72,8 +137,265 @@
status = "okay";
};

&i2c2 {
pinctrl-0 = <&i2c2_0_cfg>;
pinctrl-names = "default";
status = "okay";

eeprom@50 {
compatible = "atmel,24c02";
reg = <0x50>;
vcc-supply = <&buck3_1v8>; /* EEPROM_VCC1V8 */
pagesize = <8>;
read-only;
size = <256>;

nvmem-layout {
compatible = "onie,tlv-layout";

product-name {
};

serial-number {
};

mac-address {
#nvmem-cell-cells = <1>;
};

num-macs {
};
};
};
};

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

pmic@41 {
compatible = "spacemit,p1";
reg = <0x41>;
interrupts = <64>;
vin1-supply = <&reg_vcc_4v0>;
vin2-supply = <&reg_vcc_4v0>;
vin3-supply = <&reg_vcc_4v0>;
vin4-supply = <&reg_vcc_4v0>;
vin5-supply = <&reg_vcc_4v0>;
vin6-supply = <&reg_vcc_4v0>;
aldoin-supply = <&reg_vcc_4v0>;
dldoin1-supply = <&buck5>;
dldoin2-supply = <&buck5>;

regulators {
buck1 {
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <3450000>;
regulator-ramp-delay = <5000>;
regulator-always-on;
};

buck2 {
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <3450000>;
regulator-ramp-delay = <5000>;
regulator-always-on;
};

buck3_1v8: buck3 {
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <1800000>;
regulator-ramp-delay = <5000>;
regulator-always-on;
};

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

buck5: buck5 {
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <3450000>;
regulator-ramp-delay = <5000>;
regulator-always-on;
};

buck6 {
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <3450000>;
regulator-ramp-delay = <5000>;
regulator-always-on;
};

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

aldo2 {
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <3400000>;
};

aldo3 {
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <3400000>;
};

aldo4 {
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <3400000>;
};

dldo1 {
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <3400000>;
regulator-boot-on;
};

dldo2 {
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <3400000>;
};

dldo3 {
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <3400000>;
};

dldo4 {
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <3400000>;
regulator-always-on;
};

dldo5 {
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <3400000>;
};

dldo6 {
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <3400000>;
regulator-always-on;
};

dldo7 {
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <3400000>;
};
};
};
};

&pcie1_phy {
pinctrl-names = "default";
pinctrl-0 = <&pcie1_3_cfg>;
status = "okay";
};

&pcie1_port {
phys = <&pcie1_phy>;
vpcie3v3-supply = <&pcie_vcc_3v3>;
};

&pcie1 {
vpcie3v3-supply = <&pcie_vcc_3v3>;
status = "okay";
};

&pcie2_phy {
pinctrl-names = "default";
pinctrl-0 = <&pcie2_4_cfg>;
status = "okay";
};

&pcie2_port {
phys = <&pcie2_phy>;
vpcie3v3-supply = <&mpcie_vcc_3v3>;
};

&pcie2 {
vpcie3v3-supply = <&mpcie_vcc_3v3>;
status = "okay";
};

&qspi {
pinctrl-names = "default";
pinctrl-0 = <&qspi_cfg>;
status = "okay";

flash@0 {
compatible = "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <26500000>;
spi-rx-bus-width = <4>;
spi-tx-bus-width = <4>;
vcc-supply = <&buck4_3v3>; /* QSPI_VCC1833 */
m25p,fast-read;

partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;

bootinfo@0 {
reg = <0x0 0x10000>;
};
private@10000 {
reg = <0x10000 0x10000>;
};
fsbl@20000 {
reg = <0x20000 0x40000>;
};
env@60000 {
reg = <0x60000 0x10000>;
};
opensbi@70000 {
reg = <0x70000 0x30000>;
};
uboot@a00000 {
reg = <0xa0000 0x760000>;
};
};
};
};

&uart0 {
pinctrl-0 = <&uart0_2_cfg>;
pinctrl-names = "default";
status = "okay";
};

&usbphy2 {
status = "okay";
};

&usb_dwc3 {
dr_mode = "host";
#address-cells = <1>;
#size-cells = <0>;
vbus-supply = <&reg_5v_vbus>;
status = "okay";

hub_2_0: hub@1 {
compatible = "usb2109,2817";
reg = <0x1>;
vdd-supply = <&reg_vcc5v_hub>;
peer-hub = <&hub_3_0>;
reset-gpios = <&gpio K1_GPIO(123) GPIO_ACTIVE_LOW>; /* HUB_RST */
};

hub_3_0: hub@2 {
compatible = "usb2109,817";
reg = <0x2>;
vdd-supply = <&reg_vcc5v_hub>;
peer-hub = <&hub_2_0>;
reset-gpios = <&gpio K1_GPIO(123) GPIO_ACTIVE_LOW>; /* HUB_RST */
};
};
Loading