
On 2024/4/1 04:28, Jonas Karlman wrote:
Sync rk3399-pinephone-pro device tree from linux v6.8.
Add SPI flash related node and options to support booting from SPI flash.
Remove REGULATOR_PWM=y, board does not use pwm-regulator compatible.
Add SYS_NS16550_MEM32=y to use readl/writel for serial console.
Remove SPL_TINY_MEMSET=y to use full memset in SPL.
Signed-off-by: Jonas Karlman jonas@kwiboo.se
Reviewed-by: Kever Yang kever.yang@rock-chips.com
Thanks, - Kever
arch/arm/dts/rk3399-pinephone-pro-u-boot.dtsi | 12 ++ arch/arm/dts/rk3399-pinephone-pro.dts | 147 ++++++++++++++++++ configs/pinephone-pro-rk3399_defconfig | 8 +- 3 files changed, 163 insertions(+), 4 deletions(-)
diff --git a/arch/arm/dts/rk3399-pinephone-pro-u-boot.dtsi b/arch/arm/dts/rk3399-pinephone-pro-u-boot.dtsi index dcfcec4f3072..6a248691e29d 100644 --- a/arch/arm/dts/rk3399-pinephone-pro-u-boot.dtsi +++ b/arch/arm/dts/rk3399-pinephone-pro-u-boot.dtsi @@ -13,3 +13,15 @@ &sdmmc { max-frequency = <20000000>; };
+&spi1 {
- status = "okay";
- flash@0 {
bootph-pre-ram;
bootph-some-ram;
compatible = "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <10000000>;
- };
+}; diff --git a/arch/arm/dts/rk3399-pinephone-pro.dts b/arch/arm/dts/rk3399-pinephone-pro.dts index 04403a76238b..61f3fec5a8b1 100644 --- a/arch/arm/dts/rk3399-pinephone-pro.dts +++ b/arch/arm/dts/rk3399-pinephone-pro.dts @@ -10,6 +10,7 @@ */
/dts-v1/; +#include <dt-bindings/input/gpio-keys.h> #include <dt-bindings/input/linux-event-codes.h> #include "rk3399.dtsi" #include "rk3399-opp.dtsi" @@ -29,6 +30,31 @@ stdout-path = "serial2:115200n8"; };
- adc-keys {
compatible = "adc-keys";
io-channels = <&saradc 1>;
io-channel-names = "buttons";
keyup-threshold-microvolt = <1600000>;
poll-interval = <100>;
button-up {
label = "Volume Up";
linux,code = <KEY_VOLUMEUP>;
press-threshold-microvolt = <100000>;
};
button-down {
label = "Volume Down";
linux,code = <KEY_VOLUMEDOWN>;
press-threshold-microvolt = <600000>;
};
- };
- backlight: backlight {
compatible = "pwm-backlight";
pwms = <&pwm0 0 50000 0>;
- };
- gpio-keys { compatible = "gpio-keys"; pinctrl-names = "default";
@@ -102,6 +128,37 @@ /* WL_REG_ON on module */ reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>; };
- /* MIPI DSI panel 1.8v supply */
- vcc1v8_lcd: vcc1v8-lcd {
compatible = "regulator-fixed";
enable-active-high;
regulator-name = "vcc1v8_lcd";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
vin-supply = <&vcc3v3_sys>;
gpio = <&gpio3 RK_PA5 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default";
- };
- /* MIPI DSI panel 2.8v supply */
- vcc2v8_lcd: vcc2v8-lcd {
compatible = "regulator-fixed";
enable-active-high;
regulator-name = "vcc2v8_lcd";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
vin-supply = <&vcc3v3_sys>;
gpio = <&gpio3 RK_PA1 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default";
- };
+};
+&cpu_alert0 {
- temperature = <65000>;
+}; +&cpu_alert1 {
temperature = <68000>; };
&cpu_l0 {
@@ -132,6 +189,11 @@ status = "okay"; };
+&gpu {
- mali-supply = <&vdd_gpu>;
- status = "okay";
+};
- &i2c0 { clock-frequency = <400000>; i2c-scl-rising-time-ns = <168>;
@@ -326,6 +388,25 @@ }; };
+&i2c3 {
- i2c-scl-rising-time-ns = <450>;
- i2c-scl-falling-time-ns = <15>;
- status = "okay";
- touchscreen@14 {
compatible = "goodix,gt1158";
reg = <0x14>;
interrupt-parent = <&gpio3>;
interrupts = <RK_PB5 IRQ_TYPE_EDGE_RISING>;
irq-gpios = <&gpio3 RK_PB5 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio3 RK_PB4 GPIO_ACTIVE_HIGH>;
AVDD28-supply = <&vcc3v0_touch>;
VDDIO-supply = <&vcc3v0_touch>;
touchscreen-size-x = <720>;
touchscreen-size-y = <1440>;
- };
+};
- &cluster0_opp { opp04 { status = "disabled";
@@ -355,6 +436,39 @@ status = "okay"; };
+&mipi_dsi {
- status = "okay";
- clock-master;
- ports {
mipi_out: port@1 {
#address-cells = <0>;
#size-cells = <0>;
reg = <1>;
mipi_out_panel: endpoint {
remote-endpoint = <&mipi_in_panel>;
};
};
- };
- panel@0 {
compatible = "hannstar,hsd060bhw4";
reg = <0>;
backlight = <&backlight>;
reset-gpios = <&gpio4 RK_PD1 GPIO_ACTIVE_LOW>;
vcc-supply = <&vcc2v8_lcd>;
iovcc-supply = <&vcc1v8_lcd>;
pinctrl-names = "default";
port {
mipi_in_panel: endpoint {
remote-endpoint = <&mipi_out_panel>;
};
};
- };
+};
- &pmu_io_domains { pmu1830-supply = <&vcc_1v8>; status = "okay";
@@ -422,6 +536,15 @@ status = "okay"; };
+&pwm0 {
- status = "okay";
+};
+&saradc {
- vref-supply = <&vcca1v8_s3>;
- status = "okay";
+};
- &sdmmc { bus-width = <4>; cap-sd-highspeed;
@@ -472,3 +595,27 @@ &uart2 { status = "okay"; };
+&vopb {
- status = "okay";
- assigned-clocks = <&cru DCLK_VOP0_DIV>, <&cru DCLK_VOP0>,
<&cru ACLK_VOP0>, <&cru HCLK_VOP0>;
- assigned-clock-rates = <0>, <0>, <400000000>, <100000000>;
- assigned-clock-parents = <&cru PLL_GPLL>, <&cru DCLK_VOP0_DIV>;
+};
+&vopb_mmu {
- status = "okay";
+};
+&vopl {
- status = "okay";
- assigned-clocks = <&cru DCLK_VOP1_DIV>, <&cru DCLK_VOP1>,
<&cru ACLK_VOP1>, <&cru HCLK_VOP1>;
- assigned-clock-rates = <0>, <0>, <400000000>, <100000000>;
- assigned-clock-parents = <&cru PLL_GPLL>, <&cru DCLK_VOP1_DIV>;
+};
+&vopl_mmu {
- status = "okay";
+}; diff --git a/configs/pinephone-pro-rk3399_defconfig b/configs/pinephone-pro-rk3399_defconfig index c36898364b5d..1bb7b35a255c 100644 --- a/configs/pinephone-pro-rk3399_defconfig +++ b/configs/pinephone-pro-rk3399_defconfig @@ -3,7 +3,7 @@ CONFIG_SKIP_LOWLEVEL_INIT=y CONFIG_COUNTER_FREQUENCY=24000000 CONFIG_ARCH_ROCKCHIP=y CONFIG_NR_DRAM_BANKS=1 -CONFIG_SF_DEFAULT_SPEED=20000000 +CONFIG_SF_DEFAULT_SPEED=10000000 CONFIG_ENV_SIZE=0x8000 CONFIG_ENV_OFFSET=0x3F8000 CONFIG_DEFAULT_DEVICE_TREE="rk3399-pinephone-pro" @@ -33,7 +33,6 @@ CONFIG_CMD_GPIO=y CONFIG_CMD_GPT=y CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y -CONFIG_CMD_PCI=y CONFIG_CMD_USB=y # CONFIG_CMD_SETEXPR is not set CONFIG_CMD_TIME=y @@ -54,18 +53,20 @@ CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_SDMA=y CONFIG_MMC_SDHCI_ROCKCHIP=y CONFIG_SF_DEFAULT_BUS=1 +CONFIG_SPI_FLASH_SFDP_SUPPORT=y CONFIG_SPI_FLASH_GIGADEVICE=y +CONFIG_SPI_FLASH_SILICONKAISER=y CONFIG_SPI_FLASH_WINBOND=y CONFIG_PHY_ROCKCHIP_INNO_USB2=y CONFIG_PHY_ROCKCHIP_TYPEC=y CONFIG_DM_PMIC_FAN53555=y CONFIG_PMIC_RK8XX=y -CONFIG_REGULATOR_PWM=y CONFIG_REGULATOR_RK8XX=y CONFIG_PWM_ROCKCHIP=y CONFIG_RAM_ROCKCHIP_LPDDR4=y CONFIG_BAUDRATE=1500000 CONFIG_DEBUG_UART_SHIFT=2 +CONFIG_SYS_NS16550_MEM32=y CONFIG_ROCKCHIP_SPI=y CONFIG_SYSRESET=y CONFIG_USB=y @@ -85,5 +86,4 @@ CONFIG_VIDEO=y CONFIG_DISPLAY=y CONFIG_VIDEO_ROCKCHIP=y CONFIG_DISPLAY_ROCKCHIP_EDP=y -CONFIG_SPL_TINY_MEMSET=y CONFIG_ERRNO_STR=y