platform/kernel/linux-rpi.git
3 years agoarm64: dts: qcom: sc7180: pompom: Add "dmic_clk_en" + sound model
Douglas Anderson [Mon, 15 Mar 2021 20:39:31 +0000 (13:39 -0700)]
arm64: dts: qcom: sc7180: pompom: Add "dmic_clk_en" + sound model

Match what's downstream for this board.

Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Cc: Srinivasa Rao Mandadapu <srivasam@codeaurora.org>
Cc: Ajit Pandey <ajitp@codeaurora.org>
Cc: Judy Hsiao <judyhsiao@chromium.org>
Cc: Cheng-Yi Chiang <cychiang@chromium.org>
Cc: Stephen Boyd <swboyd@chromium.org>
Cc: Matthias Kaehlcke <mka@chromium.org>
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Link: https://lore.kernel.org/r/20210315133924.v2.2.If218189eff613a6c48ba12d75fad992377d8f181@changeid
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sc7180: coachz: Add "dmic_clk_en"
Douglas Anderson [Mon, 15 Mar 2021 20:39:30 +0000 (13:39 -0700)]
arm64: dts: qcom: sc7180: coachz: Add "dmic_clk_en"

This was present downstream. Add upstream too. NOTE: upstream I
managed to get some sort of halfway state and got one pinctrl entry in
the coachz-r1 device tree. Remove that as part of this since it's now
in the dtsi.

Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Cc: Srinivasa Rao Mandadapu <srivasam@codeaurora.org>
Cc: Ajit Pandey <ajitp@codeaurora.org>
Cc: Judy Hsiao <judyhsiao@chromium.org>
Cc: Cheng-Yi Chiang <cychiang@chromium.org>
Cc: Stephen Boyd <swboyd@chromium.org>
Cc: Matthias Kaehlcke <mka@chromium.org>
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Link: https://lore.kernel.org/r/20210315133924.v2.1.I601a051cad7cfd0923e55b69ef7e5748910a6096@changeid
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: update usb qmp phy clock-cells property
Jonathan Marek [Mon, 23 Nov 2020 14:37:05 +0000 (09:37 -0500)]
arm64: dts: qcom: update usb qmp phy clock-cells property

The top-level node doesn't provide any clocks, the subnode provides a
single clock with of_clk_hw_simple_get.

Signed-off-by: Jonathan Marek <jonathan@marek.ca>
Link: https://lore.kernel.org/r/20201123143705.14277-1-jonathan@marek.ca
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: msm8916: Add GICv2 hypervisor registers/interrupt
Stephan Gerhold [Wed, 7 Apr 2021 16:36:48 +0000 (18:36 +0200)]
arm64: dts: qcom: msm8916: Add GICv2 hypervisor registers/interrupt

The ARM Cortex-A53 CPU cores and QGIC2 interrupt controller
(an implementation of the ARM GIC 2.0 specification) used in MSM8916
support virtualization, e.g. for KVM on Linux. However, so far it was
not possible to make use of this functionality, because Qualcomm's
proprietary "hyp" firmware blocks the EL2 mode of the CPU and only
allows booting Linux in EL1.

However, on devices without (firmware) secure boot there is no need
to rely on all of Qualcomm's firmware. The "hyp" firmware on MSM8916
seems simple enough that it can be replaced with an open-source
alternative created only based on trial and error - with some similar
EL2/EL1 initialization code adapted from Linux and U-Boot.

qhypstub [1] is such an open-source firmware for MSM8916 that
can be used as drop-in replacement for Qualcomm's "hyp" firmware.
It does not implement any hypervisor functionality.
Instead, it allows booting Linux/KVM (or other hypervisors) in EL2.

With Linux booting in EL2, KVM seems to be working just fine on MSM8916.
However, so far it is not possible to make use of the virtualization
features in the GICv2. To use KVM's VGICv2 code, the QGIC2 device tree
node needs additional resources (according to binding documentation):

  - The CPU interface region (second reg) must be at least 8 KiB large
    to access the GICC_DIR register (mapped at 0x1000 offset)
  - Virtual control/CPU interface register base and size
  - Hypervisor maintenance interrupt

Fortunately, the public APQ8016E TRM [2] provides the required information:

  - The CPU interface region (at 0x0B002000) actually has a size of 8 KiB
  - Virtual control/CPU interface register is at 0x0B001000/0x0B004000
  - Hypervisor maintenance interrupt is "PPI #0"
      Note: This is a bit strange since almost all other ARM SoCs use
            GIC_PPI 9 for this. However, I have verified that this is
            indeed the interrupt that fires when bits are set in GICH_HCR.

Add the additional resources to the QGIC2 device tree node in msm8916.dtsi.
There is no functional difference when Linux is started in EL1 since the
additional resources are ignored in that case.

With these changes (and qhypstub), KVM seems to be fully working on
the DragonBoard 410c (apq8016-sbc) and BQ Aquaris X5 (longcheer-l8910).

[1]: https://github.com/msm8916-mainline/qhypstub
[2]: https://developer.qualcomm.com/download/sd410/snapdragon-410e-technical-reference-manual.pdf

Acked-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
Link: https://lore.kernel.org/r/20210407163648.4708-1-stephan@gerhold.net
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: sdm845-db845c: make firmware filenames follow linux-firmware
Dmitry Baryshkov [Thu, 18 Mar 2021 20:14:05 +0000 (23:14 +0300)]
arm64: dts: sdm845-db845c: make firmware filenames follow linux-firmware

Cange aDSP and cDSP firmware filenames to follow filenames merged into
linux-firmware tree. Switch from split .mdt files to merged .mbn files.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20210318201405.2244723-1-dmitry.baryshkov@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sdm845-xiaomi-beryllium: Add DSI and panel bits
Sumit Semwal [Sun, 4 Apr 2021 19:44:37 +0000 (01:14 +0530)]
arm64: dts: qcom: sdm845-xiaomi-beryllium: Add DSI and panel bits

Enabling the Display panel for beryllium requires DSI
labibb regulators and panel dts nodes to be added.
It is also required to keep some of the regulators as
always-on.

Signed-off-by: Sumit Semwal <sumit.semwal@linaro.org>
Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
Reviewed-by: Konrad Dybcio <konrad.dybcio@somainline.org>
Link: https://lore.kernel.org/r/20210404194437.537011-1-amit.pundir@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sc7280: Add Coresight support
Sai Prakash Ranjan [Mon, 15 Mar 2021 18:35:49 +0000 (00:05 +0530)]
arm64: dts: qcom: sc7280: Add Coresight support

Add coresight components found on SC7280 SoC.

Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
Cc: Suzuki K Poulose <suzuki.poulose@arm.com>
Cc: Mike Leach <mike.leach@linaro.org>
Cc: Leo Yan <leo.yan@linaro.org>
Signed-off-by: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
Link: https://lore.kernel.org/r/de07324628f88900b72357f4ef7f0c7db7e3409d.1615832893.git.saiprakash.ranjan@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sc7280: Add AOSS QMP node
Sai Prakash Ranjan [Mon, 15 Mar 2021 18:35:48 +0000 (00:05 +0530)]
arm64: dts: qcom: sc7280: Add AOSS QMP node

Add a DT node for the AOSS QMP on SC7280 SoC.

Signed-off-by: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
Link: https://lore.kernel.org/r/12f013a09989dbc3075bfb204653dc02d54ae8a1.1615832893.git.saiprakash.ranjan@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sc7280: Add IPCC for SC7280 SoC
Sai Prakash Ranjan [Mon, 15 Mar 2021 18:35:47 +0000 (00:05 +0530)]
arm64: dts: qcom: sc7280: Add IPCC for SC7280 SoC

Add the IPCC DT node which is used to send and receive IPC
signals with remoteprocs for SC7280 SoC.

Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Cc: Jassi Brar <jaswinder.singh@linaro.org>
Signed-off-by: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Link: https://lore.kernel.org/r/8374f407386209d2e7891763de3fa2450a14ad60.1615832893.git.saiprakash.ranjan@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sc7280: Add device tree node for LLCC
Sai Prakash Ranjan [Mon, 15 Mar 2021 18:35:46 +0000 (00:05 +0530)]
arm64: dts: qcom: sc7280: Add device tree node for LLCC

Add a DT node for Last level cache (aka. system cache)
controller which provides control over the last level
cache present on SC7280 SoC.

Signed-off-by: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Link: https://lore.kernel.org/r/5bacaa8350e0d9553dccd623a15513590e795b47.1615832893.git.saiprakash.ranjan@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: Add support for OnePlus 5/5T
Jami Kettunen [Tue, 6 Apr 2021 01:07:07 +0000 (04:07 +0300)]
arm64: dts: qcom: Add support for OnePlus 5/5T

Add device trees for OnePlus 5 (cheeseburger) and 5T (dumpling)
MSM8998 SoC smartphones with initial support included for:

- UFS internal storage
- USB peripheral mode
- Display
- Touch
- Bluetooth
- Hall effect sensor
- Power and volume buttons
- Capacitive keypad button backlight (on cheeseburger)

Signed-off-by: Jami Kettunen <jamipkettunen@gmail.com>
Link: https://lore.kernel.org/r/20210406010708.2376807-2-jamipkettunen@gmail.com
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: msm8998: Disable MSS remoteproc by default
Jami Kettunen [Tue, 6 Apr 2021 01:07:08 +0000 (04:07 +0300)]
arm64: dts: qcom: msm8998: Disable MSS remoteproc by default

This was already the case for ADSP and SLPI remoteprocs & doesn't affect
existing boards where it has been re-enabled.

Signed-off-by: Jami Kettunen <jamipkettunen@gmail.com>
Link: https://lore.kernel.org/r/20210406010708.2376807-3-jamipkettunen@gmail.com
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: Move rmtfs memory region
Sujit Kautkar [Tue, 30 Mar 2021 01:46:10 +0000 (18:46 -0700)]
arm64: dts: qcom: Move rmtfs memory region

Move rmtfs memory region so that it does not overlap with system
RAM (kernel data) when KAsan is enabled. This puts rmtfs right
after mba_mem which is not supposed to increase beyond 0x94600000

Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Signed-off-by: Sujit Kautkar <sujitka@chromium.org>
Link: https://lore.kernel.org/r/20210330014610.1451198-1-sujitka@chromium.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: Add sound node for sc7180-trogdor-coachz
Srinivasa Rao Mandadapu [Sun, 14 Mar 2021 06:10:54 +0000 (11:40 +0530)]
arm64: dts: qcom: Add sound node for sc7180-trogdor-coachz

This is a trgodor variant, required to have sound node variable
for coachz specific platform.

Tested-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Srinivasa Rao Mandadapu <srivasam@codeaurora.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Link: https://lore.kernel.org/r/20210314061054.19451-3-srivasam@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sc7180-trogdor: Add lpass dai link for I2S driver
Ajit Pandey [Sun, 14 Mar 2021 06:10:53 +0000 (11:40 +0530)]
arm64: dts: qcom: sc7180-trogdor: Add lpass dai link for I2S driver

Add dai link for supporting lpass I2S driver, which is used
for audio capture and playback.
Add lpass-cpu node with pin controls and i2s primary
and secondary dai-links.

Tested-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Reviewed-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Ajit Pandey <ajitp@codeaurora.org>
Signed-off-by: V Sujith Kumar Reddy <vsujithk@codeaurora.org>
Signed-off-by: Srinivasa Rao Mandadapu <srivasam@codeaurora.org>
Link: https://lore.kernel.org/r/20210314061054.19451-2-srivasam@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: use dp_phy to provide clocks to dispcc
Dmitry Baryshkov [Wed, 31 Mar 2021 15:16:14 +0000 (18:16 +0300)]
arm64: dts: qcom: use dp_phy to provide clocks to dispcc

Plug dp_phy-provided clocks to display clock controller.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20210331151614.3810197-8-dmitry.baryshkov@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8250: switch usb1 qmp phy to USB3+DP mode
Dmitry Baryshkov [Wed, 31 Mar 2021 15:16:13 +0000 (18:16 +0300)]
arm64: dts: qcom: sm8250: switch usb1 qmp phy to USB3+DP mode

USB1 QMP PHY is not just a USB3 PHY, but USB3+DP PHY. Change device tree
nodes accordingly.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20210331151614.3810197-7-dmitry.baryshkov@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8250: Add venus DT node
Bryan O'Donoghue [Thu, 1 Apr 2021 17:42:56 +0000 (18:42 +0100)]
arm64: dts: qcom: sm8250: Add venus DT node

Add DT entries for the sm8250 venus encoder/decoder.

Co-developed-by: Jonathan Marek <jonathan@marek.ca>
Signed-off-by: Jonathan Marek <jonathan@marek.ca>
Co-developed-by: Dikshita Agarwal <dikshita@qti.qualcomm.com>
Signed-off-by: Dikshita Agarwal <dikshita@qti.qualcomm.com>
Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Tested-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20210401174256.1810044-3-bryan.odonoghue@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8250: Add videocc DT node
jonathan@marek.ca [Thu, 1 Apr 2021 17:42:55 +0000 (18:42 +0100)]
arm64: dts: qcom: sm8250: Add videocc DT node

This commit adds the videocc DTS node for sm8250.

Signed-off-by: Jonathan Marek <jonathan@marek.ca>
Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Tested-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20210401174256.1810044-2-bryan.odonoghue@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8350: Add interconnects
Vinod Koul [Thu, 1 Apr 2021 11:32:52 +0000 (17:02 +0530)]
arm64: dts: qcom: sm8350: Add interconnects

Add interconnect nodes and add them for modem and cdsp nodes

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210401113252.3078466-1-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8350: Add support for PRNG EE
Robert Foss [Thu, 1 Apr 2021 10:15:36 +0000 (12:15 +0200)]
arm64: dts: qcom: sm8350: Add support for PRNG EE

RNG (Random Number Generator) in SM8350 features PRNG EE (Execution
Environment), hence add devicetree support for it.

Reviewed-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Robert Foss <robert.foss@linaro.org>
Link: https://lore.kernel.org/r/20210401101536.1014560-1-robert.foss@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sc7280: Add RPMh regulators for sc7280-idp
satya priya [Wed, 31 Mar 2021 12:05:37 +0000 (17:35 +0530)]
arm64: dts: qcom: sc7280: Add RPMh regulators for sc7280-idp

Add regulator devices for SC7280 as RPMh regulators. This ensures
that consumers are able to modify the physical state of PMIC
regulators.

Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Signed-off-by: satya priya <skakit@codeaurora.org>
Link: https://lore.kernel.org/r/1617192339-3760-4-git-send-email-skakit@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sdm845: add required clocks on the gcc
Dmitry Baryshkov [Fri, 2 Apr 2021 23:39:44 +0000 (02:39 +0300)]
arm64: dts: qcom: sdm845: add required clocks on the gcc

Specify input clocks to the SDM845's Global Clock Controller as required
by the bindings.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20210402233944.273275-4-dmitry.baryshkov@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8350: Add thermal zones and throttling support
Robert Foss [Wed, 24 Mar 2021 12:43:10 +0000 (13:43 +0100)]
arm64: dts: qcom: sm8350: Add thermal zones and throttling support

sm8350 has 29 thermal sensors split across two tsens controllers. Add
the thermal zones to expose them and wireup the cpus to throttle their
frequencies on crossing passive temperature thresholds.

Signed-off-by: Robert Foss <robert.foss@linaro.org>
Reviewed-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210324124308.1265626-2-robert.foss@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8150: add i2c nodes
Caleb Connolly [Sun, 21 Mar 2021 17:46:26 +0000 (17:46 +0000)]
arm64: dts: qcom: sm8150: add i2c nodes

Tested on the OnePlus 7 Pro (including DMA).

Signed-off-by: Caleb Connolly <caleb@connolly.tech>
Reviewed-by: Vinod Koul <vkoul@kernel.org>
Reviewed-by: Bhupesh Sharma <bhupesh.sharma@linaro.org>
Link: https://lore.kernel.org/r/20210321174522.123036-3-caleb@connolly.tech
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8150: add other QUP nodes and iommus
Caleb Connolly [Sun, 21 Mar 2021 17:46:21 +0000 (17:46 +0000)]
arm64: dts: qcom: sm8150: add other QUP nodes and iommus

Add the first and third qupv3 nodes used to hook
up peripherals on some devices, as well as the iommus properties for all
of them.

Signed-off-by: Caleb Connolly <caleb@connolly.tech>
Link: https://lore.kernel.org/r/20210321174522.123036-2-caleb@connolly.tech
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8250: fix display nodes
Jonathan Marek [Mon, 29 Mar 2021 12:00:48 +0000 (15:00 +0300)]
arm64: dts: qcom: sm8250: fix display nodes

Apply these fixes to the newly added sm8250 display ndoes
 - Remove "notused" interconnect (which apparently was blindly copied from
   my old patches)
 - Use dispcc node example from dt-bindings, removing clocks which aren't
   documented or used by the driver and fixing the region size.

Fixes: 7c1dffd471b1 ("arm64: dts: qcom: sm8250.dtsi: add display system nodes")
Signed-off-by: Jonathan Marek <jonathan@marek.ca>
[DB: compatibility changes split into separate patch]
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20210329120051.3401567-2-dmitry.baryshkov@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: qrb5165-rb5: switch into using GPIO for SPI0 CS
Dmitry Baryshkov [Wed, 10 Feb 2021 13:34:58 +0000 (16:34 +0300)]
arm64: dts: qcom: qrb5165-rb5: switch into using GPIO for SPI0 CS

On the GENI SPI controller is is not very efficient if the chip select
line is controlled by the QUP itself (see 37dd4b777942 ("arm64: dts:
qcom: sc7180: Provide pinconf for SPI to use GPIO for CS") for the
details). Configure SPI0 CS pin as a GPIO.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Link: https://lore.kernel.org/r/20210210133458.1201066-5-dmitry.baryshkov@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8250: add pinctrl for SPI using GPIO as a CS
Dmitry Baryshkov [Wed, 10 Feb 2021 13:34:57 +0000 (16:34 +0300)]
arm64: dts: qcom: sm8250: add pinctrl for SPI using GPIO as a CS

GENI SPI controller shows several issues if it manages the CS on its own
(see 37dd4b777942 ("arm64: dts: qcom: sc7180: Provide pinconf for SPI to
use GPIO for CS")) for the details. Provide pinctrl entries for SPI
controllers using the same CS pin but in GPIO mode.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Link: https://lore.kernel.org/r/20210210133458.1201066-4-dmitry.baryshkov@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8250: further split of spi pinctrl config
Dmitry Baryshkov [Wed, 10 Feb 2021 13:34:56 +0000 (16:34 +0300)]
arm64: dts: qcom: sm8250: further split of spi pinctrl config

Split "default" device tree nodes into common "data-clk" nodes and "cs"
nodes which might differ from board to board depending on how the slave
chips are wired.

Reviewed-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20210210133458.1201066-3-dmitry.baryshkov@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8250: split spi pinctrl config
Dmitry Baryshkov [Wed, 10 Feb 2021 13:34:55 +0000 (16:34 +0300)]
arm64: dts: qcom: sm8250: split spi pinctrl config

As discussed on linux-arm-msm list, start splitting sm8250 pinctrl
settings into generic and board-specific parts. The first part to
receive such treatment is the spi, so split spi pinconf to the board
device tree.

Reviewed-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20210210133458.1201066-2-dmitry.baryshkov@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sdm845-db845c: Enable ov8856 sensor and connect to ISP
Robert Foss [Tue, 16 Mar 2021 17:19:31 +0000 (18:19 +0100)]
arm64: dts: qcom: sdm845-db845c: Enable ov8856 sensor and connect to ISP

Enable camss & ov8856 DT nodes.

Signed-off-by: Robert Foss <robert.foss@linaro.org>
Reviewed-by: Andrey Konovalov <andrey.konovalov@linaro.org>
Link: https://lore.kernel.org/r/20210316171931.812748-23-robert.foss@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sdm845-db845c: Configure regulators for camss node
Robert Foss [Tue, 16 Mar 2021 17:19:30 +0000 (18:19 +0100)]
arm64: dts: qcom: sdm845-db845c: Configure regulators for camss node

Add regulator to camss device tree node.

Signed-off-by: Robert Foss <robert.foss@linaro.org>
Reviewed-by: Andrey Konovalov <andrey.konovalov@linaro.org>
Link: https://lore.kernel.org/r/20210316171931.812748-22-robert.foss@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sdm845: Add CAMSS ISP node
Robert Foss [Tue, 16 Mar 2021 17:19:29 +0000 (18:19 +0100)]
arm64: dts: qcom: sdm845: Add CAMSS ISP node

Add the camss dt node for sdm845.

Signed-off-by: Robert Foss <robert.foss@linaro.org>
Reviewed-by: Andrey Konovalov <andrey.konovalov@linaro.org>
Link: https://lore.kernel.org/r/20210316171931.812748-21-robert.foss@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: pm8150: Enable RTC
Bjorn Andersson [Wed, 6 Jan 2021 00:10:04 +0000 (16:10 -0800)]
arm64: dts: qcom: pm8150: Enable RTC

The PM8150 comes with everything the RTC needs, so let's just leave it
enabled instead of having to explicitly enable it for all boards.
In effect this patch enables the RTC on the SM8150 MTP and the SM8250
HDK.

Acked-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20210106001004.4081508-1-bjorn.andersson@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8350-mtp: Add PMICs
Vinod Koul [Fri, 12 Mar 2021 05:27:37 +0000 (10:57 +0530)]
arm64: dts: qcom: sm8350-mtp: Add PMICs

SM8350-MTP features PM8350, PM8350B, PM8350C, PMK8350, PMR735A and
PMR735B. PMICs Add the dtsi for these PMICs to MTP.

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210312052737.3558801-9-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: pmr735B: Add base dts file
Vinod Koul [Fri, 12 Mar 2021 05:27:36 +0000 (10:57 +0530)]
arm64: dts: qcom: pmr735B: Add base dts file

Add base DTS file for PMR735B along with GPIO node

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210312052737.3558801-8-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: pmr735a: Add base dts file
Vinod Koul [Fri, 12 Mar 2021 05:27:35 +0000 (10:57 +0530)]
arm64: dts: qcom: pmr735a: Add base dts file

Add base DTS file for PMR735A along with GPIO node

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210312052737.3558801-7-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: pm8350c: Add base dts file
Vinod Koul [Fri, 12 Mar 2021 05:27:34 +0000 (10:57 +0530)]
arm64: dts: qcom: pm8350c: Add base dts file

Add base DTS file for PM8350C along with GPIO node

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210312052737.3558801-6-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: pm8350b: Add base dts file
Vinod Koul [Fri, 12 Mar 2021 05:27:33 +0000 (10:57 +0530)]
arm64: dts: qcom: pm8350b: Add base dts file

Add base DTS file for PM8350B along with GPIO node

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210312052737.3558801-5-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: pm8350: Add base dts file
Vinod Koul [Fri, 12 Mar 2021 05:27:32 +0000 (10:57 +0530)]
arm64: dts: qcom: pm8350: Add base dts file

Add base DTS file for PM8350 along with GPIO node

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210312052737.3558801-4-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: pmk8350: Add base dts file
Vinod Koul [Fri, 12 Mar 2021 05:27:31 +0000 (10:57 +0530)]
arm64: dts: qcom: pmk8350: Add base dts file

Add base DTS file for PMK8350 along with GPIO node

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210312052737.3558801-3-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8350: Add spmi node
Vinod Koul [Fri, 12 Mar 2021 05:27:30 +0000 (10:57 +0530)]
arm64: dts: qcom: sm8350: Add spmi node

Add SPMI node found in SM8350 SoC

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210312052737.3558801-2-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: db845c: fix correct powerdown pin for WSA881x
Srinivas Kandagatla [Tue, 9 Mar 2021 10:20:25 +0000 (10:20 +0000)]
arm64: dts: qcom: db845c: fix correct powerdown pin for WSA881x

WSA881x powerdown pin is connected to GPIO1 not gpio2, so correct this.
This was working so far due to a shift bug in gpio driver, however
once that is fixed this will stop working, so fix this!

Fixes: 89a32a4e769cc ("arm64: dts: qcom: db845c: add analog audio support")
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20210309102025.28405-1-srinivas.kandagatla@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agodt-bindings: arm: qcom: Add SM8350 HDK
Bjorn Andersson [Wed, 10 Mar 2021 03:57:10 +0000 (19:57 -0800)]
dt-bindings: arm: qcom: Add SM8350 HDK

Document the SM8350 Hardware Development Kit (HDK).

Reviewed-by: Vinod Koul <vkoul@kernel.org>
Reported-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20210310035710.2816699-1-bjorn.andersson@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sc7180: Drop duplicate dp_hot_plug_det node in trogdor
Stephen Boyd [Thu, 11 Mar 2021 21:12:41 +0000 (13:12 -0800)]
arm64: dts: qcom: sc7180: Drop duplicate dp_hot_plug_det node in trogdor

This moved from being trogdor specific to being part of the general
sc7180.dtsi SoC file in commit 681a607ad21a ("arm64: dts: qcom:
sc7180: Add DisplayPort HPD pin dt node"). Then we dropped the pinconf
from the general sc7180.dtsi file in commit 8d079bf20410 ("arm64: dts:
qcom: sc7180: Drop pinconf on dp_hot_plug_det") and added it back to
the trogdor dts file in commit f772081f4883 ("arm64: dts: qcom:
sc7180: Add "dp_hot_plug_det" pinconf for trogdor").

As part of this we managed to forget to drop the old copy in the
trogdor dts. Let's do it now.

Signed-off-by: Stephen Boyd <swboyd@chromium.org>
[dianders: updated desc]
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Link: https://lore.kernel.org/r/20210311131008.1.I85fc8146c0ee47e261faa0c54dd621467b81952d@changeid
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8350: fix number of pins in 'gpio-ranges'
Shawn Guo [Wed, 3 Mar 2021 03:31:06 +0000 (11:31 +0800)]
arm64: dts: qcom: sm8350: fix number of pins in 'gpio-ranges'

The last cell of 'gpio-ranges' should be number of GPIO pins, and in
case of qcom platform it should match msm_pinctrl_soc_data.ngpio rather
than msm_pinctrl_soc_data.ngpio - 1.

This fixes the problem that when the last GPIO pin in the range is
configured with the following call sequence, it always fails with
-EPROBE_DEFER.

    pinctrl_gpio_set_config()
        pinctrl_get_device_gpio_range()
            pinctrl_match_gpio_range()

Fixes: b7e8f433a673 ("arm64: dts: qcom: Add basic devicetree support for SM8350 SoC")
Cc: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Link: https://lore.kernel.org/r/20210303033106.549-5-shawn.guo@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8250: fix number of pins in 'gpio-ranges'
Shawn Guo [Wed, 3 Mar 2021 03:31:05 +0000 (11:31 +0800)]
arm64: dts: qcom: sm8250: fix number of pins in 'gpio-ranges'

The last cell of 'gpio-ranges' should be number of GPIO pins, and in
case of qcom platform it should match msm_pinctrl_soc_data.ngpio rather
than msm_pinctrl_soc_data.ngpio - 1.

This fixes the problem that when the last GPIO pin in the range is
configured with the following call sequence, it always fails with
-EPROBE_DEFER.

    pinctrl_gpio_set_config()
        pinctrl_get_device_gpio_range()
            pinctrl_match_gpio_range()

Fixes: 16951b490b20 ("arm64: dts: qcom: sm8250: Add TLMM pinctrl node")
Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Link: https://lore.kernel.org/r/20210303033106.549-4-shawn.guo@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8150: fix number of pins in 'gpio-ranges'
Shawn Guo [Wed, 3 Mar 2021 03:31:04 +0000 (11:31 +0800)]
arm64: dts: qcom: sm8150: fix number of pins in 'gpio-ranges'

The last cell of 'gpio-ranges' should be number of GPIO pins, and in
case of qcom platform it should match msm_pinctrl_soc_data.ngpio rather
than msm_pinctrl_soc_data.ngpio - 1.

This fixes the problem that when the last GPIO pin in the range is
configured with the following call sequence, it always fails with
-EPROBE_DEFER.

    pinctrl_gpio_set_config()
        pinctrl_get_device_gpio_range()
            pinctrl_match_gpio_range()

Fixes: e13c6d144fa0 ("arm64: dts: qcom: sm8150: Add base dts file")
Cc: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Link: https://lore.kernel.org/r/20210303033106.549-3-shawn.guo@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sdm845: fix number of pins in 'gpio-ranges'
Shawn Guo [Wed, 3 Mar 2021 03:31:03 +0000 (11:31 +0800)]
arm64: dts: qcom: sdm845: fix number of pins in 'gpio-ranges'

The last cell of 'gpio-ranges' should be number of GPIO pins, and in
case of qcom platform it should match msm_pinctrl_soc_data.ngpio rather
than msm_pinctrl_soc_data.ngpio - 1.

This fixes the problem that when the last GPIO pin in the range is
configured with the following call sequence, it always fails with
-EPROBE_DEFER.

    pinctrl_gpio_set_config()
        pinctrl_get_device_gpio_range()
            pinctrl_match_gpio_range()

Fixes: bc2c806293c6 ("arm64: dts: qcom: sdm845: Add gpio-ranges to TLMM node")
Cc: Evan Green <evgreen@chromium.org>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Link: https://lore.kernel.org/r/20210303033106.549-2-shawn.guo@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sc7280: Add rpmh power-domain node
Rajendra Nayak [Thu, 11 Mar 2021 11:26:01 +0000 (16:56 +0530)]
arm64: dts: qcom: sc7280: Add rpmh power-domain node

Add the DT node for the rpmhpd power controller on SC7280 SoCs.

Signed-off-by: Rajendra Nayak <rnayak@codeaurora.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Link: https://lore.kernel.org/r/1615461961-17716-15-git-send-email-rnayak@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sc7280: Add cpuidle states
Maulik Shah [Thu, 11 Mar 2021 11:26:00 +0000 (16:56 +0530)]
arm64: dts: qcom: sc7280: Add cpuidle states

Add cpuidle states for little and big cpus.
The latency values are preliminary placeholders and will be updated
once testing provides the real numbers.

Signed-off-by: Maulik Shah <mkshah@codeaurora.org>
Signed-off-by: Rajendra Nayak <rnayak@codeaurora.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Link: https://lore.kernel.org/r/1615461961-17716-14-git-send-email-rnayak@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sc7280: Add SPMI PMIC arbiter device for SC7280
satya priya [Thu, 11 Mar 2021 11:25:59 +0000 (16:55 +0530)]
arm64: dts: qcom: sc7280: Add SPMI PMIC arbiter device for SC7280

Add SPMI PMIC arbiter device to communicate with PMICs
attached to SPMI bus.

Signed-off-by: satya priya <skakit@codeaurora.org>
Signed-off-by: Rajendra Nayak <rnayak@codeaurora.org>
Link: https://lore.kernel.org/r/1615461961-17716-13-git-send-email-rnayak@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sc7280: Add APSS watchdog node
Sai Prakash Ranjan [Thu, 11 Mar 2021 11:25:58 +0000 (16:55 +0530)]
arm64: dts: qcom: sc7280: Add APSS watchdog node

Add APSS (Application Processor Subsystem) watchdog
DT node for SC7280 SoC.

Signed-off-by: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
Signed-off-by: Rajendra Nayak <rnayak@codeaurora.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Link: https://lore.kernel.org/r/1615461961-17716-12-git-send-email-rnayak@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sc7280: Add reserved memory for fw
Maulik Shah [Thu, 11 Mar 2021 11:25:56 +0000 (16:55 +0530)]
arm64: dts: qcom: sc7280: Add reserved memory for fw

Add fw reserved memory area for CPUCP (CPUSS control
processor) and AOP (Always ON processor)

Signed-off-by: Maulik Shah <mkshah@codeaurora.org>
Signed-off-by: Rajendra Nayak <rnayak@codeaurora.org>
Link: https://lore.kernel.org/r/1615461961-17716-10-git-send-email-rnayak@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sc7280: Add device node for APPS SMMU
Sai Prakash Ranjan [Thu, 11 Mar 2021 11:25:55 +0000 (16:55 +0530)]
arm64: dts: qcom: sc7280: Add device node for APPS SMMU

Adding device node for APPS SMMU available on SC7280 chipset.
This is shared among the multiple client devices such as
display, video, usb, mmc and others.

Signed-off-by: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
Signed-off-by: Rajendra Nayak <rnayak@codeaurora.org>
Link: https://lore.kernel.org/r/1615461961-17716-9-git-send-email-rnayak@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: SC7280: Add rpmhcc clock controller node
Rajendra Nayak [Thu, 11 Mar 2021 11:25:53 +0000 (16:55 +0530)]
arm64: dts: qcom: SC7280: Add rpmhcc clock controller node

Add rpmhcc clock controller node for SC7280. Also add references to
rpmhcc clocks in gcc.

Signed-off-by: Taniya Das <tdas@codeaurora.org>
Signed-off-by: Rajendra Nayak <rnayak@codeaurora.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Link: https://lore.kernel.org/r/1615461961-17716-7-git-send-email-rnayak@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sc7280: Add RSC and PDC devices
Maulik Shah [Thu, 11 Mar 2021 11:25:52 +0000 (16:55 +0530)]
arm64: dts: qcom: sc7280: Add RSC and PDC devices

Add PDC interrupt controller along with apps RSC device.
Also add reserved memory for command_db.

Signed-off-by: Maulik Shah <mkshah@codeaurora.org>
Signed-off-by: Rajendra Nayak <rnayak@codeaurora.org>
Link: https://lore.kernel.org/r/1615461961-17716-6-git-send-email-rnayak@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sc7280: Add basic dts/dtsi files for sc7280 soc
Rajendra Nayak [Thu, 11 Mar 2021 11:25:50 +0000 (16:55 +0530)]
arm64: dts: qcom: sc7280: Add basic dts/dtsi files for sc7280 soc

Add initial device tree support for the sc7280 SoC and the IDP
boards based on this SoC

Signed-off-by: Rajendra Nayak <rnayak@codeaurora.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Link: https://lore.kernel.org/r/1615461961-17716-4-git-send-email-rnayak@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agodt-bindings: arm: qcom: Document sc7280 SoC and board
Rajendra Nayak [Thu, 11 Mar 2021 11:25:48 +0000 (16:55 +0530)]
dt-bindings: arm: qcom: Document sc7280 SoC and board

Document the sc7280 SoC and the IDP board bindings

Signed-off-by: Rajendra Nayak <rnayak@codeaurora.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Acked-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/1615461961-17716-2-git-send-email-rnayak@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: Introduce SM8350 HDK
Bjorn Andersson [Mon, 8 Mar 2021 18:21:13 +0000 (10:21 -0800)]
arm64: dts: qcom: Introduce SM8350 HDK

Add initial DTS for the Snapdragon 888 Mobile Hardware Development Kit,
aka SM8350 HDK. This initial version describes debug UART, UFS storage,
the three USB connectors and remoteprocs.

Reviewed-by: Konrad Dybcio <konrad.dybcio@somainline.org>
Reviewed-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20210308182113.1284966-1-bjorn.andersson@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agodt-bindings: arm: qcom: Document sony boards for apq8094
Vinod Koul [Mon, 8 Mar 2021 06:08:13 +0000 (11:38 +0530)]
dt-bindings: arm: qcom: Document sony boards for apq8094

Document the various sony boards for apq8094. These are used in various
sony dts files but not documented

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210308060826.3074234-6-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: msm8994: don't use empty memory node
Vinod Koul [Mon, 8 Mar 2021 06:08:12 +0000 (11:38 +0530)]
arm64: dts: qcom: msm8994: don't use empty memory node

We expect bootloader to full memory details but passing empty values
gives warning, so add a default value

arch/arm64/boot/dts/qcom/apq8094-sony-xperia-kitakami-karin_windy.dt.yaml: /: memory:
False schema does not allow {'device_type': ['memory'], 'reg': [[0, 0, 0, 0]]}

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210308060826.3074234-5-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agodt-bindings: arm: qcom: Document ipq6018-cp01 board
Vinod Koul [Mon, 8 Mar 2021 06:08:11 +0000 (11:38 +0530)]
dt-bindings: arm: qcom: Document ipq6018-cp01 board

Document the ipq6018-cp01 board. It was missing leading to warning:

arch/arm64/boot/dts/qcom/ipq6018-cp01-c1.dt.yaml: /: compatible: 'oneOf' conditional failed, one must be fixed:
        ['qcom,ipq6018-cp01', 'qcom,ipq6018'] is too short
        ['qcom,ipq6018-cp01', 'qcom,ipq6018'] is too long
        Additional items are not allowed ('qcom,ipq6018' was unexpected)

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210308060826.3074234-4-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: msm8916: don't use empty memory node
Vinod Koul [Mon, 8 Mar 2021 06:08:10 +0000 (11:38 +0530)]
arm64: dts: qcom: msm8916: don't use empty memory node

We expect bootloader to full memory details but passing empty values
gives warning, so add a default value

arch/arm64/boot/dts/qcom/apq8016-sbc.dt.yaml: /: memory:
False schema does not allow {'device_type': ['memory'], 'reg': [[0, 0, 0, 0]]}

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210308060826.3074234-3-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: apq8016-sbc: drop qcom,sbc
Vinod Koul [Mon, 8 Mar 2021 06:08:09 +0000 (11:38 +0530)]
arm64: dts: qcom: apq8016-sbc: drop qcom,sbc

apq8016-sbc is one of the compaitibles for this board, but is not
documented, so drop it. This fixes these two warns:

arch/arm64/boot/dts/qcom/apq8016-sbc.dt.yaml: /: compatible: ['qcom,apq8016-sbc', 'qcom,apq8016', 'qcom,sbc']
is not valid under any of the given schemas (Possible causes of the failure):

arch/arm64/boot/dts/qcom/apq8016-sbc.dt.yaml: /: compatible: ['qcom,apq8016-sbc', 'qcom,apq8016', 'qcom,sbc'] is too long
arch/arm64/boot/dts/qcom/apq8016-sbc.dt.yaml: /: compatible:0: 'qcom,apq8016-sbc'
is not one of ['qcom,apq8064-cm-qs600', 'qcom,apq8064-ifc6410']
arch/arm64/boot/dts/qcom/apq8016-sbc.dt.yaml: /: compatible:0: 'qcom,apq8016-sbc'
is not one of ['qcom,apq8074-dragonboard']

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210308060826.3074234-2-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sc7180: Avoid glitching SPI CS at bootup on trogdor
Douglas Anderson [Thu, 18 Feb 2021 22:55:09 +0000 (14:55 -0800)]
arm64: dts: qcom: sc7180: Avoid glitching SPI CS at bootup on trogdor

At boot time the following happens:
1. Device core gets ready to probe our SPI driver.
2. Device core applies SPI controller's "default" pinctrl.
3. Device core calls the SPI driver's probe() function which will
   eventually setup the chip select GPIO as "unasserted".

Thinking about the above, we can find:
a) For SPI devices that the BIOS inits (Cr50 and EC), the BIOS would
   have had them configured as "GENI" pins and not as "GPIO" pins.
b) It turns out that our BIOS also happens to init these pins as
   "output" (even though it doesn't need to since they're not muxed as
   GPIO) but leaves them at the default state of "low".
c) As soon as we apply the "default" chip select it'll switch the
   function to GPIO and stop driving the chip select high (which is
   how "GENI" was driving it) and start driving it low.
d) As of commit 9378f46040be ("UPSTREAM: spi: spi-geni-qcom: Use the
   new method of gpio CS control"), when the SPI core inits things it
   inits the GPIO to be "deasserted".  Prior to that commit the GPIO
   was left untouched until first use.
e) When the first transaction happens we'll assert the chip select and
   then deassert it after done.

So before the commit to change us to use gpio descriptors we used to
have a _really long_ assertion of chip select before our first
transaction (because it got pulled down and then the first "assert"
was a no-op).  That wasn't great but (apparently) didn't cause any
real harm.

After the commit to change us to use gpio descriptors we end up
glitching the chip select line during probe.  It would go low and then
high with no data transferred.  The other side ought to be robust
against this, but it certainly could cause some confusion.  It's known
to at least cause an error message on the EC console and it's believed
that, under certain timing conditions, it could be getting the EC into
a confused state causing the EC driver to fail to probe.

Let's fix things to avoid the glitch.  We'll add an extra pinctrl
entry that sets the value of the pin to output high (CS deasserted)
before doing anything else.  We'll do this in its own pinctrl node
that comes before the normal pinctrl entries to ensure that the order
is correct and that this gets applied before the mux change.

This change is in the trogdor board file rather than in the SoC dtsi
file because chip select polarity can be different depending on what's
hooked up and it doesn't feel worth it to spam the SoC dtsi file with
both options.  The board file would need to pick the right one anyway.

Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Fixes: cfbb97fde694 ("arm64: dts: qcom: Switch sc7180-trogdor to control SPI CS via GPIO")
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Link: https://lore.kernel.org/r/20210218145456.1.I1da01a075dd86e005152f993b2d5d82dd9686238@changeid
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sc7180: Use pdc interrupts for USB instead of GIC interrupts
Sandeep Maheswaram [Wed, 8 Jul 2020 19:10:17 +0000 (00:40 +0530)]
arm64: dts: qcom: sc7180: Use pdc interrupts for USB instead of GIC interrupts

Using pdc interrupts for USB instead of GIC interrupts to
support wake up in case xo shutdown.

Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Signed-off-by: Sandeep Maheswaram <sanm@codeaurora.org>
Link: https://lore.kernel.org/r/1594235417-23066-4-git-send-email-sanm@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: Add sc7180-trogdor-coachz skus
Douglas Anderson [Mon, 1 Mar 2021 21:34:37 +0000 (13:34 -0800)]
arm64: dts: qcom: Add sc7180-trogdor-coachz skus

This is a trogdor variant.  This is mostly a grab from the downstream
tree with notable exceptions:
- I skip -rev0.  This was a super early build and there's no advantage
  of long term support.
- I remove sound node since sound hasn't landed upstream yet.

Cc: Gwendal Grignou <gwendal@chromium.org>
Cc: Matthias Kaehlcke <mka@chromium.org>
Cc: Stephen Boyd <swboyd@chromium.org>
Cc: Tzung-Bi Shih <tzungbi@chromium.org>
Cc: Judy Hsiao <judyhsiao@chromium.org>
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Link: https://lore.kernel.org/r/20210301133318.v2.13.I3d1f5f8a3bf31e8014229df0d4cfdff20e9cc90f@changeid
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: Add sc7180-trogdor-pompom skus
Douglas Anderson [Mon, 1 Mar 2021 21:34:36 +0000 (13:34 -0800)]
arm64: dts: qcom: Add sc7180-trogdor-pompom skus

This is a trogdor variant.  This is mostly a grab from the downstream
tree with notable exceptions:
- I skip -rev0.  This was a super early build and there's no advantage
  of long term support.
- In -rev1 I translate the handling of the USB hub like is done for
  similar boards.  See the difference between the downstream and
  upstream 'sc7180-trogdor-lazor-r0.dts' for an example.  This will
  need to be resolved when proper support for the USB hub is figured
  out upstream.
- I remove sound node since sound hasn't landed upstream yet.
- In incorporate the pending <https://crrev.com/c/2719075> for the
  keyboard.

Cc: Philip Chen <philipchen@google.com>
Cc: Matthias Kaehlcke <mka@chromium.org>
Cc: Stephen Boyd <swboyd@chromium.org>
Cc: Tzung-Bi Shih <tzungbi@chromium.org>
Cc: Judy Hsiao <judyhsiao@chromium.org>
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Link: https://lore.kernel.org/r/20210301133318.v2.12.If93a01b30d20dccacbad4be8ddc519dc20a51a1e@changeid
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: Add sc7180-lazor-limozeen skus
Douglas Anderson [Mon, 1 Mar 2021 21:34:35 +0000 (13:34 -0800)]
arm64: dts: qcom: Add sc7180-lazor-limozeen skus

This is a SKU variant of lazor.  Add it.  This squashes the downstream
patches to support this hardware.

NOTES:
- The non-touch SKU actually has "innolux,n116bca-ea1" but that driver
  is still pending in simple-panel.  The bindings have been Acked
  though [1].  Things work well enough with the "innolux,n116bge"
  timings for now, though.
- The wonky special dts just for "-rev4" arguably doesn't need to go
  upstream since they weren't widely distributed, but since a few
  people have them we might as well.  If it ever causes problems we
  can delete it.

[1] https://lore.kernel.org/r/20210115144345.v2.4.I6889e21811df6adaff5c5b8a8c80fda0669ab3a5@changeid

Cc: Stephen Boyd <swboyd@chromium.org>
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Link: https://lore.kernel.org/r/20210301133318.v2.11.I556326b24441e22c8c429ce383cc157c7aaef44b@changeid
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sc7180: Set up lazor r3+ as sc7180-lite SKUs
Matthias Kaehlcke [Mon, 1 Mar 2021 21:34:34 +0000 (13:34 -0800)]
arm64: dts: qcom: sc7180: Set up lazor r3+ as sc7180-lite SKUs

Lazor rev3 and later use the 'lite' version of the SC7180 SoC.

Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Cc: Stephen Boyd <swboyd@chromium.org>
Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
[dianders: Adjust commit message which referred to downstream history]
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Link: https://lore.kernel.org/r/20210301133318.v2.10.Ia3795e192f5bbe17e6714e45fcb0bf5acdbd4c17@changeid
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sc7180: add GO_LAZOR variant property for lazor
Abhishek Kumar [Mon, 1 Mar 2021 21:34:33 +0000 (13:34 -0800)]
arm64: dts: qcom: sc7180: add GO_LAZOR variant property for lazor

For trogdor, in the latest board-2.bin file, new BDF with variant
name GO_LAZOR has been introduced, so we need this property set, for
GO_LAZOR BDF to be picked.

Cc: Philip Chen <philipchen@chromium.org>
Signed-off-by: Abhishek Kumar <kuabhs@chromium.org>
[dianders: adjusted subject line and sort order]
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Link: https://lore.kernel.org/r/20210301133318.v2.9.I4a38fe64dd79c54af80d7e4ef5940f8cf4f86e75@changeid
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sc7180: Remove clock for bluetooth on Trogdor
Venkata Lakshmi Narayana Gubba [Mon, 1 Mar 2021 21:34:32 +0000 (13:34 -0800)]
arm64: dts: qcom: sc7180: Remove clock for bluetooth on Trogdor

Removed voting for RPMH_RF_CLK2 which is not required as it is
getting managed by BT SoC through SW_CTRL line.

Cc: Matthias Kaehlcke <mka@chromium.org>
Signed-off-by: Venkata Lakshmi Narayana Gubba <gubbaven@codeaurora.org>
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Link: https://lore.kernel.org/r/20210301133318.v2.8.I80c268f163e6d49a70af1238be442b5de400c579@changeid
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sc7180-trogdor: Remove fp control pins in prep for coachz
Alexandru M Stan [Mon, 1 Mar 2021 21:34:31 +0000 (13:34 -0800)]
arm64: dts: qcom: sc7180-trogdor: Remove fp control pins in prep for coachz

Removed the pinctrl and pin{mux,conf} for the control pins because:
1. The only need for them is for userspace control via flash_fp_mcu
2. cros-ec doesn't know what to do with them, and even if it did,
   it would interfere with flash_fp_mcu at the most inopportune times

Since we're not using hogs, we rely on AP firmware to set all the
control pins correctly.

Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Cc: Stephen Boyd <swboyd@chromium.org>
Cc: Craig Hesling <hesling@chromium.org>
Signed-off-by: Alexandru M Stan <amstan@chromium.org>
[dianders: adjusted since coachz isn't upstream yet]
Reviewed-by; Matthias Kaehlcke <mka@chromium.org>
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Link: https://lore.kernel.org/r/20210301133318.v2.7.Ifd7b86f826b18410eada75758a7bca1eebfa336d@changeid
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: Disable camera clk on sc7180-trogdor devices by default
Stephen Boyd [Mon, 1 Mar 2021 21:34:30 +0000 (13:34 -0800)]
arm64: dts: qcom: Disable camera clk on sc7180-trogdor devices by default

We only want to use this clk driver on CoachZ devices. Disable it for
all other Trogdor boards.  NOTE: CoachZ devices aren't yet supported
upstream so until it is this is just disabled for all trogdor.

Cc: Tomasz Figa <tfiga@chromium.org>
Signed-off-by: Stephen Boyd <swboyd@chromium.org>
[dianders:adjusted since no coachz upstream yet]
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Link: https://lore.kernel.org/r/20210301133318.v2.6.I22522b0c9db505ee43ed08e8d5d9e8fe632e7447@changeid
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: trogdor: Only wakeup from pen eject
Stephen Boyd [Mon, 1 Mar 2021 21:34:29 +0000 (13:34 -0800)]
arm64: dts: qcom: trogdor: Only wakeup from pen eject

Configure the pen to be a wakeup source only when the pen is ejected
instead of both when the pen is ejected and inserted. This corresponds
to wake source requirements.

Signed-off-by: Stephen Boyd <swboyd@chromium.org>
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Link: https://lore.kernel.org/r/20210301133318.v2.5.Ib9672bfbe639c96c85408d6f0217a2609eb0b70f@changeid
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: Unify the sc7180-trogdor panel nodes
Douglas Anderson [Mon, 1 Mar 2021 21:34:28 +0000 (13:34 -0800)]
arm64: dts: qcom: Unify the sc7180-trogdor panel nodes

Let's avoid a bit of duplication by pushing this up to the trogdor.dtsi
file.

Suggested-by: Stephen Boyd <swboyd@chromium.org>
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Link: https://lore.kernel.org/r/20210301133318.v2.4.I1483fac4c5ae4b2d7660290ff85d69945292618f@changeid
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: Prep sc7180-trogdor trackpad IRQ for new boards
Douglas Anderson [Mon, 1 Mar 2021 21:34:27 +0000 (13:34 -0800)]
arm64: dts: qcom: Prep sc7180-trogdor trackpad IRQ for new boards

The trackpad interrupt got renamed and also moved to a new GPIO on
newer boards.  Let's do the move in the "trogdor.dtsi" file and then
undo it in the two old boards.

NOTE: since none of the new boards have device trees yet, this change
looks silly on its own but it will make sense after more boards are
supported.

Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Link: https://lore.kernel.org/r/20210301133318.v2.3.Iddf6dc8102aa4fbc3847936226fc7bf2e2cd315c@changeid
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: Move sc7180 MI2S config to board files and make pulldown
Douglas Anderson [Mon, 1 Mar 2021 21:34:26 +0000 (13:34 -0800)]
arm64: dts: qcom: Move sc7180 MI2S config to board files and make pulldown

In general pinconf belongs in board files, not SoC files.  Move it to
the only current user (trogdor).  Also adjust the drive strengths and
pulls.

Cc: V Sujith Kumar Reddy <vsujithk@codeaurora.org>
Cc: Srinivasa Rao Mandadapu <srivasam@codeaurora.org>
Cc: Tzung-Bi Shih <tzungbi@chromium.org>
Cc: Judy Hsiao <judyhsiao@chromium.org>
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Link: https://lore.kernel.org/r/20210301133318.v2.2.Id27e7e6f90c29bf623fa4880e18a14ba1dffd2d2@changeid
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sc7180: Update dts for DP phy inside QMP phy
Stephen Boyd [Mon, 1 Mar 2021 21:34:25 +0000 (13:34 -0800)]
arm64: dts: qcom: sc7180: Update dts for DP phy inside QMP phy

Drop the old node and add the new one in its place.

Cc: Stephen Boyd <swboyd@chromium.org>
Cc: Jeykumar Sankaran <jsanka@codeaurora.org>
Cc: Chandan Uddaraju <chandanu@codeaurora.org>
Cc: Vara Reddy <varar@codeaurora.org>
Cc: Tanmay Shah <tanmay@codeaurora.org>
Cc: Rob Clark <robdclark@chromium.org>
Signed-off-by: Stephen Boyd <swboyd@chromium.org>
[dianders: Adjusted due to DP not itself not in upstream dts yet]
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Link: https://lore.kernel.org/r/20210301133318.v2.1.Iad06142ceb8426ce5492737bf3d9162ed0dd2b55@changeid
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8350: Add cpufreq node
Vinod Koul [Tue, 16 Feb 2021 11:17:03 +0000 (16:47 +0530)]
arm64: dts: qcom: sm8350: Add cpufreq node

Add cpufreq node and reference it for the CPUs.

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210216111703.1838663-1-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8350: Use enums for GCC
Vinod Koul [Fri, 12 Feb 2021 11:55:32 +0000 (17:25 +0530)]
arm64: dts: qcom: sm8350: Use enums for GCC

Now that we have GCC define, use the enums instead of numbers in the DTS

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210212115532.1339942-8-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8350-mtp: Enable remoteprocs
Vinod Koul [Fri, 12 Feb 2021 11:55:31 +0000 (17:25 +0530)]
arm64: dts: qcom: sm8350-mtp: Enable remoteprocs

This enabled the four remoteprocs found in SM8350, audio, compute, modem
and sensor for MTP platform and adds firmware for them.

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210212115532.1339942-7-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8350: Add remoteprocs
Vinod Koul [Fri, 12 Feb 2021 11:55:30 +0000 (17:25 +0530)]
arm64: dts: qcom: sm8350: Add remoteprocs

Add remoteproc nodes for the audio, compute and sensor cores, define
glink for each one.

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210212115532.1339942-6-vkoul@kernel.org
[bjorn: Replaced rpmhpd defines with constants, for now]
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8350: Add SMP2P nodes
Vinod Koul [Fri, 12 Feb 2021 11:55:29 +0000 (17:25 +0530)]
arm64: dts: qcom: sm8350: Add SMP2P nodes

SMP2P is used for interrupting and being interrupted about remoteproc
state changes related to the audio, compute, modem and sensor subsystems.

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210212115532.1339942-5-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8350: Add rmtfs node
Vinod Koul [Fri, 12 Feb 2021 11:55:28 +0000 (17:25 +0530)]
arm64: dts: qcom: sm8350: Add rmtfs node

Add the rmtfs as a reserved memory node.

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210212115532.1339942-4-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8350: Add rpmhpd node
Vinod Koul [Fri, 12 Feb 2021 11:55:27 +0000 (17:25 +0530)]
arm64: dts: qcom: sm8350: Add rpmhpd node

This adds RPMH power domain found in SM8350 SoC

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210212115532.1339942-3-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8350: fix typo
Vinod Koul [Fri, 12 Feb 2021 11:55:26 +0000 (17:25 +0530)]
arm64: dts: qcom: sm8350: fix typo

Fix the typo s/Limaited/Limited

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210212115532.1339942-2-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8350-mtp: add regulator names
Vinod Koul [Thu, 4 Feb 2021 17:09:07 +0000 (22:39 +0530)]
arm64: dts: qcom: sm8350-mtp: add regulator names

Add the property "regulator-names" to the regulators as given in
schematics so that it is easier to understand the regulators being used

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210204170907.63545-7-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8350-mtp: enable UFS nodes
Vinod Koul [Thu, 4 Feb 2021 17:09:06 +0000 (22:39 +0530)]
arm64: dts: qcom: sm8350-mtp: enable UFS nodes

Enabled the UFS node found in SM8350-MTP platform, also add the
regulators associated with UFS HC and UFS phy to these nodes.

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210204170907.63545-6-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8350: Add UFS nodes
Vinod Koul [Thu, 4 Feb 2021 17:09:05 +0000 (22:39 +0530)]
arm64: dts: qcom: sm8350: Add UFS nodes

This adds UFS HC and UFS phy nodes to the SM8350 DTS

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210204170907.63545-5-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8350-mtp: enable USB nodes
Jack Pham [Thu, 4 Feb 2021 17:09:04 +0000 (22:39 +0530)]
arm64: dts: qcom: sm8350-mtp: enable USB nodes

Enable both USB controllers and associated hsphy and qmp phy nodes
on sm8350 MTP. Designate the usb_1 instance as peripheral-mode only
until proper PMIC based Type-C dual-role handling is supported.

TODO: the second USB controller is exposed to a microAB port. Dual-
role can be supported for this by adding the "usb-role-switch"
property as well as defining a USB connector node with a
"gpio-usb-b-connector" compatible. However, this requires GPIO
support from PM8350 which is still missing.

Signed-off-by: Jack Pham <jackp@codeaurora.org>
Link: https://lore.kernel.org/r/20210116013802.1609-3-jackp@codeaurora.org
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210204170907.63545-4-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8350: add USB and PHY device nodes
Jack Pham [Thu, 4 Feb 2021 17:09:03 +0000 (22:39 +0530)]
arm64: dts: qcom: sm8350: add USB and PHY device nodes

Add device nodes for the two instances each of USB3 controllers,
QMP SS PHYs and SNPS HS PHYs.

Signed-off-by: Jack Pham <jackp@codeaurora.org>
Link: https://lore.kernel.org/r/20210116013802.1609-2-jackp@codeaurora.org
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210204170907.63545-3-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8350: Add apss_smmu node
Vinod Koul [Thu, 4 Feb 2021 17:09:02 +0000 (22:39 +0530)]
arm64: dts: qcom: sm8350: Add apss_smmu node

This adds apss_smmu node to SM8350 DTS

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Link: https://lore.kernel.org/r/20210204170907.63545-2-vkoul@kernel.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8250: Fix timer interrupt to specify EL2 physical timer
Sai Prakash Ranjan [Tue, 16 Feb 2021 09:47:49 +0000 (15:17 +0530)]
arm64: dts: qcom: sm8250: Fix timer interrupt to specify EL2 physical timer

ARM architected timer interrupts DT property specifies EL2/HYP
physical interrupt and not EL2/HYP virtual interrupt for the 4th
interrupt property. As per interrupt documentation for SM8250 SoC,
the EL2/HYP physical timer interrupt is 10 and EL2/HYP virtual timer
interrupt is 12, so fix the 4th timer interrupt to be EL2 physical
timer interrupt (10 in this case).

Fixes: 60378f1a171e ("arm64: dts: qcom: sm8250: Add sm8250 dts file")
Signed-off-by: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
Link: https://lore.kernel.org/r/744e58f725d279eb2b049a7da42b0f09189f4054.1613468366.git.saiprakash.ranjan@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8350: Fix level triggered PMU interrupt polarity
Sai Prakash Ranjan [Tue, 16 Feb 2021 09:47:48 +0000 (15:17 +0530)]
arm64: dts: qcom: sm8350: Fix level triggered PMU interrupt polarity

As per interrupt documentation for SM8350 SoC, the polarity
for level triggered PMU interrupt is low, fix this.

Fixes: b7e8f433a673 ("arm64: dts: qcom: Add basic devicetree support for SM8350 SoC")
Signed-off-by: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
Link: https://lore.kernel.org/r/ca57409198477f7815e32a6a7467dcdc9b93dc4f.1613468366.git.saiprakash.ranjan@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8250: Fix level triggered PMU interrupt polarity
Sai Prakash Ranjan [Tue, 16 Feb 2021 09:47:47 +0000 (15:17 +0530)]
arm64: dts: qcom: sm8250: Fix level triggered PMU interrupt polarity

As per interrupt documentation for SM8250 SoC, the polarity
for level triggered PMU interrupt is low, fix this.

Fixes: 60378f1a171e ("arm64: dts: qcom: sm8250: Add sm8250 dts file")
Signed-off-by: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
Link: https://lore.kernel.org/r/96680a1c6488955c9eef7973c28026462b2a4ec0.1613468366.git.saiprakash.ranjan@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8350: Rename the qmp node to power-controller
Sai Prakash Ranjan [Tue, 2 Mar 2021 07:28:04 +0000 (12:58 +0530)]
arm64: dts: qcom: sm8350: Rename the qmp node to power-controller

Use the generic DT node name "power-controller" for AOSS message ram
instead of the protocol name QMP(Qualcomm Messaging Protocol) since
it is used for power management requests.

Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Suggested-by: Stephen Boyd <swboyd@chromium.org>
Signed-off-by: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
Link: https://lore.kernel.org/r/15005f1441594670adcd60a300c88e41d79cad27.1614669585.git.saiprakash.ranjan@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
3 years agoarm64: dts: qcom: sm8250: Rename the qmp node to power-controller
Sai Prakash Ranjan [Tue, 2 Mar 2021 07:28:03 +0000 (12:58 +0530)]
arm64: dts: qcom: sm8250: Rename the qmp node to power-controller

Use the generic DT node name "power-controller" for AOSS message ram
instead of the protocol name QMP(Qualcomm Messaging Protocol) since
it is used for power management requests.

Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Suggested-by: Stephen Boyd <swboyd@chromium.org>
Signed-off-by: Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
Link: https://lore.kernel.org/r/044fe2e590e166060de65f074df6874ec3a79531.1614669585.git.saiprakash.ranjan@codeaurora.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>