Add Qualcomm Technologies, Inc. Talos EVK SMARC support
v4 cover Add Qualcomm Technologies, Inc. Talos EVK SMARC support
Hi all,
This patch series adds device tree binding and board support for the Qualcomm Technologies, Inc. Talos EVK SMARC platform based on the QCS615 SoC.
The first patch introduces the DT binding entry for the Talos EVK SMARC board, and the second patch adds the corresponding DTS files for the platform.
Note:USB(usb_1_dwc3) supports host-only mode based on the switch SW1 on the SoM, which is purely a hardware controlled as USB-ID and USB-VBUS is not connected the switching cannot be handled from SW. Hence from SW Host-only mode is supported on Linux boot up.
Changes in v4:
- Updated product name to full form per Krzysztof’s feedback in dt-binding comment.
- Hook up the ADV7535 DSI-to-HDMI bridge to base DTS file.
- Add DP connector node and MDSS DisplayPort controller.
- Added USB note in the cover letter for maintainers' awareness.
Changes in v3:
- Addressed comments from Dmitry regarding USB1 dr_mode and added a DTS comment.
- No functional change in bindings file.
Changes in v2:
- Renamed compatible to "qcom,talos-evk" (suggested by Dmitry/Bjorn)
- Merged enum entry with existing qcs615-ride block (Krzysztof)
- Fixed subject and commit message to use imperative mood.
Thanks,
Sudarshan
Sudarshan Shetty (2):
dt-bindings: arm: qcom: talos-evk: Add QCS615 Talos EVK SMARC platform
arm64: dts: qcom: talos-evk: Add support for QCS615 talos evk board
.../devicetree/bindings/arm/qcom.yaml | 1 + arch/arm64/boot/dts/qcom/Makefile | 1 + arch/arm64/boot/dts/qcom/talos-evk-som.dtsi | 442 ++++++++++++++++++ arch/arm64/boot/dts/qcom/talos-evk.dts | 134 ++++++ 4 files changed, 578 insertions(+) create mode 100644 arch/arm64/boot/dts/qcom/talos-evk-som.dtsi create mode 100644 arch/arm64/boot/dts/qcom/talos-evk.dts
Signature · 1 line
2.34.1
PATCH v4 1/2 dt-bindings: arm: qcom: talos-evk: Add QCS615 Talos EVK SMARC platform
Add binding support for the Qualcomm Technologies, Inc. Talos EVK SMARC platform based on the QCS615 SoC.
--- Documentation/devicetree/bindings/arm/qcom.yaml | 1 + 1 file changed, 1 insertion(+)
Documentation/devicetree/bindings/arm/qcom.yaml +1 -0
@@ -862,6 +862,7 @@ properties: - items: - enum: - qcom,qcs615-ride + - qcom,talos-evk - const: qcom,qcs615 - const: qcom,sm6150
Signature · 1 line
2.34.1
Re: [PATCH v4 1/2] dt-bindings: arm: qcom: talos-evk: Add QCS615 Talos EVK SMARC platform
Quoted 7 lines · Sudarshan Shetty
Add binding support for the Qualcomm Technologies, Inc. Talos EVK SMARC platform based on the QCS615 SoC.
Signed-off-by Sudarshan Shetty <[email protected]>--- Documentation/devicetree/bindings/arm/qcom.yaml | 1 + 1 file changed, 1 insertion(+)
Best regards,
Krzysztof
PATCH v4 2/2 arm64: dts: qcom: talos-evk: Add support for QCS615 talos evk board
In reply to Sudarshan ShettyIntroduce the device tree support for the QCS615-based talos-evk platform, which follows the SMARC (Smart Mobility ARChitecture) standard. The platform is composed of two main hardware
components: the talos-evk-som and the talos-evk carrier board.
The talos-evk-som is a compact System on Module that integrates the QCS615 SoC, PMIC, and essential GPIO connectivity. It follows the SMARC standard, which defines a modular form factor allowing the SoM to be paired with different carrier boards for varied applications.
The talos-evk is one such carrier board, designed for evaluation and development purposes. It provides additional peripherals such as UART, USB, and other interfaces to enable rapid prototyping and hardware bring-up.
This initial device tree provides the basic configuration needed to boot the platform to a UART shell. Further patches will extend support for additional peripherals and subsystems.
The initial device tree includes basic support for:
- CPU and memory
- UART
- GPIOs
- Regulators
- PMIC
- Early console
- AT24MAC602 EEPROM
- MCP2515 SPI to CAN
- Hook up the ADV7535 DSI-to-HDMI bridge
- Add DP connector node and MDSS DisplayPort controller.
QCS615 talos-evk uses a Quectel AF68E WiFi/BT module (PCIe for WiFi and UART for Bluetooth), which is different from the RIDE platform. Plan to enable these in a follow-up patch series.
--- arch/arm64/boot/dts/qcom/Makefile | 1 + arch/arm64/boot/dts/qcom/talos-evk-som.dtsi | 442 ++++++++++++++++++++ arch/arm64/boot/dts/qcom/talos-evk.dts | 134 ++++++ 3 files changed, 577 insertions(+) create mode 100644 arch/arm64/boot/dts/qcom/talos-evk-som.dtsi create mode 100644 arch/arm64/boot/dts/qcom/talos-evk.dts
arch/arm64/boot/dts/qcom/Makefile +1 -0
@@ -305,6 +305,7 @@ dtb-$(CONFIG_ARCH_QCOM) += sm8650-mtp.dtb dtb-$(CONFIG_ARCH_QCOM) += sm8650-qrd.dtb dtb-$(CONFIG_ARCH_QCOM) += sm8750-mtp.dtb dtb-$(CONFIG_ARCH_QCOM) += sm8750-qrd.dtb +dtb-$(CONFIG_ARCH_QCOM) += talos-evk.dtb x1e001de-devkit-el2-dtbs := x1e001de-devkit.dtb x1-el2.dtbo dtb-$(CONFIG_ARCH_QCOM) += x1e001de-devkit.dtb x1e001de-devkit-el2.dtb x1e78100-lenovo-thinkpad-t14s-el2-dtbs := x1e78100-lenovo-thinkpad-t14s.dtb x1-el2.dtbo
arch/arm64/boot/dts/qcom/talos-evk-som.dtsi new file +442 -0
442 lines not on this page · raw message
arch/arm64/boot/dts/qcom/talos-evk.dts new file +133 -0
133 lines not on this page · raw message
Signature · 1 line
2.34.1
Re: [PATCH v4 2/2] arm64: dts: qcom: talos-evk: Add support for QCS615 talos evk board
Quoted 9 lines · Sudarshan Shetty
Introduce the device tree support for the QCS615-based talos-evk platform, which follows the SMARC (Smart Mobility ARChitecture) standard. The platform is composed of two main hardware
components: the talos-evk-som and the talos-evk carrier board.The talos-evk-som is a compact System on Module that integrates the QCS615 SoC, PMIC, and essential GPIO connectivity. It follows the SMARC standard, which defines a modular form factor allowing the SoM to be paired with different carrier boards for varied applications.
Drop paragraph, completely redundant. Please write concise, informative messages, not something redundant and obvious. Or worse - marketing junk.
Quoted 9 lines
The talos-evk is one such carrier board, designed for evaluation and development purposes. It provides additional peripherals such as UART, USB, and other interfaces to enable rapid prototyping and hardware bring-up.
This initial device tree provides the basic configuration needed to boot the platform to a UART shell. Further patches will extend support for additional peripherals and subsystems.
Drop paragraph, it is contradictory to the next one.
Quoted 5 lines
The initial device tree includes basic support for:
- CPU and memory
Drop blank lines
between
each
of
points. No need to inflate already huge commit msg.
Quoted 14 lines
- UART
- GPIOs
- Regulators
- PMIC
- Early console
- AT24MAC602 EEPROM
- MCP2515 SPI to CAN
Quoted 7 lines
- Hook up the ADV7535 DSI-to-HDMI bridge
- Add DP connector node and MDSS DisplayPort controller.
QCS615 talos-evk uses a Quectel AF68E WiFi/BT module (PCIe for WiFi and UART for Bluetooth), which is different from the RIDE platform. Plan to enable these in a follow-up patch series.
Drop plans, not related. I also do not understand why you mention here RIDE. Does it mean you are duplicating the board?
Quoted 1 line
..
Quoted 14 lines
+&sdhc_1 {
arch/arm64/boot/dts/qcom/talos-evk-som.dtsi new file +13
-0+ pinctrl-0 = <&sdc1_state_on>; + pinctrl-1 = <&sdc1_state_off>; + pinctrl-names = "default", "sleep"; + + bus-width = <8>; + mmc-ddr-1_8v; + mmc-hs200-1_8v; + mmc-hs400-1_8v; + mmc-hs400-enhanced-strobe; + vmmc-supply = <&vreg_l17a>; + vqmmc-supply = <&vreg_s4a>; + + non-removable;
arch/arm64/boot/dts/qcom/talos-evk-som.dtsi line 344
Quoted 10 lines
arch/arm64/boot/dts/qcom/talos-evk-som.dtsi new file +10
-0+ no-sd; + no-sdio; + + status = "okay"; +}; + +&spi6 { + status = "okay"; + + mcp2515@0 {
Still no improvements.
Node names should be generic. See also an explanation and list of examples (not exhaustive) in DT specification:
https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation
If you cannot find a name matching your device, please check in kernel sources for similar cases or you can grow the spec (via pull request to DT spec repo).
Quoted 9 lines
arch/arm64/boot/dts/qcom/talos-evk-som.dtsi new file +9
-0+ compatible = "microchip,mcp2515"; + reg = <0>; + clock-frequency = <20000000>; + interrupts-extended = <&tlmm 87 IRQ_TYPE_LEVEL_LOW>; + spi-max-frequency = <10000000>; + vdd-supply = <&vreg_v3p3_can>; + xceiver-supply = <&vreg_v5p0_can>; + }; +};
..
Quoted 14 lines
arch/arm64/boot/dts/qcom/talos-evk.dts new file +8
-0@@ -0,0 +1,133 @@ +// SPDX-License-Identifier: BSD-3-Clause +/* + * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries. + */ +/dts-v1/; + +#include "talos-evk-som.dtsi" +
arch/arm64/boot/dts/qcom/talos-evk.dts line 18
Quoted 10 lines
arch/arm64/boot/dts/qcom/talos-evk.dts new file +10
-0+/ { + model = "Qualcomm QCS615 IQ 615 EVK"; + compatible = "qcom,talos-evk", "qcom,qcs615", "qcom,sm6150"; + chassis-type = "embedded"; + + aliases { + mmc1 = &sdhc_2; + }; + + dp0-connector {
dp-connector, unless there is here dp1. But then follow standard practice of adding suffixes, so connector-0, connector-1, etc. I could understand dp-connector-1 if you find dp-connector here:
Quoted 12 lines
arch/arm64/boot/dts/qcom/talos-evk.dts new file +12
-0+ compatible = "dp-connector"; + label = "DP0"; + type = "full-size"; + + hpd-gpios = <&tlmm 104 GPIO_ACTIVE_HIGH>; + + port { + dp0_connector_in: endpoint { + remote-endpoint = <&mdss_dp0_out>; + }; + }; + };
...
arch/arm64/boot/dts/qcom/talos-evk.dts line 79
Quoted 7 lines
arch/arm64/boot/dts/qcom/talos-evk.dts new file +7
-0+ +&i2c1 { + clock-frequency = <400000>; + + status = "okay"; + + adv7535: adv7535@3d {
Still no improvements.
Node names should be generic. See also an explanation and list of examples (not exhaustive) in DT specification:
https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation
If you cannot find a name matching your device, please check in kernel sources for similar cases or you can grow the spec (via pull request to DT spec repo).
Best regards,
Krzysztof
Re: [PATCH v4 2/2] arm64: dts: qcom: talos-evk: Add support for QCS615 talos evk board
Quoted 6 lines · Krzysztof Kozlowski
Quoted 5 lines · Sudarshan Shetty
Introduce the device tree support for the QCS615-based talos-evk platform, which follows the SMARC (Smart Mobility ARChitecture) standard. The platform is composed of two main hardware
components: the talos-evk-som and the talos-evk carrier board.
Quoted 8 lines
Quoted 4 lines
The talos-evk-som is a compact System on Module that integrates the QCS615 SoC, PMIC, and essential GPIO connectivity. It follows the SMARC standard, which defines a modular form factor allowing the SoM to be paired with different carrier boards for varied applications.
Drop paragraph, completely redundant. Please write concise, informative messages, not something redundant and obvious. Or worse - marketing junk.
Okay, will update in next patch.
Quoted 7 lines
Quoted 7 lines
The talos-evk is one such carrier board, designed for evaluation and development purposes. It provides additional peripherals such as UART, USB, and other interfaces to enable rapid prototyping and hardware bring-up.
Quoted 5 lines
Quoted 3 lines
This initial device tree provides the basic configuration needed to boot the platform to a UART shell. Further patches will extend support for additional peripherals and subsystems.
Drop paragraph, it is contradictory to the next one.
Okay, will update in next patch.
Quoted 9 lines
Quoted 6 lines
The initial device tree includes basic support for:
- CPU and memory
Drop blank lines
Quoted 7 lines
between
each
of
points. No need to inflate already huge commit msg.
Okay, will update in next patch.
Quoted 18 lines
Quoted 18 lines
- UART
- GPIOs
- Regulators
- PMIC
- Early console
- AT24MAC602 EEPROM
- MCP2515 SPI to CAN
- Hook up the ADV7535 DSI-to-HDMI bridge
Quoted 9 lines
Quoted 5 lines
- Add DP connector node and MDSS DisplayPort controller.
QCS615 talos-evk uses a Quectel AF68E WiFi/BT module (PCIe for WiFi and UART for Bluetooth), which is different from the RIDE platform. Plan to enable these in a follow-up patch series.
Drop plans, not related. I also do not understand why you mention here RIDE. Does it mean you are duplicating the board?
This comment is added as per Dmitry feedback.
https://lore.kernel.org/all/qq4aak33bn3mqxd2edu6zgkkshby63mmitg7zqkly2rj4c2lh7@4s7sndb7e2jr/T/#m6f653d7b4bd9b014dcbd86a4680cfd64583e784d
Let me know your thought on this again,
I can remove and send the updated patch.
Quoted 32 lines
Quoted 1 line
..
Quoted 14 lines
+&sdhc_1 {
arch/arm64/boot/dts/qcom/talos-evk-som.dtsi new file +13
-0+ pinctrl-0 = <&sdc1_state_on>; + pinctrl-1 = <&sdc1_state_off>; + pinctrl-names = "default", "sleep"; + + bus-width = <8>; + mmc-ddr-1_8v; + mmc-hs200-1_8v; + mmc-hs400-1_8v; + mmc-hs400-enhanced-strobe; + vmmc-supply = <&vreg_l17a>; + vqmmc-supply = <&vreg_s4a>; + + non-removable;arch/arm64/boot/dts/qcom/talos-evk-som.dtsi line 344
Quoted 10 lines
arch/arm64/boot/dts/qcom/talos-evk-som.dtsi new file +10
-0+ no-sd; + no-sdio; + + status = "okay"; +}; + +&spi6 { + status = "okay"; + + mcp2515@0 {Still no improvements.
Quoted 6 lines
Node names should be generic. See also an explanation and list of examples (not exhaustive) in DT specification:
https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation
If you cannot find a name matching your device, please check in kernel sources for similar cases or you can grow the spec (via pull request to DT spec repo).
Understood, will update in next patch.
Quoted 42 lines
Quoted 10 lines
arch/arm64/boot/dts/qcom/talos-evk-som.dtsi new file +9
-0+ compatible = "microchip,mcp2515"; + reg = <0>; + clock-frequency = <20000000>; + interrupts-extended = <&tlmm 87 IRQ_TYPE_LEVEL_LOW>; + spi-max-frequency = <10000000>; + vdd-supply = <&vreg_v3p3_can>; + xceiver-supply = <&vreg_v5p0_can>; + }; +};..
Quoted 14 lines
arch/arm64/boot/dts/qcom/talos-evk.dts new file +8
-0@@ -0,0 +1,133 @@ +// SPDX-License-Identifier: BSD-3-Clause +/* + * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries. + */ +/dts-v1/; + +#include "talos-evk-som.dtsi" +arch/arm64/boot/dts/qcom/talos-evk.dts line 18
Quoted 10 lines
arch/arm64/boot/dts/qcom/talos-evk.dts new file +10
-0+/ { + model = "Qualcomm QCS615 IQ 615 EVK"; + compatible = "qcom,talos-evk", "qcom,qcs615", "qcom,sm6150"; + chassis-type = "embedded"; + + aliases { + mmc1 = &sdhc_2; + }; + + dp0-connector {dp-connector, unless there is here dp1. But then follow standard practice of adding suffixes, so connector-0, connector-1, etc. I could understand dp-connector-1 if you find dp-connector here:
Understood, will update in next patch.
Quoted 26 lines
Quoted 13 lines
arch/arm64/boot/dts/qcom/talos-evk.dts new file +12
-0+ compatible = "dp-connector"; + label = "DP0"; + type = "full-size"; + + hpd-gpios = <&tlmm 104 GPIO_ACTIVE_HIGH>; + + port { + dp0_connector_in: endpoint { + remote-endpoint = <&mdss_dp0_out>; + }; + }; + };...
arch/arm64/boot/dts/qcom/talos-evk.dts line 79
Quoted 7 lines
arch/arm64/boot/dts/qcom/talos-evk.dts new file +7
-0+ +&i2c1 { + clock-frequency = <400000>; + + status = "okay"; + + adv7535: adv7535@3d {Still no improvements.
Quoted 6 lines
Node names should be generic. See also an explanation and list of examples (not exhaustive) in DT specification:
https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation
If you cannot find a name matching your device, please check in kernel sources for similar cases or you can grow the spec (via pull request to DT spec repo).
Understood, will update in next path.
Quoted 4 lines
Best regards,
Krzysztof