-
sent/topic/sm8x50/upstream/pcie-1-phy-aux-clk-v27209229e · ·
arm64: qcom-sm8[456]50: properly describe the PCIe Gen4x2 PHY AUX clock The PCIe Gen4x2 PHY found in the SM8[456]50 SoCs have a second clock named "PHY_AUX_CLK" which is an input of the Global Clock Controller (GCC) which is muxed & gated then returned to the PHY as an input. Document the clock IDs to select the PIPE clock or the AUX clock, also enforce a second clock-output-names and a #clock-cells value of 1 for the PCIe Gen4x2 PHY found in the SM8[456]50 SoCs. The PHY driver needs a light refactoring to support a second clock, and finally the DT is changed to connect the PHY second clock to the corresponding GCC input then drop the dummy fixed rate clock. To: Bjorn Andersson <andersson@kernel.org> To: Konrad Dybcio <konrad.dybcio@linaro.org> To: Vinod Koul <vkoul@kernel.org> To: Kishon Vijay Abraham I <kishon@kernel.org> To: Rob Herring <robh@kernel.org> To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> To: Conor Dooley <conor+dt@kernel.org> Cc: <linux-arm-msm@vger.kernel.org> Cc: <linux-phy@lists.infradead.org> Cc: <devicetree@vger.kernel.org> Cc: <linux-kernel@vger.kernel.org> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- Changes in v2: - Collected review tags - Switched back to of_clk_add_hw_provider/devm_add_action_or_reset to maintain compatibility - Tried to use generic of_clk_hw_onecell_get() but it requires to much boilerplate code and would still need a local qmp_pcie_clk_hw_get() to support the current #clock-cells=0 when exposing 2 clocks, so it's simpler to just return the clocks in qmp_pcie_clk_hw_get() - Link to v1: https://lore.kernel.org/r/20240319-topic-sm8x50-upstream-pcie-1-phy-aux-clk-v1-0-926d7a4ccd80@linaro.org --- Neil Armstrong (7): dt-bindings: phy: qcom,sc8280xp-qmp-pcie-phy: document PHY AUX clock on SM8[456]50 SoCs phy: qcom: qmp-pcie: refactor clock register code phy: qcom: qmp-pcie: register second optional PHY AUX clock phy: qcom: qmp-pcie: register PHY AUX clock for SM8[456]50 4x2 PCIe PHY arm64: dts: qcom: sm8450: remove pcie-1-phy-aux-clk and add pcie1_phy pcie1_phy_aux_clk arm64: dts: qcom: sm8550: remove pcie-1-phy-aux-clk and add pcie1_phy pcie1_phy_aux_clk arm64: dts: qcom: sm8650: remove pcie-1-phy-aux-clk and add pcie1_phy pcie1_phy_aux_clk .../bindings/phy/qcom,sc8280xp-qmp-pcie-phy.yaml | 27 +++++- arch/arm64/boot/dts/qcom/sm8450.dtsi | 8 +- arch/arm64/boot/dts/qcom/sm8550-hdk.dts | 4 - arch/arm64/boot/dts/qcom/sm8550-mtp.dts | 4 - arch/arm64/boot/dts/qcom/sm8550-qrd.dts | 8 -- arch/arm64/boot/dts/qcom/sm8550.dtsi | 13 +-- arch/arm64/boot/dts/qcom/sm8650-mtp.dts | 4 - arch/arm64/boot/dts/qcom/sm8650-qrd.dts | 4 - arch/arm64/boot/dts/qcom/sm8650.dtsi | 13 +-- drivers/phy/qualcomm/phy-qcom-qmp-pcie.c | 98 ++++++++++++++++++++-- include/dt-bindings/phy/phy-qcom-qmp.h | 4 + 11 files changed, 133 insertions(+), 54 deletions(-) --- base-commit: 2e93f143ca010a5013528e1cfdc895f024fe8c21 change-id: 20240319-topic-sm8x50-upstream-pcie-1-phy-aux-clk-4b35169707dd Best regards,
-
sent/topic/sm8x50/upstream/pcie-1-phy-aux-clk-v18f8251e5 · ·
arm64: qcom-sm8[456]50: properly describe the PCIe Gen4x2 PHY AUX clock The PCIe Gen4x2 PHY found in the SM8[456]50 SoCs have a second clock named "PHY_AUX_CLK" which is an input of the Global Clock Controller (GCC) which is muxed & gated then returned to the PHY as an input. Document the clock IDs to select the PIPE clock or the AUX clock, also enforce a second clock-output-names and a #clock-cells value of 1 for the PCIe Gen4x2 PHY found in the SM8[456]50 SoCs. The PHY driver needs a light refactoring to support a second clock, and finally the DT is changed to connect the PHY second clock to the corresponding GCC input then drop the dummy fixed rate clock. To: Bjorn Andersson <andersson@kernel.org> To: Konrad Dybcio <konrad.dybcio@linaro.org> To: Vinod Koul <vkoul@kernel.org> To: Kishon Vijay Abraham I <kishon@kernel.org> To: Rob Herring <robh@kernel.org> To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> To: Conor Dooley <conor+dt@kernel.org> Cc: <linux-arm-msm@vger.kernel.org> Cc: <linux-phy@lists.infradead.org> Cc: <devicetree@vger.kernel.org> Cc: <linux-kernel@vger.kernel.org> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- Neil Armstrong (7): dt-bindings: phy: qcom,sc8280xp-qmp-pcie-phy: document PHY AUX clock on SM8[456]50 SoCs phy: qcom: qmp-pcie: refactor clock register code phy: qcom: qmp-pcie: register second optional PHY AUX clock phy: qcom: qmp-pcie: register PHY AUX clock for SM8[456]50 4x2 PCIe PHY arm64: dts: qcom: sm8450: remove pcie-1-phy-aux-clk and add pcie1_phy pcie1_phy_aux_clk arm64: dts: qcom: sm8550: remove pcie-1-phy-aux-clk and add pcie1_phy pcie1_phy_aux_clk arm64: dts: qcom: sm8650: remove pcie-1-phy-aux-clk and add pcie1_phy pcie1_phy_aux_clk .../bindings/phy/qcom,sc8280xp-qmp-pcie-phy.yaml | 27 +++++- arch/arm64/boot/dts/qcom/sm8450.dtsi | 8 +- arch/arm64/boot/dts/qcom/sm8550-hdk.dts | 4 - arch/arm64/boot/dts/qcom/sm8550-mtp.dts | 4 - arch/arm64/boot/dts/qcom/sm8550-qrd.dts | 8 -- arch/arm64/boot/dts/qcom/sm8550.dtsi | 13 +-- arch/arm64/boot/dts/qcom/sm8650-mtp.dts | 4 - arch/arm64/boot/dts/qcom/sm8650-qrd.dts | 4 - arch/arm64/boot/dts/qcom/sm8650.dtsi | 13 +-- drivers/phy/qualcomm/phy-qcom-qmp-pcie.c | 104 ++++++++++++++++++--- include/dt-bindings/phy/phy-qcom-qmp.h | 4 + 11 files changed, 129 insertions(+), 64 deletions(-) --- base-commit: 2e93f143ca010a5013528e1cfdc895f024fe8c21 change-id: 20240319-topic-sm8x50-upstream-pcie-1-phy-aux-clk-4b35169707dd Best regards,
-
sent/topic/sm8650/gpu-v41cfe58dc · ·
drm/msm: Add support for the A750 GPU found on the SM8650 platform Unlike the the very close A740 GPU on the SM8550 SoC, the A750 GPU doesn't have an HWCFG block but a separate register set. The missing registers are added in the a6xx.xml.h file that would require a subsequent sync and the non-existent hwcfg is handled in a6xx_set_hwcg(). The A750 GPU info are added under the adreno_is_a750() macro and the ADRENO_7XX_GEN3 family id. This adds: - DT nodes Dependencies: None Tested using Mesa's main branch on the SM8650-QRD and with kmscube & vkcube to test basic rendering. To: Bjorn Andersson <andersson@kernel.org> To: Konrad Dybcio <konrad.dybcio@linaro.org> To: Rob Herring <robh@kernel.org> To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> To: Conor Dooley <conor+dt@kernel.org> Cc: <linux-arm-msm@vger.kernel.org> Cc: <devicetree@vger.kernel.org> Cc: <linux-kernel@vger.kernel.org> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- Changes in v4: - Dropped applied patches - Added a few more OPPs that are safe on all SKUs - Re-ordered the OPPs - Link to v3: https://lore.kernel.org/r/20240216-topic-sm8650-gpu-v3-0-eb1f4b86d8d3@linaro.org Changes in v3: - Fixed smmu bindings if condition for GMU smmu - Collected reviews - Link to v2: https://lore.kernel.org/r/20240215-topic-sm8650-gpu-v2-0-6be0b4bf2e09@linaro.org Changes in v2: - Added separate a6xx.xml.h sync from https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27576 - Collected review tags - Inlined skip_programming - Use A7XX_RBBM_CGC_P2S_STATUS_TXDONE instead of BIT(0) - Drop now useless placeholder comment - Removed interconnect properties - Rebased on current linux-next - Link to v1: https://lore.kernel.org/r/20240212-topic-sm8650-gpu-v1-0-708a40b747b5@linaro.org --- Neil Armstrong (2): arm64: dts: qcom: sm8650: add GPU nodes arm64: dts: qcom: sm8650-qrd: enable GPU arch/arm64/boot/dts/qcom/sm8650-qrd.dts | 8 ++ arch/arm64/boot/dts/qcom/sm8650.dtsi | 181 ++++++++++++++++++++++++++++++++ 2 files changed, 189 insertions(+) --- base-commit: 2e93f143ca010a5013528e1cfdc895f024fe8c21 change-id: 20240208-topic-sm8650-gpu-489d5e2c2b17 Best regards,
-
sent/topic/sm8650/upstream/hdk-v21715ee94 · ·
arm64: qcom: sm8650: add support for the SM8650-HDK board The SM8650-HDK is an embedded development platforms for the Snapdragon 8 Gen 3 SoC aka SM8650, with the following features: - Qualcomm SM8650 SoC - 16GiB On-board LPDDR5 - On-board WiFi 7 + Bluetooth 5.3/BLE - On-board UFS4.0 - M.2 Key B+M Gen3x2 PCIe Slot - HDMI Output - USB-C Connector with DP Almode & Audio Accessory mode - Micro-SDCard Slot - Audio Jack with Playback and Microphone - 2 On-board Analog microphones - 2 On-board Speakers - 96Boards Compatible Low-Speed and High-Speed connectors [1] - For Camera, Sensors and external Display cards - Compatible with the Linaro Debug board [2] - SIM Slot for Modem - Debug connectors - 6x On-Board LEDs An optional Display Card kit can be connected on top, an overlay is handled to add support for the DSI Display and Touch Controller. Product Page: [3] Dependencies: None [1] https://www.96boards.org/specifications/ [2] https://git.codelinaro.org/linaro/qcomlt/debugboard [3] https://www.lantronix.com/products/snapdragon-8-gen-3-mobile-hardware-development-kit/ To: Bjorn Andersson <andersson@kernel.org> To: Konrad Dybcio <konrad.dybcio@linaro.org> To: Rob Herring <robh@kernel.org> To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> To: Conor Dooley <conor+dt@kernel.org> Cc: <linux-arm-msm@vger.kernel.org> Cc: <devicetree@vger.kernel.org> Cc: <linux-kernel@vger.kernel.org> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- Changes in v2: - Fixed commit messages with links, and recently added product page URL - Swapped i2c3/i2c6 nodes - Moved pcie_1_phy_aux_clk under pcie1_phy - Removed duplicate mdp_vsync pinctrl state - Collected review & tested tags - Link to v1: https://lore.kernel.org/r/20240223-topic-sm8650-upstream-hdk-v1-0-ccca645cd901@linaro.org --- Neil Armstrong (3): dt-bindings: arm: qcom: Document the HDK8650 board arm64: dts: qcom: sm8650: add support for the SM8650-HDK board arch: arm64: dts: sm8650-hdk: add support for the Display Card overlay Documentation/devicetree/bindings/arm/qcom.yaml | 1 + arch/arm64/boot/dts/qcom/Makefile | 5 + .../boot/dts/qcom/sm8650-hdk-display-card.dtso | 144 +++ arch/arm64/boot/dts/qcom/sm8650-hdk.dts | 1259 ++++++++++++++++++++ 4 files changed, 1409 insertions(+) --- base-commit: 2e93f143ca010a5013528e1cfdc895f024fe8c21 change-id: 20240223-topic-sm8650-upstream-hdk-e21cfd6f1de8 Best regards,
-
sent/topic/sm8650/upstream/usb-dt-irq-fix-v11ad26025 · ·
(no cover subject) To: Bjorn Andersson <andersson@kernel.org> To: Konrad Dybcio <konrad.dybcio@linaro.org> To: Rob Herring <robh@kernel.org> To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> To: Conor Dooley <conor+dt@kernel.org> Cc: <linux-arm-msm@vger.kernel.org> Cc: <devicetree@vger.kernel.org> Cc: <linux-kernel@vger.kernel.org> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- Neil Armstrong (1): arm64: dts: qcom: sm8650: fix usb interrupts properties arch/arm64/boot/dts/qcom/sm8650.dtsi | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) --- base-commit: 9bb9b28d0568991b1d63e66fe75afa5f97ad1156 change-id: 20240314-topic-sm8650-upstream-usb-dt-irq-fix-d6bb2fed3fa9 Best regards,
-
sent/topic/sm8x50/upstream/phy-combo-typec-mux-v1b3055eb2 · ·
[RFT] arm64: qcom: allow up to 4 lanes for the Type-C DisplayPort Altmode Register a typec mux in order to change the PHY mode on the Type-C mux events depending on the mode and the svid when in Altmode setup. The DisplayPort phy should be left enabled if is still powered on by the DRM DisplayPort controller, so bail out until the DisplayPort PHY is not powered off. The Type-C Mode/SVID only changes on plug/unplug, and USB SAFE states will be set in between of USB-Only, Combo and DisplayPort Only so this will leave enough time to the DRM DisplayPort controller to turn of the DisplayPort PHY. The patchset also includes bindings changes and DT changes. This has been successfully tested on an SM8550 board, but the Thinkpad X13s deserved testing between non-PD USB, non-PD DisplayPort, PD USB Hubs and PD Altmode Dongles to make sure the switch works as expected. The DisplayPort 4 lanes setup can be check with: $ cat /sys/kernel/debug/dri/ae01000.display-controller/DP-1/dp_debug name = msm_dp drm_dp_link rate = 540000 num_lanes = 4 ... To: Bjorn Andersson <andersson@kernel.org> To: Konrad Dybcio <konrad.dybcio@linaro.org> To: Vinod Koul <vkoul@kernel.org> To: Kishon Vijay Abraham I <kishon@kernel.org> To: Rob Herring <robh@kernel.org> To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> To: Conor Dooley <conor+dt@kernel.org> Cc: <linux-arm-msm@vger.kernel.org> Cc: <linux-phy@lists.infradead.org> Cc: <devicetree@vger.kernel.org> Cc: <linux-kernel@vger.kernel.org> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- Neil Armstrong (7): dt-bindings: phy: qcom,sc8280xp-qmp-usb43dp: Add mode-switch phy: qcom: qmp-combo: store DP phy power state phy: qcom: qmp-combo: introduce QPHY_MODE phy: qcom: qmp-combo: register a typec mux to change the QPHY_MODE arm64: dts: qcom-sm8550: allow 4 lanes for DisplayPort and enable QMP PHY mode-switch arm64: dts: qcom-sm8650: allow 4 lanes for DisplayPort and enable QMP PHY mode-switch arm64: dts: qcom-mode-switch: allow 4 lanes for DisplayPort and enable QMP PHY mode-switch .../phy/qcom,sc8280xp-qmp-usb43dp-phy.yaml | 5 + .../dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts | 6 +- arch/arm64/boot/dts/qcom/sm8550-hdk.dts | 3 +- arch/arm64/boot/dts/qcom/sm8550-qrd.dts | 3 +- arch/arm64/boot/dts/qcom/sm8650-qrd.dts | 3 +- drivers/phy/qualcomm/phy-qcom-qmp-combo.c | 168 +++++++++++++++++++-- 6 files changed, 173 insertions(+), 15 deletions(-) --- base-commit: b321c0e8ca754d8cd9f23ceba958e3ea93c6519e change-id: 20240229-topic-sm8x50-upstream-phy-combo-typec-mux-31b5252513c9 Best regards,
-
sent/topic/sm8550/upstream/ucsi-no-pdos-v1b8f14d9c · ·
(no cover subject) To: Heikki Krogerus <heikki.krogerus@linux.intel.com> To: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: <linux-usb@vger.kernel.org> Cc: <linux-kernel@vger.kernel.org> Cc: <linux-arm-msm@vger.kernel.org> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- Neil Armstrong (1): usb: typec: ucsi: fix UCSI on SM8550 & SM8650 Qualcomm devices drivers/usb/typec/ucsi/ucsi_glink.c | 1 + 1 file changed, 1 insertion(+) --- base-commit: 33e1d31873f87d119e5120b88cd350efa68ef276 change-id: 20240223-topic-sm8550-upstream-ucsi-no-pdos-62fdad669f90 Best regards,
-
sent/topic/sm8650/upstream/hdk-v159846923 · ·
arm64: qcom: sm8650: add support for the SM8650-HDK board The SM8650-HDK is an embedded development platforms for the Snapdragon 8 Gen 3 SoC aka SM8650, with the following features: - Qualcomm SM8650 SoC - 16GiB On-board LPDDR5 - On-board WiFi 7 + Bluetooth 5.3/BLE - On-board UFS4.0 - M.2 Key B+M Gen3x2 PCIe Slot - HDMI Output - USB-C Connector with DP Almode & Audio Accessory mode - Micro-SDCard Slot - Audio Jack with Playback and Microphone - 2 On-board Analog microphones - 2 On-board Speakers - 96Boards Compatible Low-Speed and High-Speed connectors [1] - For Camera, Sensors and external Display cards - Compatible with the Linaro Debug board [2] - SIM Slot for Modem - Debug connectors - 6x On-Board LEDs An optional Display Card kit can be connected on top, an overlay is handled to add support for the DSI Display and Touch Controller. Dependencies: None [1] https://www.96boards.org/specifications/ [2] https://git.codelinaro.org/linaro/qcomlt/debugboard To: Bjorn Andersson <andersson@kernel.org> To: Konrad Dybcio <konrad.dybcio@linaro.org> To: Rob Herring <robh@kernel.org> To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> To: Conor Dooley <conor+dt@kernel.org> Cc: <linux-arm-msm@vger.kernel.org> Cc: <devicetree@vger.kernel.org> Cc: <linux-kernel@vger.kernel.org> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- Neil Armstrong (3): dt-bindings: arm: qcom: Document the HDK8650 board arm64: dts: qcom: sm8650: add support for the SM8650-HDK board arch: arm64: dts: sm8650-hdk: add support for the Display Card overlay Documentation/devicetree/bindings/arm/qcom.yaml | 1 + arch/arm64/boot/dts/qcom/Makefile | 5 + .../boot/dts/qcom/sm8650-hdk-display-card.dtso | 151 +++ arch/arm64/boot/dts/qcom/sm8650-hdk.dts | 1259 ++++++++++++++++++++ 4 files changed, 1416 insertions(+) --- base-commit: 33e1d31873f87d119e5120b88cd350efa68ef276 change-id: 20240223-topic-sm8650-upstream-hdk-e21cfd6f1de8 Best regards,
-
sent/topic/sm8650/gpu-v3be641d32 · ·
drm/msm: Add support for the A750 GPU found on the SM8650 platform Unlike the the very close A740 GPU on the SM8550 SoC, the A750 GPU doesn't have an HWCFG block but a separate register set. The missing registers are added in the a6xx.xml.h file that would require a subsequent sync and the non-existent hwcfg is handled in a6xx_set_hwcg(). The A750 GPU info are added under the adreno_is_a750() macro and the ADRENO_7XX_GEN3 family id. This adds: - the GMU and SMMU bindings - DRM driver changes - DT nodes Dependencies: None Tested using Mesa's !26934 Merge Request [0] on the SM8650-QRD and with kmscube & vkcube to test basic rendering. [0] https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26934 To: Rob Clark <robdclark@gmail.com> To: Abhinav Kumar <quic_abhinavk@quicinc.com> To: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> To: Sean Paul <sean@poorly.run> To: Marijn Suijten <marijn.suijten@somainline.org> To: David Airlie <airlied@gmail.com> To: Daniel Vetter <daniel@ffwll.ch> To: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> To: Maxime Ripard <mripard@kernel.org> To: Thomas Zimmermann <tzimmermann@suse.de> To: Rob Herring <robh@kernel.org> To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> To: Conor Dooley <conor+dt@kernel.org> To: Will Deacon <will@kernel.org> To: Robin Murphy <robin.murphy@arm.com> To: Joerg Roedel <joro@8bytes.org> To: Bjorn Andersson <andersson@kernel.org> To: Konrad Dybcio <konrad.dybcio@linaro.org> Cc: <linux-arm-msm@vger.kernel.org> Cc: <dri-devel@lists.freedesktop.org> Cc: <freedreno@lists.freedesktop.org> Cc: <devicetree@vger.kernel.org> Cc: <linux-kernel@vger.kernel.org> Cc: <linux-arm-kernel@lists.infradead.org> Cc: <iommu@lists.linux.dev> Cc: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- Changes in v3: - Fixed smmu bindings if condition for GMU smmu - Collected reviews - Link to v2: https://lore.kernel.org/r/20240215-topic-sm8650-gpu-v2-0-6be0b4bf2e09@linaro.org Changes in v2: - Added separate a6xx.xml.h sync from https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27576 - Collected review tags - Inlined skip_programming - Use A7XX_RBBM_CGC_P2S_STATUS_TXDONE instead of BIT(0) - Drop now useless placeholder comment - Removed interconnect properties - Rebased on current linux-next - Link to v1: https://lore.kernel.org/r/20240212-topic-sm8650-gpu-v1-0-708a40b747b5@linaro.org --- Neil Armstrong (7): dt-bindings: display/msm/gmu: Document Adreno 750 GMU dt-bindings: arm-smmu: fix SM8[45]50 GPU SMMU if condition dt-bindings: arm-smmu: Document SM8650 GPU SMMU drm/msm/a6xx: Add missing regs for A750 drm/msm: add support for A750 GPU arm64: dts: qcom: sm8650: add GPU nodes arm64: dts: qcom: sm8650-qrd: enable GPU .../devicetree/bindings/display/msm/gmu.yaml | 1 + .../devicetree/bindings/iommu/arm,smmu.yaml | 17 ++- arch/arm64/boot/dts/qcom/sm8650-qrd.dts | 8 + arch/arm64/boot/dts/qcom/sm8650.dtsi | 166 +++++++++++++++++++++ drivers/gpu/drm/msm/adreno/a6xx.xml.h | 9 ++ drivers/gpu/drm/msm/adreno/a6xx_gmu.c | 2 + drivers/gpu/drm/msm/adreno/a6xx_gpu.c | 28 +++- drivers/gpu/drm/msm/adreno/adreno_device.c | 14 ++ drivers/gpu/drm/msm/adreno/adreno_gpu.h | 10 +- 9 files changed, 247 insertions(+), 8 deletions(-) --- base-commit: 2c3b09aac00d7835023bbc4473ee06696be64fa8 change-id: 20240208-topic-sm8650-gpu-489d5e2c2b17 Best regards,
-
sent/topic/sm8650/gpu-v2389a2362 · ·
drm/msm: Add support for the A750 GPU found on the SM8650 platform Unlike the the very close A740 GPU on the SM8550 SoC, the A750 GPU doesn't have an HWCFG block but a separate register set. The missing registers are added in the a6xx.xml.h file that would require a subsequent sync and the non-existent hwcfg is handled in a6xx_set_hwcg(). The A750 GPU info are added under the adreno_is_a750() macro and the ADRENO_7XX_GEN3 family id. This adds: - the GMU and SMMU bindings - DRM driver changes - DT nodes Dependencies: None Tested using Mesa's !26934 Merge Request [0] on the SM8650-QRD and with kmscube & vkcube to test basic rendering. [0] https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26934 To: Rob Clark <robdclark@gmail.com> To: Abhinav Kumar <quic_abhinavk@quicinc.com> To: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> To: Sean Paul <sean@poorly.run> To: Marijn Suijten <marijn.suijten@somainline.org> To: David Airlie <airlied@gmail.com> To: Daniel Vetter <daniel@ffwll.ch> To: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> To: Maxime Ripard <mripard@kernel.org> To: Thomas Zimmermann <tzimmermann@suse.de> To: Rob Herring <robh@kernel.org> To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> To: Conor Dooley <conor+dt@kernel.org> To: Will Deacon <will@kernel.org> To: Robin Murphy <robin.murphy@arm.com> To: Joerg Roedel <joro@8bytes.org> To: Bjorn Andersson <andersson@kernel.org> To: Konrad Dybcio <konrad.dybcio@linaro.org> Cc: <linux-arm-msm@vger.kernel.org> Cc: <dri-devel@lists.freedesktop.org> Cc: <freedreno@lists.freedesktop.org> Cc: <devicetree@vger.kernel.org> Cc: <linux-kernel@vger.kernel.org> Cc: <linux-arm-kernel@lists.infradead.org> Cc: <iommu@lists.linux.dev> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- Changes in v2: - Added separate a6xx.xml.h sync from https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27576 - Collected review tags - Inlined skip_programming - Use A7XX_RBBM_CGC_P2S_STATUS_TXDONE instead of BIT(0) - Drop now useless placeholder comment - Removed interconnect properties - Rebased on current linux-next - Link to v1: https://lore.kernel.org/r/20240212-topic-sm8650-gpu-v1-0-708a40b747b5@linaro.org --- Neil Armstrong (6): dt-bindings: display/msm/gmu: Document Adreno 750 GMU dt-bindings: arm-smmu: Document SM8650 GPU SMMU drm/msm/a6xx: Add missing regs for A750 drm/msm: add support for A750 GPU arm64: dts: qcom: sm8650: add GPU nodes arm64: dts: qcom: sm8650-qrd: enable GPU .../devicetree/bindings/display/msm/gmu.yaml | 1 + .../devicetree/bindings/iommu/arm,smmu.yaml | 7 +- arch/arm64/boot/dts/qcom/sm8650-qrd.dts | 8 + arch/arm64/boot/dts/qcom/sm8650.dtsi | 166 +++++++++++++++++++++ drivers/gpu/drm/msm/adreno/a6xx.xml.h | 9 ++ drivers/gpu/drm/msm/adreno/a6xx_gmu.c | 2 + drivers/gpu/drm/msm/adreno/a6xx_gpu.c | 28 +++- drivers/gpu/drm/msm/adreno/adreno_device.c | 14 ++ drivers/gpu/drm/msm/adreno/adreno_gpu.h | 10 +- 9 files changed, 238 insertions(+), 7 deletions(-) --- base-commit: 5a30f6bdb84228f160b331eed2ccfde00bfb3ab4 change-id: 20240208-topic-sm8650-gpu-489d5e2c2b17 Best regards,
-
sent/topic/sm8650/gpu-v1d1a4e130 · ·
drm/msm: Add support for the A750 GPU found on the SM8650 platform Unlike the the very close A740 GPU on the SM8550 SoC, the A750 GPU doesn't have an HWCFG block but a separate register set. The missing registers are added in the a6xx.xml.h file that would require a subsequent sync and the non-existent hwcfg is handled in a6xx_set_hwcg(). The A750 GPU info are added under the adreno_is_a750() macro and the ADRENO_7XX_GEN3 family id. This adds: - the GMU and SMMU bindings - DRM driver changes - DT nodes Dependencies: None Tested using Mesa's !26934 Merge Request [0] on the SM8650-QRD and with kmscube & vkcube to test basic rendering. [0] https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26934 To: Rob Clark <robdclark@gmail.com> To: Abhinav Kumar <quic_abhinavk@quicinc.com> To: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> To: Sean Paul <sean@poorly.run> To: Marijn Suijten <marijn.suijten@somainline.org> To: David Airlie <airlied@gmail.com> To: Daniel Vetter <daniel@ffwll.ch> To: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> To: Maxime Ripard <mripard@kernel.org> To: Thomas Zimmermann <tzimmermann@suse.de> To: Rob Herring <robh@kernel.org> To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> To: Conor Dooley <conor+dt@kernel.org> To: Will Deacon <will@kernel.org> To: Robin Murphy <robin.murphy@arm.com> To: Joerg Roedel <joro@8bytes.org> To: Bjorn Andersson <andersson@kernel.org> To: Konrad Dybcio <konrad.dybcio@linaro.org> Cc: <linux-arm-msm@vger.kernel.org> Cc: <dri-devel@lists.freedesktop.org> Cc: <freedreno@lists.freedesktop.org> Cc: <devicetree@vger.kernel.org> Cc: <linux-kernel@vger.kernel.org> Cc: <linux-arm-kernel@lists.infradead.org> Cc: <iommu@lists.linux.dev> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- Neil Armstrong (5): dt-bindings: display/msm/gmu: Document Adreno 750 GMU dt-bindings: arm-smmu: Document SM8650 GPU SMMU drm: msm: add support for A750 GPU arm64: dts: qcom: sm8650: add GPU nodes arm64: dts: qcom: sm8650-qrd: enable GPU .../devicetree/bindings/display/msm/gmu.yaml | 1 + .../devicetree/bindings/iommu/arm,smmu.yaml | 7 +- arch/arm64/boot/dts/qcom/sm8650-qrd.dts | 8 + arch/arm64/boot/dts/qcom/sm8650.dtsi | 169 +++++++++++++++++++++ drivers/gpu/drm/msm/adreno/a6xx.xml.h | 8 + drivers/gpu/drm/msm/adreno/a6xx_gmu.c | 2 + drivers/gpu/drm/msm/adreno/a6xx_gpu.c | 29 +++- drivers/gpu/drm/msm/adreno/adreno_device.c | 14 ++ drivers/gpu/drm/msm/adreno/adreno_gpu.h | 9 +- 9 files changed, 241 insertions(+), 6 deletions(-) --- base-commit: 84baf172e2fa30d6d6d0fb8ed076b47e836b74f1 change-id: 20240208-topic-sm8650-gpu-489d5e2c2b17 Best regards,
-
sent/amlogic/v6.8/upstream/dsi-ccf-vim3-v10471681f7 · ·
drm/meson: add support for MIPI DSI Display The Amlogic G12A, G12B & SM1 SoCs embeds a Synopsys DW-MIPI-DSI transceiver (ver 1.21a), with a custom glue managing the IP resets, clock and data input similar to the DW-HDMI glue on the same Amlogic SoCs. This is a follow-up of v5 now the DRM patches are applied, the clk & DT changes remains for a full DSI support on G12A & SM1 platforms. The DW-MIPI-DSI transceiver + D-PHY are clocked by the GP0 PLL, and the ENCL encoder + VIU pixel reader by the VCLK2 clock using the HDMI PLL. The DW-MIPI-DSI transceiver gets this pixel stream as input clocked with the VCLK2 clock. An optional "MEAS" clock can be enabled to measure the delay between each vsync feeding the DW-MIPI-DSI transceiver. The clock setup has been redesigned to use CCF, a common PLL (GP0) and the VCLK2 clock path for DSI in preparation of full CCF support and possibly dual display with HDMI. The change from v5 is that now we use a "VCLK" driver instead of notifier and rely on CLK_SET_RATE_GATE to ensure the VCLK gate operation are called. To: Rob Herring <robh@kernel.org> To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> To: Conor Dooley <conor+dt@kernel.org> To: Kevin Hilman <khilman@baylibre.com> To: Jerome Brunet <jbrunet@baylibre.com> To: Michael Turquette <mturquette@baylibre.com> To: Stephen Boyd <sboyd@kernel.org> To: Martin Blumenstingl <martin.blumenstingl@googlemail.com> To: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> To: Maxime Ripard <mripard@kernel.org> To: Thomas Zimmermann <tzimmermann@suse.de> To: David Airlie <airlied@gmail.com> To: Daniel Vetter <daniel@ffwll.ch> To: Nicolas Belin <nbelin@baylibre.com> To: Jagan Teki <jagan@amarulasolutions.com> Cc: <devicetree@vger.kernel.org> Cc: <linux-kernel@vger.kernel.org> Cc: <linux-amlogic@lists.infradead.org> Cc: <linux-clk@vger.kernel.org> Cc: <linux-arm-kernel@lists.infradead.org> Cc: <dri-devel@lists.freedesktop.org> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- Changes in v10: - Rename regmap_vclk to meson_clk and add _gate for the gate - Move COMMON_CLK_MESON_VCLK to following patch - Remove CLK_SET_RATE_PARENT from g12a_vclk2_sel, keep it only on mipi_dsi_pxclk_sel - Add more info on commit message to specify how clock setup is designed - Remove forgotten CLK_IGNORE_UNUSED on g12a_vclk2_input - Remove useless CLK_SET_RATE_PARENT on g12a_vclk2_div to stop propagatting rate _after_ vclk2_div - Remove invalid CLK_SET_RATE_GATE on g12a_vclk2 since it's not a divider... - Drop already applied patches - move Khadas TS050 changes as an overlay - Link to v9: https://lore.kernel.org/r/20231124-amlogic-v6-4-upstream-dsi-ccf-vim3-v9-0-95256ed139e6@linaro.org Changes in v9: - Colledte reviewed-bys - Fixed patches 2 & 4, commit messages and bindings format - Link to v8: https://lore.kernel.org/r/20231109-amlogic-v6-4-upstream-dsi-ccf-vim3-v8-0-81e4aeeda193@linaro.org Changes in v8: - Switch vclk clk driver to parm as requested by Jerome - Added bindings fixes to amlogic,meson-axg-mipi-pcie-analog & amlogic,g12a-mipi-dphy-analog - Fixed DT errors in vim3 example and MNT Reform DT - Rebased on next-20231107, successfully tested on VIM3L - Link to v7: https://lore.kernel.org/r/20230803-amlogic-v6-4-upstream-dsi-ccf-vim3-v7-0-762219fc5b28@linaro.org Changes in v7: - Added review tags - Fixed patch 5 thanks to George - Link to v6: https://lore.kernel.org/r/20230512-amlogic-v6-4-upstream-dsi-ccf-vim3-v6-0-fd2ac9845472@linaro.org Changes in v6: - dropped applied DRM patches - dropped clk private prefix patches - rebased on top of 20230607-topic-amlogic-upstream-clkid-public-migration-v2-0-38172d17c27a@linaro.org - re-ordered/cleaned ENCL patches to match clkid public migration - Added new "vclk" driver - uses vclk driver instead of notifier - cleaned VCLK2 clk flags - add px_clk gating from DSI driver - Link to v5: https://lore.kernel.org/r/20230512-amlogic-v6-4-upstream-dsi-ccf-vim3-v5-0-56eb7a4d5b8e@linaro.org Changes in v5: - Aded PRIV all the G12 internal clk IDS to simplify public exposing - Fixed the DSI bindings - Fixed the DSI HSYNC/VSYNC polarity handling - Fixed the DSI clock setup - Fixed the DSI phy timings - Dropped components for DSI, only keeping it for HDMI - Added MNT Reform 2 CM4 DT - Dropped already applied PHY fix - Link to v4: https://lore.kernel.org/r/20230512-amlogic-v6-4-upstream-dsi-ccf-vim3-v4-0-2592c29ea263@linaro.org Changes from v3 at [3]: - switched all clk setup via CCF - using single PLL for DSI controller & ENCL encoder - added ENCL clocks to CCF - make the VCLK2 clocks configuration by CCF - fixed probe/bind of DSI controller to work with panels & bridges - added bit_clk to controller to it can setup the BIT clock aswell - added fix for components unbind - added fix for analog phy setup value - added TS050 timings fix - dropped previous clk control patch Changes from v2 at [2]: - Fixed patch 3 - Added reviews from Jagan - Rebased on v5.19-rc1 Changes from v1 at [1]: - fixed DSI host bindings - add reviewed-by tags for bindings - moved magic values to defines thanks to Martin's searches - added proper prefixes to defines - moved phy_configure to phy_init() dw-mipi-dsi callback - moved phy_on to a new phy_power_on() dw-mipi-dsi callback - correctly return phy_init/configure errors to callback returns [1] https://lore.kernel.org/r/20200907081825.1654-1-narmstrong@baylibre.com [2] https://lore.kernel.org/r/20220120083357.1541262-1-narmstrong@baylibre.com [3] https://lore.kernel.org/r/20220617072723.1742668-1-narmstrong@baylibre.com --- Neil Armstrong (7): dt-bindings: arm: amlogic: Document the MNT Reform 2 CM4 adapter with a BPI-CM4 Module clk: meson: add vclk driver clk: meson: g12a: make VCLK2 and ENCL clock path configurable by CCF drm/meson: gate px_clk when setting rate arm64: meson: g12-common: add the MIPI DSI nodes arm64: meson: khadas-vim3l: add TS050 DSI panel overlay arm64: dts: amlogic: meson-g12b-bananapi-cm4: add support for MNT Reform2 with CM4 adaper Documentation/devicetree/bindings/arm/amlogic.yaml | 1 + arch/arm64/boot/dts/amlogic/Makefile | 4 + arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi | 70 ++++ .../meson-g12b-bananapi-cm4-mnt-reform2.dts | 384 +++++++++++++++++++++ .../boot/dts/amlogic/meson-khadas-vim3-ts050.dtso | 108 ++++++ drivers/clk/meson/Kconfig | 5 + drivers/clk/meson/Makefile | 1 + drivers/clk/meson/g12a.c | 72 ++-- drivers/clk/meson/vclk.c | 141 ++++++++ drivers/clk/meson/vclk.h | 51 +++ drivers/gpu/drm/meson/meson_dw_mipi_dsi.c | 7 + 11 files changed, 824 insertions(+), 20 deletions(-) --- base-commit: 23e11d0318521e8693459b0e4d23aec614b3b68b change-id: 20230512-amlogic-v6-4-upstream-dsi-ccf-vim3-b8e5217e1f4a Best regards,
-
sent/topic/sm8x50/upstream/goodix-spi-defconfig-v15b898182 · ·
(no cover subject) To: Bjorn Andersson <andersson@kernel.org> To: Konrad Dybcio <konrad.dybcio@linaro.org> Cc: <linux-arm-kernel@lists.infradead.org> Cc: <linux-kernel@vger.kernel.org> Cc: linux-arm-msm@vger.kernel.org Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- Neil Armstrong (1): arm64: deconfig: enable Goodix Berlin SPI touchscreen driver as module arch/arm64/configs/defconfig | 1 + 1 file changed, 1 insertion(+) --- base-commit: 076d56d74f17e625b3d63cf4743b3d7d02180379 change-id: 20240203-topic-sm8x50-upstream-goodix-spi-defconfig-5b69c3e9f61f Best regards,
-
sent/topic/sm8550/upstream/qrd8550-touch-v1e6480d9a · ·
(no cover subject) To: Bjorn Andersson <andersson@kernel.org> To: Konrad Dybcio <konrad.dybcio@linaro.org> To: Rob Herring <robh+dt@kernel.org> To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> To: Conor Dooley <conor+dt@kernel.org> Cc: <linux-arm-msm@vger.kernel.org> Cc: <devicetree@vger.kernel.org> Cc: <linux-kernel@vger.kernel.org> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- Neil Armstrong (1): arm64: dts: qcom: sm8550-qrd: enable Touchscreen arch/arm64/boot/dts/qcom/sm8550-qrd.dts | 42 +++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) --- base-commit: 06f658aadff0e483ee4f807b0b46c9e5cba62bfa change-id: 20240131-topic-sm8550-upstream-qrd8550-touch-a59df5250c07 Best regards,
-
sent/topic/goodix-berlin/upstream/initial-v153bf4e210 · ·
Input: add initial support for Goodix Berlin touchscreen IC These touchscreen ICs support SPI, I2C and I3C interface, up to 10 finger touch, stylus and gestures events. This initial driver is derived from the Goodix goodix_ts_berlin available at [1] and [2] and only supports the GT9916 IC present on the Qualcomm SM8550/SM8650 MTP & QRD touch panel. The current implementation only supports BerlinD, aka GT9916. Support for advanced features like: - Firmware & config update - Stylus events - Gestures events - Previous revisions support (BerlinA or BerlinB) is not included in current version. The current support will work with currently flashed firmware and config, and bail out if firmware or config aren't flashed yet. [1] https://github.com/goodix/goodix_ts_berlin [2] https://git.codelinaro.org/clo/la/platform/vendor/opensource/touch-drivers To: Dmitry Torokhov <dmitry.torokhov@gmail.com> To: linux-input@vger.kernel.org Cc: Rob Herring <robh+dt@kernel.org> Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> Cc: Conor Dooley <conor+dt@kernel.org> Cc: Bastien Nocera <hadess@hadess.net> Cc: Hans de Goede <hdegoede@redhat.com> Cc: Henrik Rydberg <rydberg@bitmath.org> Cc: Jeff LaBundy <jeff@labundy.com> Cc: linux-arm-msm@vger.kernel.org Cc: devicetree@vger.kernel.org Cc: linux-kernel@vger.kernel.org Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- Changes in v15: - Applied changes/cleanups/fixes provided by Dmitry: - Cleanup status/offsets defines, move in to structs - Remove packed attribute when not needed - Refactor touch data & header structs - Store event into goodix_berlin_core - simplify goodix_berlin_checksum_valid() - simplify goodix_berlin_convert_ic_info() with macro - simplify back-and-forth reads with goodix_berlin_get_remaining_contacts() - simplify goodix_berlin_touch_handler() - cleanup buffer handling comment - clear up status field in case of checksum error - Link to v14: https://lore.kernel.org/r/20231221-topic-goodix-berlin-upstream-initial-v14-0-04459853b640@linaro.org Changes in v14: - Rebased on next-20231221 - Fixed build on SPI/I2S drivers missing <linux/input.h> include - Link to v13: https://lore.kernel.org/r/20231213-topic-goodix-berlin-upstream-initial-v13-0-5d7a26a5eaa2@linaro.org Changes in v13: - Thanks to Dmitry's suggestion: - Move core defines and structs into goodix_berlin_core.c - Comments typos and rephrasings - Identation fixes - Refactor of goodix_berlin_power_on - goodix_berlin_get_ic_info move to __free(kfree) to avoid leaking - Added comment explaining how data is retrieved in irq handler - Link to v12: https://lore.kernel.org/r/20231209-topic-goodix-berlin-upstream-initial-v12-0-eaffaeb53fb5@linaro.org Changes in v12: - Rebased on next-20231208 - Link to v11: https://lore.kernel.org/r/20231106-topic-goodix-berlin-upstream-initial-v11-0-5c47e9707c03@linaro.org Changes in v11: - Fixes according to Jeff's review: - s/dev_info/dev_err/ in goodix_berlin_get_ic_info() - remove spurious return instead of goto in goodix_berlin_get_ic_info() - added back dropped msleep() in goodix_berlin_request_handle_reset() - Link to v10: https://lore.kernel.org/r/20231023-topic-goodix-berlin-upstream-initial-v10-0-88eec2e51c0b@linaro.org Changes in v10: - Fix according to Dmitry's review: - move goodix_berlin_get_ic_info() afe_data to heap - merge the goodix_berlin_parse_finger() loops and skip invalid fingers instead of returning - remove unwanted goodix_berlin_touch_handler() "static" for buffer - only call goodix_berlin_request_handle_reset() if gpio was provided - use "error = func(); if(error) return error;" instead of "return func()" when function handles multiple error cases - Link to v9: https://lore.kernel.org/r/20231021-topic-goodix-berlin-upstream-initial-v9-0-13fb4e887156@linaro.org Changes in v9: - Rebased on next-20231020 - Link to v8: https://lore.kernel.org/r/20231003-topic-goodix-berlin-upstream-initial-v8-0-171606102ed6@linaro.org Changes in v8: - Add missing bitfield.h include in core - Link to v7: https://lore.kernel.org/r/20231002-topic-goodix-berlin-upstream-initial-v7-0-792fb91f5e88@linaro.org Changes in v7: - rebased on v6.6-rc3 - Link to v6: https://lore.kernel.org/r/20230912-topic-goodix-berlin-upstream-initial-v6-0-b4ecfa49fb9d@linaro.org Changes in v6: - rebased on v6.6-rc1 - changed commit message prefix to match the other Input commits - Link to v5: https://lore.kernel.org/r/20230801-topic-goodix-berlin-upstream-initial-v5-0-079252935593@linaro.org Changes in v5: - rebased on next-20230801 - Link to v4: https://lore.kernel.org/r/20230606-topic-goodix-berlin-upstream-initial-v4-0-0947c489be17@linaro.org Changes in v4: - Core updates: - drop kconfig depends, deps will be handled by _SPI and _I2C - change power_on() error labels - print errors on all dev_err() prints - remove useless default variable initialization - switch irq touch checksum error to dev_err() - add Jeff's review tag - I2C changes - change REGMAP_I2C Kconfig from depends to select - add Jeff's review tag - SPI changes - add select REGMAP to Kconfig - added GOODIX_BERLIN_ prefix to defines - switched from ret to error - add Jeff's review tag - Link to v3: https://lore.kernel.org/r/20230606-topic-goodix-berlin-upstream-initial-v3-0-f0577cead709@linaro.org Changes in v3: - Another guge cleanups after Jeff's review: - appended goodix_berlin_ before all defines - removed some unused defines - removed retries on most of read functions, can be added back later - added __le to ic_info structures - reworked and simplified irq handling, dropped enum and ts_event structs - added struct for touch data - simplified and cleaned goodix_berlin_check_checksum & goodix_berlin_is_dummy_data - moved touch_data_addr to the end of the main code_data - reworked probe to get_irq last and right before setip input device - cleaned probe by removing the "cd->dev" - added short paragraph to justify new driver for berlin devices - defined all offsets & masks - Added bindings review tag - Link to v2: https://lore.kernel.org/r/20230606-topic-goodix-berlin-upstream-initial-v2-0-26bc8fe1e90e@linaro.org Changes in v2: - Huge cleanups after Jeff's review: - switch to error instead of ret - drop dummy vendor/product ids - drop unused defined/enums - drop unused ic_info and only keep needes values - cleanup namings and use goodix_berlin_ everywhere - fix regulator setup - fix default variables value when assigned afterwars - removed indirections - dropped debugfs - cleaned input_dev setup - dropped _remove() - sync'ed i2c and spi drivers - fixed yaml bindings - Link to v1: https://lore.kernel.org/r/20230606-topic-goodix-berlin-upstream-initial-v1-0-4a0741b8aefd@linaro.org --- Neil Armstrong (4): dt-bindings: input: document Goodix Berlin Touchscreen IC Input: add core support for Goodix Berlin Touchscreen IC Input: goodix-berlin - add I2C support for Goodix Berlin Touchscreen IC Input: goodix-berlin - add SPI support for Goodix Berlin Touchscreen IC .../bindings/input/touchscreen/goodix,gt9916.yaml | 95 +++ drivers/input/touchscreen/Kconfig | 31 + drivers/input/touchscreen/Makefile | 3 + drivers/input/touchscreen/goodix_berlin.h | 24 + drivers/input/touchscreen/goodix_berlin_core.c | 755 +++++++++++++++++++++ drivers/input/touchscreen/goodix_berlin_i2c.c | 75 ++ drivers/input/touchscreen/goodix_berlin_spi.c | 178 +++++ 7 files changed, 1161 insertions(+) --- base-commit: 596764183be8ebb13352b281a442a1f1151c9b06 change-id: 20230606-topic-goodix-berlin-upstream-initial-ba97e8ec8f4c Best regards,
-
sent/topic/sm8650/upstream/pcie-its-v14a4c0c0a · ·
(no cover subject) To: Bjorn Andersson <andersson@kernel.org> To: Konrad Dybcio <konrad.dybcio@linaro.org> To: Rob Herring <robh+dt@kernel.org> To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> To: Conor Dooley <conor+dt@kernel.org> Cc: <linux-arm-msm@vger.kernel.org> Cc: <devicetree@vger.kernel.org> Cc: <linux-kernel@vger.kernel.org> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- Neil Armstrong (1): arm64: dts: qcom: sm8650: Use GIC-ITS for PCIe0 and PCIe1 arch/arm64/boot/dts/qcom/sm8650.dtsi | 8 ++++++++ 1 file changed, 8 insertions(+) --- base-commit: 6613476e225e090cc9aad49be7fa504e290dd33d change-id: 20240125-topic-sm8650-upstream-pcie-its-94572c7f1a73 Best regards,
-
sent/topic/sm8650/upstream/audio-dt-v1301dd462 · ·
arm64: qcom: sm8650: enable Audio on MTP and QRD Add the remaining Audio nodes on the SM8650-QRD & MTP boards including: - Qualcomm Aqstic WCD9395 audio codec on the RX & TX Soundwire interfaces - WSA8845 Left & Right Speakers - Link the WCD9395 Codec node to the WCD9395 USB SubSystem node to handle the USB-C Audio Accessory Mode events & lane swapping - Sound card with routing for Speakers and Microphones Finally enable the missing modules in arm64 defconfig now the WCD939x codec driver has been applied. Dependencies: - altmode: https://lore.kernel.org/all/20240123-topic-sm8650-upstream-altmode-v3-0-300a5ac80e1e@linaro.org/ Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- Neil Armstrong (3): arm64: dts: qcom: sm8650-qrd: add Audio nodes arm64: dts: qcom: sm8650-mtp: add Audio sound card node arm64: defconfig: enable audio drivers for SM8650 QRD board arch/arm64/boot/dts/qcom/sm8650-mtp.dts | 23 ++++ arch/arm64/boot/dts/qcom/sm8650-qrd.dts | 203 ++++++++++++++++++++++++++++++++ arch/arm64/configs/defconfig | 3 + 3 files changed, 229 insertions(+) --- base-commit: 63be584a33c3c63114aa3866f7cbcb45fa751e60 change-id: 20240125-topic-sm8650-upstream-audio-dt-1daca65777ba Best regards,
-
sent/topic/sm8650/upstream/altmode-v3876f4a3d · ·
arm64: qcom: sm8650: add support for USB-C Altmode This adds the missing bits to support Display Port external display over the USB-C Altmode support using the Redriver/Retimer and WCD939x USBSS Mux/Switch to provide the correct switching. To: Bjorn Andersson <andersson@kernel.org> To: Konrad Dybcio <konrad.dybcio@linaro.org> To: Rob Herring <robh+dt@kernel.org> To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> To: Conor Dooley <conor+dt@kernel.org> To: Catalin Marinas <catalin.marinas@arm.com> To: Will Deacon <will@kernel.org> Cc: <linux-arm-msm@vger.kernel.org> Cc: <devicetree@vger.kernel.org> Cc: <linux-kernel@vger.kernel.org> Cc: <linux-arm-kernel@lists.infradead.org> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- Changes in v3: - rebased on v6.8-rc1 - Link to v2: https://lore.kernel.org/r/20231219-topic-sm8650-upstream-altmode-v2-0-a608528864a3@linaro.org Changes in v2: - replaced "ok" by "okay" - Link to v1: https://lore.kernel.org/r/20231218-topic-sm8650-upstream-altmode-v1-0-7900660693cf@linaro.org --- Neil Armstrong (2): arm64: dts: qcom: sm8650-qrd: add USB-C Altmode Support arm64: defconfig: enable WCD939x USBSS driver as module arch/arm64/boot/dts/qcom/sm8650-qrd.dts | 104 +++++++++++++++++++++++++++++++- arch/arm64/configs/defconfig | 1 + 2 files changed, 103 insertions(+), 2 deletions(-) --- base-commit: 6613476e225e090cc9aad49be7fa504e290dd33d change-id: 20231218-topic-sm8650-upstream-altmode-3ee141fdccff Best regards,
-
sent/topic/sm8550/upstream/hdk8550-v2dc900c2d · ·
arm64: qcom: sm8550: add support for the SM8550-HDK board The SM8550-HDK is an embedded development platforms for the Snapdragon 8 Gen 2 SoC aka SM8550, with the following features: - Qualcomm SM8550 SoC - 16GiB On-board LPDDR5 - On-board WiFi 7 + Bluetooth 5.3/BLE - On-board UFS4.0 - M.2 Key B+M Gen3x2 PCIe Slot - HDMI Output - USB-C Connector with DP Almode & Audio Accessory mode - Micro-SDCard Slot - Audio Jack with Playback and Microphone - 2 On-board Analog microphones - 2 On-board Speakers - 96Boards Compatible Low-Speed and High-Speed connectors [1] - For Camera, Sensors and external Display cards - Compatible with the Linaro Debug board [2] - SIM Slot for Modem - Debug connectors - 6x On-Board LEDs On-Board PMICs: - PMK8550 2.1 - PM8550 2.0 - PM8550VS 2.0 x4 - PM8550VE 2.0 - PM8550B 2.0 - PMR735D 2.0 - PM8010 1.1 x2 Product Page: [3] Dependencies: None [1] https://www.96boards.org/specifications/ [2] https://git.codelinaro.org/linaro/qcomlt/debugboard [3] https://www.lantronix.com/products/snapdragon-8-gen-2-mobile-hardware-development-kit/ To: Bjorn Andersson <andersson@kernel.org> To: Konrad Dybcio <konrad.dybcio@linaro.org> To: Rob Herring <robh+dt@kernel.org> To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> To: Conor Dooley <conor+dt@kernel.org> Cc: <linux-arm-msm@vger.kernel.org> Cc: <devicetree@vger.kernel.org> Cc: <linux-kernel@vger.kernel.org> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- Changes in v2: - Fixed ordering in bindings - fixed typo and spurious blank line in patch 2 - Collected Reviewed-by - Link to v1: https://lore.kernel.org/r/20240122-topic-sm8550-upstream-hdk8550-v1-0-bff7eb3a17eb@linaro.org --- Neil Armstrong (2): dt-bindings: arm: qcom: Document the HDK8550 board arm64: dts: qcom: sm8550: add support for the SM8550-HDK board Documentation/devicetree/bindings/arm/qcom.yaml | 1 + arch/arm64/boot/dts/qcom/Makefile | 1 + arch/arm64/boot/dts/qcom/sm8550-hdk.dts | 1290 +++++++++++++++++++++++ 3 files changed, 1292 insertions(+) --- base-commit: 29a509493dd4da77c9109aa54cc4c145ca64ec23 change-id: 20240119-topic-sm8550-upstream-hdk8550-899e9137ed01 Best regards,
-
sent/topic/sm8650/upstream/remoteproc-v77f2157ff · ·
remoteproc: qcom: Introduce DSP support for SM8650 Add the bindings and driver changes for DSP support on the SM8650 platform in order to enable the aDSP, cDSP and MPSS subsystems to boot. Compared to SM8550, where SM8650 uses the same dual firmware files, (dtb file and main firmware) the memory zones requirement has changed: - cDSP: now requires 2 memory zones to be configured as shared between the cDSP and the HLOS subsystem - MPSS: In addition to the memory zone required for the SM8550 MPSS, two more are required to be configured for MPSS usage only. In order to handle this and avoid code duplication, the region_assign_* code patch has been made more generic and is able handle multiple DSP-only memory zones (for MPSS) or DSP-HLOS shared memory zones (cDSP) in the same region_assign functions. Dependencies: None For convenience, a regularly refreshed linux-next based git tree containing all the SM8650 related work is available at: https://git.codelinaro.org/neil.armstrong/linux/-/tree/topic/sm8650/upstream/integ To: Andy Gross <agross@kernel.org> To: Bjorn Andersson <andersson@kernel.org> To: Konrad Dybcio <konrad.dybcio@linaro.org> To: Mathieu Poirier <mathieu.poirier@linaro.org> To: Rob Herring <robh+dt@kernel.org> To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org> To: Conor Dooley <conor+dt@kernel.org> To: Manivannan Sadhasivam <mani@kernel.org> Cc: linux-arm-msm@vger.kernel.org Cc: linux-remoteproc@vger.kernel.org Cc: devicetree@vger.kernel.org Cc: linux-kernel@vger.kernel.org Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- Changes in v7: - Rebased on v6.8-rc1 - Add another memory region for MPSS, in bindings, code and DT - Kepts Krzysztof's review on bindings after agreement on irc - Kept drivers patches reviews because it's only a miminal change (value 2 -> 3) - Link to v6: https://lore.kernel.org/r/20231218-topic-sm8650-upstream-remoteproc-v6-0-3d16b37f154b@linaro.org Changes in v6: - Rebased on next-20231218, last patch did not apply anymore - Link to v5: https://lore.kernel.org/r/20231212-topic-sm8650-upstream-remoteproc-v5-0-e749a1a48268@linaro.org Changes in v5: - Rename _perms to _owners per Konrad suggestion - Link to v4: https://lore.kernel.org/r/20231208-topic-sm8650-upstream-remoteproc-v4-0-a96c3e5f0913@linaro.org Changes in v4: - Collected review from Mukesh Ojha - Fixed adsp_unassign_memory_region() as suggested by Mukesh Ojha - Link to v3: https://lore.kernel.org/r/20231106-topic-sm8650-upstream-remoteproc-v3-0-dbd4cabaeb47@linaro.org Changes in v3: - Collected bindings review tags - Small fixes suggested by Mukesh Ojha - Link to v2: https://lore.kernel.org/r/20231030-topic-sm8650-upstream-remoteproc-v2-0-609ee572e0a2@linaro.org Changes in v2: - Fixed sm8650 entries in allOf:if:then to match Krzysztof's comments - Collected reviewed-by on patch 3 - Link to v1: https://lore.kernel.org/r/20231025-topic-sm8650-upstream-remoteproc-v1-0-a8d20e4ce18c@linaro.org --- Neil Armstrong (4): dt-bindings: remoteproc: qcom,sm8550-pas: document the SM8650 PAS remoteproc: qcom: pas: make region assign more generic remoteproc: qcom: pas: Add SM8650 remoteproc support arm64: dts: qcom: sm8650: add missing qlink_logging reserved memory for mpss .../bindings/remoteproc/qcom,sm8550-pas.yaml | 45 ++++++- arch/arm64/boot/dts/qcom/sm8650.dtsi | 8 +- drivers/remoteproc/qcom_q6v5_pas.c | 150 ++++++++++++++++----- 3 files changed, 167 insertions(+), 36 deletions(-) --- base-commit: 6613476e225e090cc9aad49be7fa504e290dd33d change-id: 20231016-topic-sm8650-upstream-remoteproc-66a87eeb6fee Best regards,