[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250507065116.353114-1-quic_wasimn@quicinc.com>
Date: Wed, 7 May 2025 12:21:08 +0530
From: Wasim Nazir <quic_wasimn@...cinc.com>
To: Bjorn Andersson <andersson@...nel.org>,
Konrad Dybcio <konradybcio@...nel.org>, Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>,
Richard Cochran <richardcochran@...il.com>
Cc: linux-arm-msm@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, netdev@...r.kernel.org,
kernel@...cinc.com, kernel@....qualcomm.com,
Wasim Nazir <quic_wasimn@...cinc.com>
Subject: [PATCH 0/8] qcom: Refactor sa8775p/qcs9100 based ride boards
This series redefine DT structure for sa8775p/qcs9100 based ride/ride-r3
boards by introducing SOM for sa8775p, qcs9100.
It also introduces ethernet dtsi with two variants of capabilities.
It also refactor all common parts of ride boards to ride-common dtsi.
Below are detailed explaination on each type of HW variants supported:
# Ride HW information
-----------------------------
Ride is a modular hardware system with several smaller daughter cards
connected to single backplane board and each daughter card is stacked on
top of each other. I will try to explain each daughter card with HW
components and how it is connected to construct the ride-hw.
Backplane board:
- It contains an MCU (Aurix TC397), CAN/LIN transceiver,
Audio/GNSS/IMU-I2C signals, Fan header
- It holds & connects all the daughter cards.
SOC card:
- It contains:
- SOM:
- One of QCS9100M/QAM8775p SOM.
- Each SOM is composed of either qcs9100/sa8775p SOC,
along with DDR & PMICs.
- Each SOM can be mounted to same SOC-daughter card of ride-hw.
- In addition to SOM, it also has
- 4x UART, 2x USB 3.1 & 1x USB 2.0
- Memory: 1x OSPI, 2x UFS-3.1
- Debug: JTAG/QDSS header
- PCIe0, PCIe1 & Display signals
- Reset button
- It is connected to backplain board via B2B connector.
Display card:
- It contains:
- 4 eDP ports & 2 DSI-DP bridge
- I2C GPIO expander & I2C switch
- It is connected to SOC-card via B2B connector.
Camera card:
- It contains:
- 4 Quad DE-serializer, each supporting 4 MIPI CSI inputs
- Total upto 16 Cameras ports are supported.
- It is connected to backplain board via B2B connector.
Ethernet card:
- There are two variants of ethernet card each with different capabilities:
- [Ethernet-v1] card contains:
- 2x 1G RGMII phy, 2x 1G SGMII phy(enabled currently)
- Total 4 phy supported, only 2 phy are enabled and it is used in ride.
- [Ethernet-v2] card contains:
- 2x 1G RGMII phy, 2x 2.5G HSGMII(enabled currently) & 10G PCIe
based MAC+PHY controller
- Total 5 phy supported, only 2 phy are enabled and it is used
in ride-r3.
- Either [Ethernet-v1] or [Ethernet-v2] is connected to backplain
board via B2B connector.
PCIe card:
- It contains:
- PCIe connections to SOC-card
- NVME, 2x WLBT module QCA6696/QCA6698 (Wi-Fi & bluetooth solution)
& GNSS module
- It is connected to backplain board via B2B connector & PCIe signals
are connected to SOC card via flyover cables.
Sensor Card:
- It contains 3-Axix compass & 6-Axis 3D IMU (accel/gyro) module which
are communicating via I2C
- It is connected to backplain board via B2B connector.
Front panel card:
- It does not contain any active circuitry, only ports are available
- Audio-in/out ports
- USB hub ports
- CAN/LIN ports
- 12V power off switch
- It is connected to backplain board via ribbon cable.
Considering outlined h/w description, following are ride configuration
variation each platform supporting:
Between qcs9100 & sa8775p ride/ride-r3 boards, SOM is changing; And between
ride & ride-r3 ethernet is changing.
Excluding these differences all other cards i.e SOC, display, camera,
PCIe, sensor, front & backplain are same and are refactored in ride-common.
If any variant of these cards comes up in future we need to refactor
ride-common accordingly.
Since we don't have a document yet which formally describes qcs9100 ride
board with [Ethernet-v1] card, I am removing the board and we can re-enable
after complete documentation is available.
Considering current outlines of all daughter cards, following defines
ride/ride-r3 variant boards:
- sa8775p ride : QAM8775p SOM + [Ethernet-v1] + other daughter cards
- sa8775p ride-r3 : QAM8775p SOM + [Ethernet-v2] + other daughter cards
- qcs9100 ride-r3 : QCS9100M SOM + [Ethernet-v2] + other daughter cards
Below is the pictorial diagram for updated DT structure depicting all our HW.
- SOM dtsi:
- qam8775p-som.dtsi specifying sa8775p based SOM having SOC, PMICs,
Memory-map.
- qcs9100-som.dtsi specifying QCS9100M based SOM having SOC, PMICs, Memory-map
updates.
- sa8775p-ride-common.dtsi specifying ride common daughter cards for all ride
boards. This include SOC-card, display, camera, PCIe, sensor, front &
backplain cards.
- Ethernet variants dtsi:
- sa8775p-ride-ethernet-88ea1512.dtsi specifying ethernet card which
uses 2x 1G - SGMII (Marvell 88EA1512-B2) phy in Main-domain
- sa8775p-ride-ethernet-aqr115c.dtsi specifying ethernet card which
uses 2x 2.5G - HSGMII (Marvell AQR115c) phy in Main-domain
+---------------------------------------------------------------------------------------------------+
| |
| sa8775p.dtsi |
| | |
| +-----------------------+ |
| | | |
| v v |
| qam8775p-som.dtsi qcs9100-som.dtsi |
| | | |
| v v |
| (AUTO) (IOT) |
| | | |
| | | |
| | | |
| | +-----------------------+---------------< sa8775p-ride-ethernet-aqr115c.dtsi |
| | | | | |
| | | +-----------------------+----------+--< sa8775p-ride-common.dtsi |
| | | | | | | | |
| +---------+ | | | | | | |
| | | | | | | | | |
| | v v v v v v | |
| | sa8775p-ride-r3.dts qcs9100-ride-r3.dts | |
| | | |
| | +----------------------------------------------+ |
| | | |
| | | +------------------------------------------------< sa8775p-ride-ethernet-88ea1512.dtsi |
| | | | |
| v v v |
| sa8775p-ride.dts |
| |
+---------------------------------------------------------------------------------------------------+
This series provides code refactoring changes for sa8775p/qcs9100
ride/ride-r3 boards from previous discussion [1] excluding any new
features or boards.
No functional impact, and it is verified with comparing decompiled DTB
(dtx_diff and fdtdump+diff).
The only difference is that *-som compatibility has been added in all boards
and qcs9100-ride board is removed.
[1] https://lore.kernel.org/all/20241229152332.3068172-1-quic_wasimn@quicinc.com/
---
Wasim Nazir (8):
dt-bindings: arm: qcom: Remove bindings for qcs9100 ride
arm64: dts: qcom: qcs9100: Remove qcs9100 ride board
arm64: dts: qcom: sa8775p: Add ethernet card for ride & ride-r3
arm64: dts: qcom: sa8775p: Create ride common file
dt-bindings: arm: qcom: Add bindings for qam8775p SOM
arm64: dts: qcom: sa8775p: Introduce QAM8775p SOM
dt-bindings: arm: qcom: Add bindings for QCS9100M SOM
arm64: dts: qcom: qcs9100: Introduce QCS9100M SOM
.../devicetree/bindings/arm/qcom.yaml | 3 +-
arch/arm64/boot/dts/qcom/Makefile | 1 -
arch/arm64/boot/dts/qcom/qam8775p-som.dtsi | 9 +
arch/arm64/boot/dts/qcom/qcs9100-ride-r3.dts | 10 +-
arch/arm64/boot/dts/qcom/qcs9100-ride.dts | 11 -
arch/arm64/boot/dts/qcom/qcs9100-som.dtsi | 9 +
...75p-ride.dtsi => sa8775p-ride-common.dtsi} | 169 +--------------
.../qcom/sa8775p-ride-ethernet-88ea1512.dtsi | 205 ++++++++++++++++++
.../qcom/sa8775p-ride-ethernet-aqr115c.dtsi | 205 ++++++++++++++++++
arch/arm64/boot/dts/qcom/sa8775p-ride-r3.dts | 42 +---
arch/arm64/boot/dts/qcom/sa8775p-ride.dts | 42 +---
11 files changed, 450 insertions(+), 256 deletions(-)
create mode 100644 arch/arm64/boot/dts/qcom/qam8775p-som.dtsi
delete mode 100644 arch/arm64/boot/dts/qcom/qcs9100-ride.dts
create mode 100644 arch/arm64/boot/dts/qcom/qcs9100-som.dtsi
rename arch/arm64/boot/dts/qcom/{sa8775p-ride.dtsi => sa8775p-ride-common.dtsi} (86%)
create mode 100644 arch/arm64/boot/dts/qcom/sa8775p-ride-ethernet-88ea1512.dtsi
create mode 100644 arch/arm64/boot/dts/qcom/sa8775p-ride-ethernet-aqr115c.dtsi
base-commit: 33035b665157558254b3c21c3f049fd728e72368
--
2.49.0
Powered by blists - more mailing lists