Re: [PATCH v2 0/6] rockchip: rk3328: sync dts and add ROC-RK3328-CC board
On Fri, Apr 24, 2020 at 5:20 AM Peter Geis wrote: > > On Thu, Apr 23, 2020 at 5:24 AM Chen-Yu Tsai wrote: > > > > Hi, > > > > On Tue, Apr 21, 2020 at 1:35 AM Peter Geis wrote: > > > > > > On Thu, Apr 16, 2020 at 5:53 AM Loic Devulder wrote: > > > > > > > > Hi Chen, > > > > > > > > I tested your patches and all work pretty well. I just had issues with > > > > USB2 that doesn't recognize any of my USB keys (it's OK on USB3). > > > > > > > > I also had these issues with XHCI driver: > > > > => usb reset > > > > resetting USB... > > > > BUG at drivers/usb/host/xhci-mem.c:84/xhci_ring_free()! > > > > BUG! > > > > �esetting ... > > > > > > > > => usb stop > > > > stopping USB.. > > > > Host not halted after 16000 microseconds. > > > > XHCI: failed to set VBus supply > > > > device_remove: Device 'usb@ff60' failed to remove, but children are > > > > gone > > > > > > > > But for the whole series: Tested-by: Loic Devulder > > > > > > > > On Sun, 2020-04-05 at 10:25 +0800, Chen-Yu Tsai wrote: > > > > > From: Chen-Yu Tsai > > > > > > > > > > Hi everyone, > > > > > > > > > > This is v2 of my ROC-RK3328-CC series. Changes from v1 are mainly > > > > > dropping the custom board target, and dealing with the pinmuxing > > > > > through proper use of DM regulators / GPIO / pinctrl in SPL. > > > > > > > > > > This series adds proper support for Firefly / Libre Computer ROC- > > > > > RK3328-CC > > > > > single board computer. > > > > > > > > > > The ROC-RK3328-CC from Firefly and Libre Computer Project is a credit > > > > > card size development board based on the Rockchip RK3328 SoC, with: > > > > > > > > > > - 1/2/4 GB DDR4 DRAM > > > > > - eMMC connector for optional module > > > > > - micro SD card slot > > > > > - 1 x USB 3.0 host port > > > > > - 2 x USB 2.0 host port > > > > > - 1 x USB 2.0 OTG port > > > > > - HDMI video output > > > > > - TRRS connector with audio and composite video output > > > > > - gigabit Ethernet > > > > > - consumer IR receiver > > > > > - debug UART pins > > > > > > > > > > Originally I started with Loic's patches, and syncing the device tree > > > > > files from Linux. That didn't get very far, with SPL failing to > > > > > detect > > > > > the SD card. Examining the schematics and internal state of GRF and > > > > > GPIOs, I realized that the logic for the SD card power enable switch > > > > > is opposite that of what the SD card controller's SDMMC0_PWREN pin > > > > > would use. Instead, directly using the GPIO is required. > > > > > > > > > > To deal with this, DM regulator and GPIO are enabled in SPL, and > > > > > various device nodes are marked with u-boot,dm-spl to have them work. > > > > > pinctrl properties are not stripped, so as to have the SDMMC0_PWREN > > > > > pin muxed over to GPIO. > > > > > > > > > > Along the way, there are some clean-ups of existing dts files, moving > > > > > U-boot only features to -u-boot.dtsi files, and then a wholesale sync > > > > > from Linux. Only boards already existing in U-boot are synced. DT > > > > > binding header files are synced separately as there is already one > > > > > patch floating around. The DT sync also includes clean-up changes > > > > > only > > > > > recently posted, and likely won't make it in for at least a few > > > > > weeks. > > > > > > > > > > Please have a look, and test if possible. I cc-ed a couple people > > > > > that > > > > > showed interest in this board on mailing lists recently. > > > > > > > > > > Regards > > > > > ChenYu > > > > > > > > > > > > > > > Chen-Yu Tsai (6): > > > > > rockchip: dts: rk3328-evb: Move vcc5v0-host-xhci-drv to -u- > > > > > boot.dtsi > > > > > rockchip: dts: rk3328-evb: Move gmac2io related nodes to -u- > > > > > boot.dtsi > > > > > dt-bindings: clock: rk3328: sync from upstream Linux kernel > > > > > dt-bindings: power: rk3328-power: sync from upstream Linux kernel > > > > > rockchip: dts: rk3328: Sync device tree files from Linux > > > > > rockchip: rk3328: Add support for ROC-RK3328-CC board > > > > > > > > > > arch/arm/dts/Makefile |1 + > > > > > arch/arm/dts/rk3328-evb-u-boot.dtsi | 39 + > > > > > arch/arm/dts/rk3328-evb.dts | 220 +-- > > > > > arch/arm/dts/rk3328-roc-cc-u-boot.dtsi| 38 + > > > > > .../{rk3328-rock64.dts => rk3328-roc-cc.dts} | 135 +- > > > > > arch/arm/dts/rk3328-rock64.dts| 132 +- > > > > > arch/arm/dts/rk3328.dtsi | 1420 +++-- > > > > > > > > > > board/rockchip/evb_rk3328/MAINTAINERS |7 + > > > > > configs/roc-cc-rk3328_defconfig | 103 ++ > > > > > doc/README.rockchip |4 +- > > > > > include/dt-bindings/clock/rk3328-cru.h| 212 +-- > > > > > include/dt-bindings/power/rk3328-power.h | 19 + > > > > > 12 files changed, 1578 insertions(+), 752 deletions(-) > > > > > create mode 100644
Re: [PATCH v2 0/6] rockchip: rk3328: sync dts and add ROC-RK3328-CC board
On Thu, Apr 23, 2020 at 5:24 AM Chen-Yu Tsai wrote: > > Hi, > > On Tue, Apr 21, 2020 at 1:35 AM Peter Geis wrote: > > > > On Thu, Apr 16, 2020 at 5:53 AM Loic Devulder wrote: > > > > > > Hi Chen, > > > > > > I tested your patches and all work pretty well. I just had issues with > > > USB2 that doesn't recognize any of my USB keys (it's OK on USB3). > > > > > > I also had these issues with XHCI driver: > > > => usb reset > > > resetting USB... > > > BUG at drivers/usb/host/xhci-mem.c:84/xhci_ring_free()! > > > BUG! > > > �esetting ... > > > > > > => usb stop > > > stopping USB.. > > > Host not halted after 16000 microseconds. > > > XHCI: failed to set VBus supply > > > device_remove: Device 'usb@ff60' failed to remove, but children are > > > gone > > > > > > But for the whole series: Tested-by: Loic Devulder > > > > > > On Sun, 2020-04-05 at 10:25 +0800, Chen-Yu Tsai wrote: > > > > From: Chen-Yu Tsai > > > > > > > > Hi everyone, > > > > > > > > This is v2 of my ROC-RK3328-CC series. Changes from v1 are mainly > > > > dropping the custom board target, and dealing with the pinmuxing > > > > through proper use of DM regulators / GPIO / pinctrl in SPL. > > > > > > > > This series adds proper support for Firefly / Libre Computer ROC- > > > > RK3328-CC > > > > single board computer. > > > > > > > > The ROC-RK3328-CC from Firefly and Libre Computer Project is a credit > > > > card size development board based on the Rockchip RK3328 SoC, with: > > > > > > > > - 1/2/4 GB DDR4 DRAM > > > > - eMMC connector for optional module > > > > - micro SD card slot > > > > - 1 x USB 3.0 host port > > > > - 2 x USB 2.0 host port > > > > - 1 x USB 2.0 OTG port > > > > - HDMI video output > > > > - TRRS connector with audio and composite video output > > > > - gigabit Ethernet > > > > - consumer IR receiver > > > > - debug UART pins > > > > > > > > Originally I started with Loic's patches, and syncing the device tree > > > > files from Linux. That didn't get very far, with SPL failing to > > > > detect > > > > the SD card. Examining the schematics and internal state of GRF and > > > > GPIOs, I realized that the logic for the SD card power enable switch > > > > is opposite that of what the SD card controller's SDMMC0_PWREN pin > > > > would use. Instead, directly using the GPIO is required. > > > > > > > > To deal with this, DM regulator and GPIO are enabled in SPL, and > > > > various device nodes are marked with u-boot,dm-spl to have them work. > > > > pinctrl properties are not stripped, so as to have the SDMMC0_PWREN > > > > pin muxed over to GPIO. > > > > > > > > Along the way, there are some clean-ups of existing dts files, moving > > > > U-boot only features to -u-boot.dtsi files, and then a wholesale sync > > > > from Linux. Only boards already existing in U-boot are synced. DT > > > > binding header files are synced separately as there is already one > > > > patch floating around. The DT sync also includes clean-up changes > > > > only > > > > recently posted, and likely won't make it in for at least a few > > > > weeks. > > > > > > > > Please have a look, and test if possible. I cc-ed a couple people > > > > that > > > > showed interest in this board on mailing lists recently. > > > > > > > > Regards > > > > ChenYu > > > > > > > > > > > > Chen-Yu Tsai (6): > > > > rockchip: dts: rk3328-evb: Move vcc5v0-host-xhci-drv to -u- > > > > boot.dtsi > > > > rockchip: dts: rk3328-evb: Move gmac2io related nodes to -u- > > > > boot.dtsi > > > > dt-bindings: clock: rk3328: sync from upstream Linux kernel > > > > dt-bindings: power: rk3328-power: sync from upstream Linux kernel > > > > rockchip: dts: rk3328: Sync device tree files from Linux > > > > rockchip: rk3328: Add support for ROC-RK3328-CC board > > > > > > > > arch/arm/dts/Makefile |1 + > > > > arch/arm/dts/rk3328-evb-u-boot.dtsi | 39 + > > > > arch/arm/dts/rk3328-evb.dts | 220 +-- > > > > arch/arm/dts/rk3328-roc-cc-u-boot.dtsi| 38 + > > > > .../{rk3328-rock64.dts => rk3328-roc-cc.dts} | 135 +- > > > > arch/arm/dts/rk3328-rock64.dts| 132 +- > > > > arch/arm/dts/rk3328.dtsi | 1420 +++-- > > > > > > > > board/rockchip/evb_rk3328/MAINTAINERS |7 + > > > > configs/roc-cc-rk3328_defconfig | 103 ++ > > > > doc/README.rockchip |4 +- > > > > include/dt-bindings/clock/rk3328-cru.h| 212 +-- > > > > include/dt-bindings/power/rk3328-power.h | 19 + > > > > 12 files changed, 1578 insertions(+), 752 deletions(-) > > > > create mode 100644 arch/arm/dts/rk3328-roc-cc-u-boot.dtsi > > > > copy arch/arm/dts/{rk3328-rock64.dts => rk3328-roc-cc.dts} (68%) > > > > create mode 100644 configs/roc-cc-rk3328_defconfig > > > > create mode 100644 include/dt-bindings/power/rk3328-power.h > > > > > > > -- > > > Loic Devulder | ldevulder@irc > > >
Re: [PATCH v2 0/6] rockchip: rk3328: sync dts and add ROC-RK3328-CC board
Hi, On Tue, Apr 21, 2020 at 1:35 AM Peter Geis wrote: > > On Thu, Apr 16, 2020 at 5:53 AM Loic Devulder wrote: > > > > Hi Chen, > > > > I tested your patches and all work pretty well. I just had issues with > > USB2 that doesn't recognize any of my USB keys (it's OK on USB3). > > > > I also had these issues with XHCI driver: > > => usb reset > > resetting USB... > > BUG at drivers/usb/host/xhci-mem.c:84/xhci_ring_free()! > > BUG! > > �esetting ... > > > > => usb stop > > stopping USB.. > > Host not halted after 16000 microseconds. > > XHCI: failed to set VBus supply > > device_remove: Device 'usb@ff60' failed to remove, but children are > > gone > > > > But for the whole series: Tested-by: Loic Devulder > > > > On Sun, 2020-04-05 at 10:25 +0800, Chen-Yu Tsai wrote: > > > From: Chen-Yu Tsai > > > > > > Hi everyone, > > > > > > This is v2 of my ROC-RK3328-CC series. Changes from v1 are mainly > > > dropping the custom board target, and dealing with the pinmuxing > > > through proper use of DM regulators / GPIO / pinctrl in SPL. > > > > > > This series adds proper support for Firefly / Libre Computer ROC- > > > RK3328-CC > > > single board computer. > > > > > > The ROC-RK3328-CC from Firefly and Libre Computer Project is a credit > > > card size development board based on the Rockchip RK3328 SoC, with: > > > > > > - 1/2/4 GB DDR4 DRAM > > > - eMMC connector for optional module > > > - micro SD card slot > > > - 1 x USB 3.0 host port > > > - 2 x USB 2.0 host port > > > - 1 x USB 2.0 OTG port > > > - HDMI video output > > > - TRRS connector with audio and composite video output > > > - gigabit Ethernet > > > - consumer IR receiver > > > - debug UART pins > > > > > > Originally I started with Loic's patches, and syncing the device tree > > > files from Linux. That didn't get very far, with SPL failing to > > > detect > > > the SD card. Examining the schematics and internal state of GRF and > > > GPIOs, I realized that the logic for the SD card power enable switch > > > is opposite that of what the SD card controller's SDMMC0_PWREN pin > > > would use. Instead, directly using the GPIO is required. > > > > > > To deal with this, DM regulator and GPIO are enabled in SPL, and > > > various device nodes are marked with u-boot,dm-spl to have them work. > > > pinctrl properties are not stripped, so as to have the SDMMC0_PWREN > > > pin muxed over to GPIO. > > > > > > Along the way, there are some clean-ups of existing dts files, moving > > > U-boot only features to -u-boot.dtsi files, and then a wholesale sync > > > from Linux. Only boards already existing in U-boot are synced. DT > > > binding header files are synced separately as there is already one > > > patch floating around. The DT sync also includes clean-up changes > > > only > > > recently posted, and likely won't make it in for at least a few > > > weeks. > > > > > > Please have a look, and test if possible. I cc-ed a couple people > > > that > > > showed interest in this board on mailing lists recently. > > > > > > Regards > > > ChenYu > > > > > > > > > Chen-Yu Tsai (6): > > > rockchip: dts: rk3328-evb: Move vcc5v0-host-xhci-drv to -u- > > > boot.dtsi > > > rockchip: dts: rk3328-evb: Move gmac2io related nodes to -u- > > > boot.dtsi > > > dt-bindings: clock: rk3328: sync from upstream Linux kernel > > > dt-bindings: power: rk3328-power: sync from upstream Linux kernel > > > rockchip: dts: rk3328: Sync device tree files from Linux > > > rockchip: rk3328: Add support for ROC-RK3328-CC board > > > > > > arch/arm/dts/Makefile |1 + > > > arch/arm/dts/rk3328-evb-u-boot.dtsi | 39 + > > > arch/arm/dts/rk3328-evb.dts | 220 +-- > > > arch/arm/dts/rk3328-roc-cc-u-boot.dtsi| 38 + > > > .../{rk3328-rock64.dts => rk3328-roc-cc.dts} | 135 +- > > > arch/arm/dts/rk3328-rock64.dts| 132 +- > > > arch/arm/dts/rk3328.dtsi | 1420 +++-- > > > > > > board/rockchip/evb_rk3328/MAINTAINERS |7 + > > > configs/roc-cc-rk3328_defconfig | 103 ++ > > > doc/README.rockchip |4 +- > > > include/dt-bindings/clock/rk3328-cru.h| 212 +-- > > > include/dt-bindings/power/rk3328-power.h | 19 + > > > 12 files changed, 1578 insertions(+), 752 deletions(-) > > > create mode 100644 arch/arm/dts/rk3328-roc-cc-u-boot.dtsi > > > copy arch/arm/dts/{rk3328-rock64.dts => rk3328-roc-cc.dts} (68%) > > > create mode 100644 configs/roc-cc-rk3328_defconfig > > > create mode 100644 include/dt-bindings/power/rk3328-power.h > > > > > -- > > Loic Devulder | ldevulder@irc > > 0x175A963893C85F55 | D220 DEF5 56A3 DE00 9DAA 78BA 175A 9638 93C8 5F55 > > Senior QA Engineer | Container & Storage Solutions Quality Assurance > > team (qa-css) > > SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nuernberg, Germany > > GF: Felix Imendörffer, Mary Higgins, Sri Rasiah HRB, 21284 (AG > >
Re: [PATCH v2 0/6] rockchip: rk3328: sync dts and add ROC-RK3328-CC board
On Thu, Apr 16, 2020 at 5:53 AM Loic Devulder wrote: > > Hi Chen, > > I tested your patches and all work pretty well. I just had issues with > USB2 that doesn't recognize any of my USB keys (it's OK on USB3). > > I also had these issues with XHCI driver: > => usb reset > resetting USB... > BUG at drivers/usb/host/xhci-mem.c:84/xhci_ring_free()! > BUG! > �esetting ... > > => usb stop > stopping USB.. > Host not halted after 16000 microseconds. > XHCI: failed to set VBus supply > device_remove: Device 'usb@ff60' failed to remove, but children are > gone > > But for the whole series: Tested-by: Loic Devulder > > On Sun, 2020-04-05 at 10:25 +0800, Chen-Yu Tsai wrote: > > From: Chen-Yu Tsai > > > > Hi everyone, > > > > This is v2 of my ROC-RK3328-CC series. Changes from v1 are mainly > > dropping the custom board target, and dealing with the pinmuxing > > through proper use of DM regulators / GPIO / pinctrl in SPL. > > > > This series adds proper support for Firefly / Libre Computer ROC- > > RK3328-CC > > single board computer. > > > > The ROC-RK3328-CC from Firefly and Libre Computer Project is a credit > > card size development board based on the Rockchip RK3328 SoC, with: > > > > - 1/2/4 GB DDR4 DRAM > > - eMMC connector for optional module > > - micro SD card slot > > - 1 x USB 3.0 host port > > - 2 x USB 2.0 host port > > - 1 x USB 2.0 OTG port > > - HDMI video output > > - TRRS connector with audio and composite video output > > - gigabit Ethernet > > - consumer IR receiver > > - debug UART pins > > > > Originally I started with Loic's patches, and syncing the device tree > > files from Linux. That didn't get very far, with SPL failing to > > detect > > the SD card. Examining the schematics and internal state of GRF and > > GPIOs, I realized that the logic for the SD card power enable switch > > is opposite that of what the SD card controller's SDMMC0_PWREN pin > > would use. Instead, directly using the GPIO is required. > > > > To deal with this, DM regulator and GPIO are enabled in SPL, and > > various device nodes are marked with u-boot,dm-spl to have them work. > > pinctrl properties are not stripped, so as to have the SDMMC0_PWREN > > pin muxed over to GPIO. > > > > Along the way, there are some clean-ups of existing dts files, moving > > U-boot only features to -u-boot.dtsi files, and then a wholesale sync > > from Linux. Only boards already existing in U-boot are synced. DT > > binding header files are synced separately as there is already one > > patch floating around. The DT sync also includes clean-up changes > > only > > recently posted, and likely won't make it in for at least a few > > weeks. > > > > Please have a look, and test if possible. I cc-ed a couple people > > that > > showed interest in this board on mailing lists recently. > > > > Regards > > ChenYu > > > > > > Chen-Yu Tsai (6): > > rockchip: dts: rk3328-evb: Move vcc5v0-host-xhci-drv to -u- > > boot.dtsi > > rockchip: dts: rk3328-evb: Move gmac2io related nodes to -u- > > boot.dtsi > > dt-bindings: clock: rk3328: sync from upstream Linux kernel > > dt-bindings: power: rk3328-power: sync from upstream Linux kernel > > rockchip: dts: rk3328: Sync device tree files from Linux > > rockchip: rk3328: Add support for ROC-RK3328-CC board > > > > arch/arm/dts/Makefile |1 + > > arch/arm/dts/rk3328-evb-u-boot.dtsi | 39 + > > arch/arm/dts/rk3328-evb.dts | 220 +-- > > arch/arm/dts/rk3328-roc-cc-u-boot.dtsi| 38 + > > .../{rk3328-rock64.dts => rk3328-roc-cc.dts} | 135 +- > > arch/arm/dts/rk3328-rock64.dts| 132 +- > > arch/arm/dts/rk3328.dtsi | 1420 +++-- > > > > board/rockchip/evb_rk3328/MAINTAINERS |7 + > > configs/roc-cc-rk3328_defconfig | 103 ++ > > doc/README.rockchip |4 +- > > include/dt-bindings/clock/rk3328-cru.h| 212 +-- > > include/dt-bindings/power/rk3328-power.h | 19 + > > 12 files changed, 1578 insertions(+), 752 deletions(-) > > create mode 100644 arch/arm/dts/rk3328-roc-cc-u-boot.dtsi > > copy arch/arm/dts/{rk3328-rock64.dts => rk3328-roc-cc.dts} (68%) > > create mode 100644 configs/roc-cc-rk3328_defconfig > > create mode 100644 include/dt-bindings/power/rk3328-power.h > > > -- > Loic Devulder | ldevulder@irc > 0x175A963893C85F55 | D220 DEF5 56A3 DE00 9DAA 78BA 175A 9638 93C8 5F55 > Senior QA Engineer | Container & Storage Solutions Quality Assurance > team (qa-css) > SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nuernberg, Germany > GF: Felix Imendörffer, Mary Higgins, Sri Rasiah HRB, 21284 (AG > Nuernberg) Good Afternoon, I have tested this patch set against u-boot git as of 20 April 2020 and have some feedback. The issue of booting off the sdmmc is fixed, thanks! The USB issues above come from a few issues: vcc_host1_5v is set to regulator-always-on, which prevents USB from resetting
Re: [PATCH v2 0/6] rockchip: rk3328: sync dts and add ROC-RK3328-CC board
On Sun, 2020-04-05 at 10:25 +0800, Chen-Yu Tsai wrote: > From: Chen-Yu Tsai > > Hi everyone, > > This is v2 of my ROC-RK3328-CC series. Changes from v1 are mainly > dropping the custom board target, and dealing with the pinmuxing > through proper use of DM regulators / GPIO / pinctrl in SPL. > > This series adds proper support for Firefly / Libre Computer ROC-RK3328-CC > single board computer. > > The ROC-RK3328-CC from Firefly and Libre Computer Project is a credit > card size development board based on the Rockchip RK3328 SoC, with: > > - 1/2/4 GB DDR4 DRAM > - eMMC connector for optional module > - micro SD card slot > - 1 x USB 3.0 host port > - 2 x USB 2.0 host port > - 1 x USB 2.0 OTG port > - HDMI video output > - TRRS connector with audio and composite video output > - gigabit Ethernet > - consumer IR receiver > - debug UART pins > > Originally I started with Loic's patches, and syncing the device tree > files from Linux. That didn't get very far, with SPL failing to detect > the SD card. Examining the schematics and internal state of GRF and > GPIOs, I realized that the logic for the SD card power enable switch > is opposite that of what the SD card controller's SDMMC0_PWREN pin > would use. Instead, directly using the GPIO is required. > > To deal with this, DM regulator and GPIO are enabled in SPL, and > various device nodes are marked with u-boot,dm-spl to have them work. > pinctrl properties are not stripped, so as to have the SDMMC0_PWREN > pin muxed over to GPIO. > > Along the way, there are some clean-ups of existing dts files, moving > U-boot only features to -u-boot.dtsi files, and then a wholesale sync > from Linux. Only boards already existing in U-boot are synced. DT > binding header files are synced separately as there is already one > patch floating around. The DT sync also includes clean-up changes only > recently posted, and likely won't make it in for at least a few weeks. > > Please have a look, and test if possible. I cc-ed a couple people that > showed interest in this board on mailing lists recently. > > Regards > ChenYu > > > Chen-Yu Tsai (6): > rockchip: dts: rk3328-evb: Move vcc5v0-host-xhci-drv to -u-boot.dtsi > rockchip: dts: rk3328-evb: Move gmac2io related nodes to -u-boot.dtsi > dt-bindings: clock: rk3328: sync from upstream Linux kernel > dt-bindings: power: rk3328-power: sync from upstream Linux kernel > rockchip: dts: rk3328: Sync device tree files from Linux > rockchip: rk3328: Add support for ROC-RK3328-CC board > > arch/arm/dts/Makefile |1 + > arch/arm/dts/rk3328-evb-u-boot.dtsi | 39 + > arch/arm/dts/rk3328-evb.dts | 220 +-- > arch/arm/dts/rk3328-roc-cc-u-boot.dtsi| 38 + > .../{rk3328-rock64.dts => rk3328-roc-cc.dts} | 135 +- > arch/arm/dts/rk3328-rock64.dts| 132 +- > arch/arm/dts/rk3328.dtsi | 1420 +++-- > board/rockchip/evb_rk3328/MAINTAINERS |7 + > configs/roc-cc-rk3328_defconfig | 103 ++ > doc/README.rockchip |4 +- > include/dt-bindings/clock/rk3328-cru.h| 212 +-- > include/dt-bindings/power/rk3328-power.h | 19 + > 12 files changed, 1578 insertions(+), 752 deletions(-) > create mode 100644 arch/arm/dts/rk3328-roc-cc-u-boot.dtsi > copy arch/arm/dts/{rk3328-rock64.dts => rk3328-roc-cc.dts} (68%) > create mode 100644 configs/roc-cc-rk3328_defconfig > create mode 100644 include/dt-bindings/power/rk3328-power.h > Hi ChenYu, I needed to apply the following additional diff to your patchset to allow the Rock64 v3 board to boot through SPL. I copied the same approach from your ROC-RK3328-CC changes. While it works it needs expert review. diff --git a/arch/arm/dts/rk3328-rock64-u-boot.dtsi b/arch/arm/dts/rk3328-rock64-u-boot.dtsi index e5946d2d2d..7d4ae66834 100644 --- a/arch/arm/dts/rk3328-rock64-u-boot.dtsi +++ b/arch/arm/dts/rk3328-rock64-u-boot.dtsi @@ -11,6 +11,27 @@ }; }; + { + u-boot,dm-spl; +}; + + { + u-boot,dm-spl; +}; + +_gpio { + u-boot,dm-spl; +}; + +_pull_up_4ma { + u-boot,dm-spl; +}; + _host0_xhci { status = "okay"; }; + +/* Need this and all the pinctrl/gpio stuff above to set pinmux */ +_sd { + u-boot,dm-spl; +}; diff --git a/configs/rock64-rk3328_defconfig b/configs/rock64-rk3328_defconfig index 826c7a6917..5e4516635e 100644 --- a/configs/rock64-rk3328_defconfig +++ b/configs/rock64-rk3328_defconfig @@ -1,6 +1,7 @@ CONFIG_ARM=y CONFIG_ARCH_ROCKCHIP=y CONFIG_SYS_TEXT_BASE=0x0020 +CONFIG_SPL_GPIO_SUPPORT=y CONFIG_ENV_OFFSET=0x3F8000 CONFIG_ROCKCHIP_RK3328=y CONFIG_TPL_ROCKCHIP_COMMON_BOARD=y @@ -25,6 +26,8 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y # CONFIG_SPL_RAW_IMAGE_SUPPORT is not set CONFIG_TPL_SYS_MALLOC_SIMPLE=y CONFIG_SPL_STACK_R=y +CONFIG_SPL_I2C_SUPPORT=y +CONFIG_SPL_POWER_SUPPORT=y CONFIG_SPL_ATF=y
[PATCH v2 0/6] rockchip: rk3328: sync dts and add ROC-RK3328-CC board
From: Chen-Yu Tsai Hi everyone, This is v2 of my ROC-RK3328-CC series. Changes from v1 are mainly dropping the custom board target, and dealing with the pinmuxing through proper use of DM regulators / GPIO / pinctrl in SPL. This series adds proper support for Firefly / Libre Computer ROC-RK3328-CC single board computer. The ROC-RK3328-CC from Firefly and Libre Computer Project is a credit card size development board based on the Rockchip RK3328 SoC, with: - 1/2/4 GB DDR4 DRAM - eMMC connector for optional module - micro SD card slot - 1 x USB 3.0 host port - 2 x USB 2.0 host port - 1 x USB 2.0 OTG port - HDMI video output - TRRS connector with audio and composite video output - gigabit Ethernet - consumer IR receiver - debug UART pins Originally I started with Loic's patches, and syncing the device tree files from Linux. That didn't get very far, with SPL failing to detect the SD card. Examining the schematics and internal state of GRF and GPIOs, I realized that the logic for the SD card power enable switch is opposite that of what the SD card controller's SDMMC0_PWREN pin would use. Instead, directly using the GPIO is required. To deal with this, DM regulator and GPIO are enabled in SPL, and various device nodes are marked with u-boot,dm-spl to have them work. pinctrl properties are not stripped, so as to have the SDMMC0_PWREN pin muxed over to GPIO. Along the way, there are some clean-ups of existing dts files, moving U-boot only features to -u-boot.dtsi files, and then a wholesale sync from Linux. Only boards already existing in U-boot are synced. DT binding header files are synced separately as there is already one patch floating around. The DT sync also includes clean-up changes only recently posted, and likely won't make it in for at least a few weeks. Please have a look, and test if possible. I cc-ed a couple people that showed interest in this board on mailing lists recently. Regards ChenYu Chen-Yu Tsai (6): rockchip: dts: rk3328-evb: Move vcc5v0-host-xhci-drv to -u-boot.dtsi rockchip: dts: rk3328-evb: Move gmac2io related nodes to -u-boot.dtsi dt-bindings: clock: rk3328: sync from upstream Linux kernel dt-bindings: power: rk3328-power: sync from upstream Linux kernel rockchip: dts: rk3328: Sync device tree files from Linux rockchip: rk3328: Add support for ROC-RK3328-CC board arch/arm/dts/Makefile |1 + arch/arm/dts/rk3328-evb-u-boot.dtsi | 39 + arch/arm/dts/rk3328-evb.dts | 220 +-- arch/arm/dts/rk3328-roc-cc-u-boot.dtsi| 38 + .../{rk3328-rock64.dts => rk3328-roc-cc.dts} | 135 +- arch/arm/dts/rk3328-rock64.dts| 132 +- arch/arm/dts/rk3328.dtsi | 1420 +++-- board/rockchip/evb_rk3328/MAINTAINERS |7 + configs/roc-cc-rk3328_defconfig | 103 ++ doc/README.rockchip |4 +- include/dt-bindings/clock/rk3328-cru.h| 212 +-- include/dt-bindings/power/rk3328-power.h | 19 + 12 files changed, 1578 insertions(+), 752 deletions(-) create mode 100644 arch/arm/dts/rk3328-roc-cc-u-boot.dtsi copy arch/arm/dts/{rk3328-rock64.dts => rk3328-roc-cc.dts} (68%) create mode 100644 configs/roc-cc-rk3328_defconfig create mode 100644 include/dt-bindings/power/rk3328-power.h -- 2.26.0