Commit Graph

237 Commits

Author SHA1 Message Date
Joonwoo Park
4807c71cc6 arm64: dts: Add msm8998 SoC and MTP board support
Add initial device tree support for the Qualcomm MSM8998 SoC and
MTP8998 evaluation board.

Signed-off-by: Joonwoo Park <joonwoop@codeaurora.org>
Signed-off-by: Imran Khan <kimran@codeaurora.org>
Signed-off-by: Rajendra Nayak <rnayak@codeaurora.org>
[bjorn: Restructured, removed its node and moved to SPDX headers]
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-09-13 13:45:48 -05:00
Matthias Kaehlcke
43fb443168 arm64: dts: qcom: pm8998: Add adc node
This adds the adc node to pm8998 based on the examples in the
bindings. It also fixes the order of the included headers.

Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-09-13 13:44:39 -05:00
Vinod Koul
5817e887fc arm64: dts: qcom: apq8096-db820c: Add resin node
Resin is board specific, so add the resin node in apq8096-db820c dtsi

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-09-13 13:43:05 -05:00
Vinod Koul
caf0caee50 arm64: dts: qcom: apq8016-sbc: Add resin node
Resin is board specific so add the resin node in apq8016-sbc dtsi

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-09-13 13:43:03 -05:00
Vinod Koul
2f74b3db92 arm64: dts: qcom: pm8994: Add PON node
Add PON and pwrkey as child nodes for PON driver.

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-09-13 13:42:59 -05:00
Vinod Koul
ad5fe78705 arm64: dts: qcom: pm8916: Add PON node
Add PON and pwrkey as child nodes for PON device. Also
add additional properties for pwrkey i.e., linux,code

Signed-off-by: Vinod Koul <vkoul@kernel.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-09-13 13:42:56 -05:00
Olof Johansson
afd3e3dad6 Qualcomm ARM64 Updates for v4.19 - Part 2
* Add thermal nodes for MSM8996 and SDM845
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJbY3lJAAoJEFKiBbHx2RXVttEP/jHngIc9DSOi6r1hXvjNgaTM
 CdvxETAaKlDcFb4H4vwTVbHONor4GHK8UnusPodI3SPG62pbEr2Jad9Z/NpuW3XP
 qAvgyPAMPKDPfHAYdp3lGPKb7yc6BBtL5sSTgl/rbsIOFrSeD6BxKRWdcwRIvwW5
 d5VU/JyyBX0Kb0cIaasmUWP5crYXzFsgV0SggQiekgDzfO5cK8pEVwKc5GbIevDN
 mjXf8u5i58xJSabSrXCltKj13/RMzAzVlQaPl/3L3T5SrGq2AYHGWLOwdVMbeeZg
 8nJ95w0voq+f4euL+l5pPmJFw1AZIEWX4MykVJp3bI8qEQwBKxqscw2zg4ZjAaoT
 BAx363JiOHsCknWuhVd845T2U8yMMgzYExDjeMV21goJCNaPO1fXPZr6IZlcqq3x
 X5NT9J3qFKZdf04EHTO7ov/aUO/QiCcxZl8KO1/Sgjwd/tvDQDkFAlFWFC9nrehR
 IMYnWw/btI6HG6iJAyuGx4gmTvza8dOR2oZLnanHAiECJ+6d8nr863yk/b92uP4d
 qGvIwXiQ4FPDP4ta5biacqQCeyT3MIGRL+cceB4S2/m2IxO9+VMPrGJifkD5aDOp
 jBW+f0G9Fb3mgjqGTAAA/bW7tNkbLX4WtWAlTo1to1BOgKB5zwCCZgf43I8Y8wie
 +Rk13xVxvqrR8idXIFap
 =w/hf
 -----END PGP SIGNATURE-----

Merge tag 'qcom-arm64-for-4.19-2' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux into next/dt

Qualcomm ARM64 Updates for v4.19 - Part 2

* Add thermal nodes for MSM8996 and SDM845

* tag 'qcom-arm64-for-4.19-2' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux: (21 commits)
  arm64: dts: sdm845: Add tsens nodes
  arm64: dts: msm8996: thermal: Initialise via DT and add second controller
  soc: qcom: rmtfs-mem: fix memleak in probe error paths
  soc: qcom: llc-slice: Add missing MODULE_LICENSE()
  drivers: qcom: rpmh: fix unwanted error check for get_tcs_of_type()
  drivers: qcom: rpmh-rsc: fix the loop index check in get_req_from_tcs
  firmware: qcom: scm: add a dummy qcom_scm_assign_mem()
  drivers: qcom: rpmh-rsc: Check cmd_db_ready() to help children
  drivers: qcom: rpmh-rsc: allow active requests from wake TCS
  drivers: qcom: rpmh: add support for batch RPMH request
  drivers: qcom: rpmh: allow requests to be sent asynchronously
  drivers: qcom: rpmh: cache sleep/wake state requests
  drivers: qcom: rpmh-rsc: allow invalidation of sleep/wake TCS
  drivers: qcom: rpmh-rsc: write sleep/wake requests to TCS
  drivers: qcom: rpmh: add RPMH helper functions
  drivers: qcom: rpmh-rsc: log RPMH requests in FTRACE
  dt-bindings: introduce RPMH RSC bindings for Qualcomm SoCs
  drivers: qcom: rpmh-rsc: add RPMH controller for QCOM SoCs
  drivers: soc: Add LLCC driver
  dt-bindings: Documentation for qcom, llcc
  ...
2018-08-04 11:02:54 -07:00
Amit Kucheria
cda676b5c9 arm64: dts: sdm845: Add tsens nodes
SDM845 has two tsens blocks, one with 13 sensors and the other with 8
sensors. It uses version 2 of the TSENS IP, so use the fallback property to
allow more common code.

Signed-off-by: Amit Kucheria <amit.kucheria@linaro.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Tested-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-08-02 16:34:24 -05:00
Amit Kucheria
f35c11b03b arm64: dts: msm8996: thermal: Initialise via DT and add second controller
We also split up the regmap address space into two, for the TM and SROT
registers. This was required to deal with different address offsets for the
TM and SROT registers across different SoC families.

8996 has two TSENS IP blocks, initialise the second one too.

Since tsens-common.c/init_common() currently only registers one address
space, the order is important (TM before SROT). This is OK since the code
doesn't really use the SROT functionality yet.

Signed-off-by: Amit Kucheria <amit.kucheria@linaro.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Tested-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-08-02 16:33:36 -05:00
Olof Johansson
9be6a940ec Qualcomm ARM64 Updates for v4.19
* Add support for PM8005/PM8998 and related nodes
 * Add/fix nodes on SDM845 for I2c, SPI, UART, and RPMH
 * Fix BT LED trigger on DB410c
 * Drop legacy clock names on MSM8916
 * Add gpio line names on DB820c
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJbU6V8AAoJEFKiBbHx2RXVEWQP/iqEdooNqTqHwxTFzVrTjMrH
 k4tWuXjKNIkyoxuMwOVjeDtSoHchITIe5/b3pEQqsP20kjS/ouY0moazjZkOatx/
 fSNsempJkO5j3vVDMJ6veIYZqjBrzvW7FX2PzF8OI3LzSRIssZLJvhtxRZ4KgWWk
 zzPpbRJPww18P+eMjtiei0W1mJnbvs0T7bgJImPkfn9G4GOxGTKx8Wd8zshbH7Bn
 P1x9Ylr7ZV9G6B+t8j+tmJc1QzHAkgH0DMg8K0BeSo/kZ3o6kPGu+Yx1NtHRZo1W
 3qY21AiDu0cQhtxvm31SfDrau0Mk3sysCAF3DL6L1o/REyxphZp/PtNuE0JRxaCE
 RjTjmNBD02sQZHcVeI84JDlv2x+mLIOENQeRTDz0CKDinweWkY7A9bsE8Zf+dxM1
 5BLVvZbKW5jF84lUHsZsxeAwp7q2rqjT5wv+kwmyOfrMGIOz8JKYpjf7W7+wncT3
 +CbRDY40XyeRMF+WkxC9Ir2fJlY4uZu4dXo/5q0PASayRl3fmF7RBPijl2qwTfw/
 /sqhqtEhPCl6LUS4u1tEae2/04SwnTal/1/mfawguz+nXSuM4WuZuic8Ee1nqWTX
 zg3Tw8YOlBOEYggCy9WVzwI+5X3V9QHKQmsL8HjLpP7D1TY/wm5hf1/ph02TlHFG
 69g8nL/ZVh49yi3Nfj70
 =DQjU
 -----END PGP SIGNATURE-----

Merge tag 'qcom-arm64-for-4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux into next/dt

Qualcomm ARM64 Updates for v4.19

* Add support for PM8005/PM8998 and related nodes
* Add/fix nodes on SDM845 for I2c, SPI, UART, and RPMH
* Fix BT LED trigger on DB410c
* Drop legacy clock names on MSM8916
* Add gpio line names on DB820c

* tag 'qcom-arm64-for-4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux:
  arm64: dts: qcom: db410c: Fix Bluetooth LED trigger
  arm64: dts: sdm845: Default qupv3_id_0 as "disabled" like _id_1
  arm64: dts: msm8916: drop legacy suffix for clocks used by MSM DRM driver
  arm64: dts: qcom: db820c: Add gpio-line-names property
  arm64: dts: sdm845: Add rpmh-clk node
  arm64: dts: sdm845: Add rpmh-rsc node
  arm64: dts: qcom: sdm845: Enable debug UART and I2C10 on sdm845-mtp
  arm64: dts: qcom: sdm845: Add I2C, SPI, and UART9 nodes
  arm64: dts: qcom: Add pm8005 and pm8998 support
  arm64: dts: qcom: Add pmu node to sdm845

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-07-25 23:39:59 -07:00
Loic Poulain
e53db01831 arm64: dts: qcom: db410c: Fix Bluetooth LED trigger
Current LED trigger, 'bt', is not known/used by any existing driver.
Fix this by renaming it to 'bluetooth-power' trigger which is
controlled by the Bluetooth subsystem.

Fixes: 9943230c88 ("arm64: dts: qcom: Add apq8016-sbc board LED's related device nodes")
Signed-off-by: Loic Poulain <loic.poulain@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-07-21 15:31:02 -05:00
Douglas Anderson
499ff1165d arm64: dts: sdm845: Default qupv3_id_0 as "disabled" like _id_1
In commit 8e4947ee477d ("arm64: dts: qcom: sdm845: Add I2C, SPI, and
UART9 nodes") I accidentally forgot to add the line:

  status = "disabled";

to qupv3_id_0 to match qupv3_id_1.  Add it now.  NOTE: right now the
only sdm845 board with a device tree in mainline is MTP and that board
currently doesn't have any peripherals under qupv3_id_0.  If any board
was currently using peripherals under qupv3_id_0 then that board would
need to add this snippet to their board dts file:

  &qupv3_id_0 {
     status = "okay";
  };

Signed-off-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-07-21 15:31:01 -05:00
Niklas Cassel
6192052350 arm64: dts: msm8916: drop legacy suffix for clocks used by MSM DRM driver
Drop legacy suffix for clocks used by MSM DRM driver.

The _clk suffix has been deprecated since commit 20c3bb80235 ("drm/msm:
drop _clk suffix from clk names").

Fixes: 720c3bb802 (drm/msm: drop _clk suffix from clk names)

The following warnings during boot have been seen since the referenced
fixes commit:

msm_dsi_phy 1a98300.dsi-phy: Using legacy clk name binding.  Use "iface" instead of "iface_clk"
msm 1a00000.mdss: Using legacy clk name binding.  Use "iface" instead of "iface_clk"
msm 1a00000.mdss: Using legacy clk name binding.  Use "bus" instead of "bus_clk"
msm 1a00000.mdss: Using legacy clk name binding.  Use "vsync" instead of "vsync_clk"
msm_mdp 1a01000.mdp: Using legacy clk name binding.  Use "bus" instead of "bus_clk"
msm_mdp 1a01000.mdp: Using legacy clk name binding.  Use "iface" instead of "iface_clk"
msm_mdp 1a01000.mdp: Using legacy clk name binding.  Use "core" instead of "core_clk"
msm_mdp 1a01000.mdp: Using legacy clk name binding.  Use "vsync" instead of "vsync_clk"
msm_dsi 1a98000.dsi: Using legacy clk name binding.  Use "mdp_core" instead of "mdp_core_clk"
msm_dsi 1a98000.dsi: Using legacy clk name binding.  Use "iface" instead of "iface_clk"
msm_dsi 1a98000.dsi: Using legacy clk name binding.  Use "bus" instead of "bus_clk"
msm_dsi 1a98000.dsi: Using legacy clk name binding.  Use "byte" instead of "byte_clk"
msm_dsi 1a98000.dsi: Using legacy clk name binding.  Use "pixel" instead of "pixel_clk"
msm_dsi 1a98000.dsi: Using legacy clk name binding.  Use "core" instead of "core_clk"

Signed-off-by: Niklas Cassel <niklas.cassel@linaro.org>
Reviewed-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-07-21 15:30:51 -05:00
Manivannan Sadhasivam
f63d609b60 arm64: dts: qcom: db820c: Add gpio-line-names property
Add gpio-line-names property for Dragonboard820c based on APQ8096 SoC.
There are 4 gpio-controllers present on this board, including the
APQ8096 SoC, PM8994 (GPIO and MPP) and PMI8994 (GPIO).

Lines names are derived from 96Boards CE Specification 1.0, Appendix
"Expansion Connector Signal Description". Line names for PMI8994 MPP
pins are not added due to the absence of the gpio-controller support.

Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-07-21 13:54:04 -05:00
Douglas Anderson
717f2013a4 arm64: dts: sdm845: Add rpmh-clk node
This adds the rpmh-clk node to sdm845 based on the examples in the
bindings.

Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-07-21 13:30:24 -05:00
Douglas Anderson
c83545d953 arm64: dts: sdm845: Add rpmh-rsc node
This adds the rpmh-rsc node to sdm845 based on the examples in the
bindings.

Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Lina Iyer <ilina@codeaurora.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-07-21 13:30:13 -05:00
Douglas Anderson
994356cfa9 arm64: dts: qcom: sdm845: Enable debug UART and I2C10 on sdm845-mtp
The debug UART is very useful to have.  I2C10 is enabled as an example
of a I2C port we can talk on for now.  Eventually we'll want to put
peripherals under it.

Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Tested-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-07-21 13:29:54 -05:00
Douglas Anderson
897cf34e73 arm64: dts: qcom: sdm845: Add I2C, SPI, and UART9 nodes
This adds nodes to SDM845-dtsi for all the I2C ports, all the SPI
ports, and UART9.  Note that I2C / SPI / UART are a bit strange on
sdm845 because each "serial engine" has 4 pins associated with it and
depending on which firmware has been loaded into the serial engine
(loaded by the BIOS) the serial engine can behave like an I2C port, a
SPI port, or a UART.  As per the landed bindings that means that we
need to create one node for each possible mode that the port could be
in.  With 16 serial engines that means 16 x 3 = 48 nodes.

We get away with only creating 33 nodes for now because it seems very
likely that SDM845-based boards will actually all use the same UART
(UART 9) for debug purposes.  While another UART could be used for
something like Bluetooth communication we can cross that path when we
come to it.  Some documentation that I saw implied that using a UART
for "high speed" communications actually needs yet another different
serial engine firmware anyway.

Note that quick measurements adding all these nodes adds <10k of extra
space per dtb that they're included with.  If this becomes a problem
we may need to think of a different way to structure this so that
boards only get the nodes they need (or figure out how to get dtc to
strip 'disabled' nodes).  For now it seems OK.

These nodes were programmatically generated with a fairly dumb python
script.  See http://crosreview.com/1091631 for the source.

NOTE: at the moment SPI chip select doesn't appear to work in my tests
with the latest posted SPI driver.  All testing of SPI with this patch
has been done by hacking SPI to GPIO chip select.

Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-07-21 13:29:36 -05:00
Stephen Boyd
8ea4ffca89 arm64: dts: qcom: Add pm8005 and pm8998 support
Add basic support for the pm8005 and pm8998 PMICs. For now just support
the GPIO controllers.

Signed-off-by: Stephen Boyd <swboyd@chromium.org>
Reviewed-by: Evan Green <evgreen@chromium.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-07-21 13:29:24 -05:00
Stephen Boyd
000c4662ab arm64: dts: qcom: Add pmu node to sdm845
Add the CPU PMU on sdm845 to get perf support for hardware events.

Signed-off-by: Stephen Boyd <swboyd@chromium.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-07-21 00:56:28 -05:00
Rob Herring
6b4154a655 arm64: dts: msm8916: fix Coresight ETF graph connections
The ETF input should be connected to the funnel output, and the ETF
output should be connected to the replicator input. The labels are wrong
and these got swapped:

Warning (graph_endpoint): /soc/funnel@821000/ports/port@8/endpoint: graph connection to node '/soc/etf@825000/ports/port@1/endpoint' is not bidirectional
Warning (graph_endpoint): /soc/replicator@824000/ports/port@2/endpoint: graph connection to node '/soc/etf@825000/ports/port@0/endpoint' is not bidirectional

Fixes: 7c10da3736 ("arm64: dts: qcom: Add msm8916 CoreSight components")
Cc: Ivan T. Ivanov <ivan.ivanov@linaro.org>
Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
Cc: Andy Gross <andy.gross@linaro.org>
Cc: David Brown <david.brown@linaro.org>
Cc: linux-arm-msm@vger.kernel.org
Signed-off-by: Rob Herring <robh@kernel.org>
Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Tested-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-06-23 00:00:05 -05:00
Srinivas Kandagatla
1ebb2709ba arm64: dts: apq8096-db820c: disable uart0 by default
Access to UART0 is disabled by bootloaders. By leaving it enabled by
default would reboot the board.
Disable this for now, this would alteast give a board which boots.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-06-22 23:59:04 -05:00
Olof Johansson
c6a893f872 Qualcomm Device Tree Changes for v4.18 - Part 2
* Numerous updates for IPQ8074 and IPQ4019 based devices
 * Add support for Sony Xperia Z1 Compact
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJbCHjsAAoJEFKiBbHx2RXV5cIQANoHyPc/DKLQeuHRcYlfH9DD
 3y5rH/TVqlAF9bos/oOdWSvTQKuBy9J8nKCLT7QJAzfufvo6LSGfOvQaUT+QYyvQ
 9GBSSnyOxydiYCZn4uP3plEwmsMxIWQ+xEANdrVBookWfkOR/057UoCEmeQXDpYO
 qnyfxEvSqjIZhqLvoLYMsq7rt6tao3JhGfVR0wSeldojfOd8j+Ui7ykBHh/XuJal
 FW+pyUuJUitz/ChjW9AR/XysXI58cnp4gB9qP+4Qxdt796J7lbNv1pK4wFa3hdCt
 GoXd4pZUvNyFCFTeCXdQBc+l2hQzPWhAJJio7J+QSFKzb0FzEyDuDkufjFJoe+AA
 MA5iHfOh1c1AO8N6OoenQbUWpNfMmgAAo5sbFBYUCfdtgq6PI9y4s5gGxwvnvyk1
 uvF4K6OzhrUDpdYZsVfo4D/ng9CMHU85dZNjnyc29ZuI64JcERKrZ9HZFmLIz4f6
 T9DwrGPVhe++glw7LuywGJJDWuUIy0d0gAabJDTWIKyRxPPss/WeqQfpZ48j5tV3
 +Q1SZYijMxtXKBRYzZIWZe7MmOjkuZnHL7kl7y3t182LXNq0ybTiF1s/PwmpsmOy
 GgQFCOFV9lHzSH0kRBNBc2VXKqTlgtpFbseOJRfzN3+XRVlBJ0qmixUBfmurBxZC
 uTn4h7wFW7/uqeNylqVJ
 =rcLr
 -----END PGP SIGNATURE-----

Merge tag 'qcom-dts-for-4.18-2' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux into next/dt

Qualcomm Device Tree Changes for v4.18 - Part 2

* Numerous updates for IPQ8074 and IPQ4019 based devices
* Add support for Sony Xperia Z1 Compact

* tag 'qcom-dts-for-4.18-2' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux:
  ARM: dts: ipq8074: Enable few peripherals for hk01 board
  ARM: dts: ipq8074: Add pcie nodes
  ARM: dts: ipq8074: Add peripheral nodes
  ARM: dts: ipq4019: Add qcom-ipq4019-ap.dk07.1-c2 board file
  ARM: dts: ipq4019: Add qcom-ipq4019-ap.dk07.1-c1 board file
  ARM: dts: ipq4019: Add ipq4019-ap.dk07.1 common data
  ARM: dts: ipq4019: Add qcom-ipq4019-ap.dk04.1-c3 board file
  ARM: dts: ipq4019: Add ipq4019-ap.dk04.1-c1 board file
  ARM: dts: ipq4019: Add ipq4019-ap.dk04.dtsi
  ARM: dts: ipq4019: Change the max opp frequency
  ARM: dts: ipq4019: Add a few peripheral nodes
  ARM: dts: ipq4019: Add a default chosen node
  ARM: dts: qcom: msm8974: Add Sony Xperia Z1 Compact

Signed-off-by: Olof Johansson <olof@lixom.net>
2018-05-26 11:59:11 -07:00
Thierry Escande
d8f8d467f5 arm64: dts: apq8096-db820c: Removed bt-en-1-8v regulator
This patch removes the unused bt-en-1-8v regulator and moves the
bt_en_gios claim to the pm8994_gpios node.

This bt_en_gpio could have been moved to the bluetooth serial node but
instead this node declares an 'enable' gpio addressing the bt_en_gpio.
This is needed by the Qualcomm QCA6174 WLAN/BT combo chip that needs to
have the bt_en_gpio claimed even if only WLAN is used.

Signed-off-by: Thierry Escande <thierry.escande@linaro.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-05-25 16:21:05 -05:00
Niklas Cassel
da34314f72 arm64: dts: fix regulator property name for wlan pcie endpoint
The property name vddpe-supply is not included in
Documentation/devicetree/bindings/pci/qcom,pcie.txt
nor in the pcie-qcom PCIe Root Complex driver.

This property name was used in an initial patchset for pcie-qcom,
but was renamed in a later revision.

Therefore, the regulator is currently never enabled, leaving us with
unoperational wlan.

Fix this by using the correct regulator property name, so that wlan
comes up correctly.

Fixes: 1c8ca74a2ea1 ("arm64: dts: apq8096-db820c: Enable wlan and bt en pins")
Signed-off-by: Niklas Cassel <niklas.cassel@linaro.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-05-25 16:21:05 -05:00
Bjorn Andersson
94dc9f48d1 arm64: dts: qcom: msm8996: Use UFS_GDSC for UFS
The UFS host controller occationally (20%) fails to enable
gcc_ufs_axi_clk because the UFS GDSC is not enabled. In most cases it's
enabled through the UFS phy driver, but to make sure it's enabled let's
enable it directly from the UFS host controller directly as well.

Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-05-25 16:21:04 -05:00
Sricharan R
0e4c982096 ARM: dts: ipq8074: Enable few peripherals for hk01 board
Reviewed-by: Abhishek Sahu <absahu@codeaurora.org>
Acked-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Sricharan R <sricharan@codeaurora.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-05-25 15:40:21 -05:00
Sricharan R
33057e1672 ARM: dts: ipq8074: Add pcie nodes
The driver/phy support for ipq8074 is available now.
So enabling the nodes in DT.

Reviewed-by: Abhishek Sahu <absahu@codeaurora.org>
Acked-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Sricharan R <sricharan@codeaurora.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-05-25 15:40:21 -05:00
Sricharan R
22592a2277 ARM: dts: ipq8074: Add peripheral nodes
Add serial, i2c, bam, spi, qpic peripheral nodes.

While here, fix the PMU node's irq trigger to avoid
the boot warnings from GIC.

Reviewed-by: Abhishek Sahu <absahu@codeaurora.org>
Signed-off-by: Sricharan R <sricharan@codeaurora.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-05-25 15:40:21 -05:00
Bjorn Andersson
57fc67ef0d arm64: dts: qcom: msm8996: Add ufs related nodes
Add the UFS QMP phy node and the UFS host controller node, now that we
have working UFS and the necessary clocks in place.

Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-05-22 23:29:03 -05:00
Thierry Escande
242579dd08 arm64: dts: msm8996: fix gic_irq_domain_translate warnings
Remove the usage of IRQ_TYPE_NONE to fix loud warnings from
patch (83a86fbb5b "irqchip/gic: Loudly complain about
the use of IRQ_TYPE_NONE").

Signed-off-by: Thierry Escande <thierry.escande@linaro.org>
Reviewed-by: Amit Kucheria <amit.kucheria@linaro.org>
Tested-by: Amit Kucheria <amit.kucheria@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-05-22 23:29:02 -05:00
Douglas Anderson
54d7a20d61 arm64: dts: qcom: sdm845: Sort nodes in the soc by address
This is pure-churn and should be a no-op.  I'm doing it in the hopes
of reducing merge conflicts.  When things are sorted in a sane way
(and by base address seems sane) then it's less likely that future
patches will cause merge conflicts.

Signed-off-by: Douglas Anderson <dianders@chromium.org>
Acked-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-05-22 23:29:02 -05:00
Douglas Anderson
2da5239816 arm64: dts: qcom: sdm845: Sort nodes in the reserved mem by address
Let's keep the reserved-memory node tidy and neat and keep it sorted
by address.  This should have no functional change.

Signed-off-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-05-22 23:29:01 -05:00
Douglas Anderson
b1643b2734 arm64: dts: sdm845: Add command DB node
Add command DB node based on the bindings example.

Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-05-22 23:29:01 -05:00
Douglas Anderson
5ea3939cf5 arm64: dts: sdm845: Fix xo_board clock name and speed
The RPMh clock driver assumes that the xo_board clock is named
"xo_board", not "xo-board".  Add a "clock-output-names" property to
the device tree to get the right name.

Also add the proper speed for the xo-clock as 38400000.  This is
internally divided in RPMh clock driver to get "bi_tcxo" at 19200000.

After this change the clock tree in /sys/kernel/debug/clk/clk_summary
looks much better.

NOTES:
- Technically you could argue that this clock could belong in board
  .dts files, not in the SoC one.  However at the moment it's believed
  that 100% of sdm845 boards will have an external clock at 38.4.  It
  can always be moved later if necessary.
- We could rename the "xo-board" device tree node to "xo_board" to
  achieve the same effect as this patch.  Presumably device-tree folks
  would rather keep node names using dashes though.
- We could change the RPMh clock driver to use a dash to achieve the
  same effect as this patch, but all other clocks in the clock tree
  use underscores.  It seems silly to change just this one.

Fixes: 7bafa643647f ("arm64: dts: sdm845: Add minimal dts/dtsi files for sdm845 SoC and MTP")
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-05-22 23:29:00 -05:00
Sibi S
71c8428e48 arm64: dts: qcom: Add SDM845 SMEM nodes
Add all the necessary dt nodes to support SMEM driver
on SDM845. It also adds the required memory carveouts
so that the kernel does not access memory that is in
use.

Signed-off-by: Sibi Sankar <sibis@codeaurora.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-05-22 23:28:59 -05:00
Sibi S
03208ff7bf arm64: dts: qcom: Add APSS shared mailbox node to SDM845
This patch add the node to support APSS shared
mailbox on SDM845

Signed-off-by: Sibi Sankar <sibis@codeaurora.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-05-22 23:28:59 -05:00
Srinivas Kandagatla
c16e78b8e8 arm64: dts: msm8916: fix gic_irq_domain_translate warnings
Remove the usage of IRQ_TYPE_NONE to fix loud warnings from
patch (83a86fbb5b "irqchip/gic: Loudly complain about
the use of IRQ_TYPE_NONE").

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Reviewed-by: Thierry Escande <thierry.escande@linaro.org>
Tested-by: Thierry Escande <thierry.escande@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-05-22 23:28:54 -05:00
Srinivas Kandagatla
575dc637a9 arm64: dts: apq8096-db820c: Add micro sd card supplies
This patch adds missing microSD card supplies, without this uSD
card will not be detected.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-05-22 23:28:53 -05:00
Thierry Escande
3e4cb73080 arm64: dts: apq8096-db820c: enable bluetooth node
Add a new serial node for the Qualcomm BT controller QCA6174. This
allows automatic probing and hci registration through the serdev
framework instead of relying on the userspace helpers.

Signed-off-by: Thierry Escande <thierry.escande@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-05-22 23:28:51 -05:00
Srinivas Kandagatla
5360394706 arm64: dts: apq8096-db820c: Enable wlan and bt en pins
This patch enables regulators and gpios for the Qualcomm QCA6174 BT/WLAN
combo controller.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Thierry Escande <thierry.escande@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-05-22 23:28:51 -05:00
Arnd Bergmann
228b9cae76 arm64: dts: qcom: rename qcom,pcie devices to pcie
The node name for a PCIe host bridge must be "pcie" as required by
the binging. dtc now warns about it:

arch/arm64/boot/dts/qcom/apq8096-db820c.dtb: Warning (pci_bridge): /soc/agnoc@0/qcom,pcie@610000: node name is not "pci" or "pcie"
arch/arm64/boot/dts/qcom/apq8096-db820c.dtb: Warning (pci_device_bus_num): Failed prerequisite 'pci_bridge'
arch/arm64/boot/dts/qcom/msm8996-mtp.dtb: Warning (pci_bridge): /soc/agnoc@0/qcom,pcie@610000: node name is not "pci" or "pcie"
arch/arm64/boot/dts/qcom/msm8996-mtp.dtb: Warning (pci_device_bus_num): Failed prerequisite 'pci_bridge'

This renames the nodes as appropriate.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-05-22 23:28:50 -05:00
Jeremy McNicoll
0295d4dfa8 arm64: dts: msm8992: add pstore-ramoops support
With the addition of this ramoops node it enables post mortem
analysis if a debug cable is not attached and/or not available.

All addresses and values were extracted from CAF AOSP marshmallow
DR 1.6.

Signed-off-by: Jeremy McNicoll <jeremymc@redhat.com>
Acked-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-05-22 23:28:49 -05:00
Rajendra Nayak
6d4cf750d0 arm64: dts: sdm845: Add minimal dts/dtsi files for sdm845 SoC and MTP
Add a skeletal sdm845 SoC dtsi and MTP board dts/dtsi files

Signed-off-by: Rajendra Nayak <rnayak@codeaurora.org>
Reviewed-by: Doug Anderson <dianders@chromium.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-05-22 23:28:49 -05:00
Jeremy McNicoll
f3b2c99e73 arm64: dts: Enable onboard SDHCI on msm8992
This enables SDHCI on the Nexus 5X as well creates common smd_rpm node
which can be shared between both 5X and 6P as per HW design.

Given the lack of documentation, only downstream code was used as a reference
and it eludes to the fact that 8994-rpm-regulator is common between both msm8992
& msm8994.   [ see msm.git branch: msm-angler-3.10-marshmallow-mr1, msm8992.dtsi]

At this early stage of development it makes sense for the 8994-rpm-regulator
to be common until data / documentation suggests otherwise.

Signed-off-by: Jeremy McNicoll <jeremymc@redhat.com>
Acked-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-05-22 23:28:41 -05:00
Arnd Bergmann
2430bcda36 Qualcomm ARM64 Updates for v4.17
* Fix GIC_CPU_MASK_SIMPLE and SPI5 config on MSM8996
 * Add SDM845 and kryo385 documentation
 * Add MSM8916 cooling maps, cpu frequency scaling, APCS, and A53 PLL
 * Switch APCS to use mailbox on MSM8916
 * Add rmtfs-mem on MSM8996
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJasG5uAAoJEFKiBbHx2RXV+YoP/Rlvm9SJ5smJR16d5UzZxlb7
 /X8qySsltTYeHa5tx1G0Y29N3S8mFAbVDg2VP/vgvZNJUsRcdZOWpelga6/Njm+u
 +95g68pexVN9cEoBXMNAB/gmiXoSbk5k0rRQukkvdEJfX+v7SYMN3S8LOm6D6P1e
 gpa8yDDHTtRN8QhDIyWO1CSl2Sy7YOHis2loHJbTJFvqrTPtS5+iUVT1yldaQ5x9
 5VjQ/82DVUYgsh2W/qnqTT+yUJsQPRE1sF2bKHbrLAOoMlPgU0rBeQXEPwQAyYDx
 ugNYsU4knZ2L9S/B1hjtkPjBe1clX2OH/fHrddHLnrzZSrLdw493h+uI8LKaK5uz
 eVl+9Cjfkho+/rR+CQ+D5UhTrUnNRdJINh82hWp24pmLqwn1zgijFPtrsWaDOTWt
 bbqXuNCtRh85Jr6EPjPZlp03vN8YI5q3p2UW4PXuDrvLRyy9VAH188Ua+hWw2GZZ
 t7axYBGy63cjdkBSOSzAgRvaZ45B4KqClf/HHJk072dGi3dmSeEn3KkZd4agXjJf
 SyxmOUQ2WolUQKLAyrtso9a8Uje5WgODy3uMAHGjqYZcnScxtqv7f7TJgJBF2xOK
 +QSO+Jn+N94rc1vDfMk0s/NuE21SH9KoWBjZ8lDH4w934LKgKr9SydZcas59ylc8
 hgv4VIEptRCygKxIhTXs
 =2KM8
 -----END PGP SIGNATURE-----

Merge tag 'qcom-arm64-for-4.17' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/agross/linux into next/dt

Pull "Qualcomm ARM64 Updates for v4.17" from Andy Gross:

* Fix GIC_CPU_MASK_SIMPLE and SPI5 config on MSM8996
* Add SDM845 and kryo385 documentation
* Add MSM8916 cooling maps, cpu frequency scaling, APCS, and A53 PLL
* Switch APCS to use mailbox on MSM8916
* Add rmtfs-mem on MSM8996

* tag 'qcom-arm64-for-4.17' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/agross/linux:
  arm64: dts: qcom: Fix SPI5 config on MSM8996
  dt-bindings: qcom: Add SDM845 bindings
  dt-bindings: arm: Document kryo385 cpu
  arm64: dts: msm8916: Add cpu cooling maps
  arm64: dts: msm8996: Add rmtfs sharedmem node
  arm64: dts: qcom: msm8916: Add CPU frequency scaling support
  arm64: dts: qcom: msm8916: Add clock properties to the APCS node
  arm64: dts: qcom: msm8916: Probe the APCS mailbox driver
  arm64: dts: qcom: msm8916: Add msm8916 A53 PLL DT node
  arm64: dts: msm8996: Fix wrong use of GIC_CPU_MASK_SIMPLE()
2018-03-27 14:30:49 +02:00
Ilia Lin
e723795c70 arm64: dts: qcom: Fix SPI5 config on MSM8996
Set correct clocks and interrupt values.
Fixes the incorrect SPI master configuration. This is
mandatory to make the SPI5 interface functional.

Signed-off-by: Ilia Lin <ilialin@codeaurora.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-03-08 18:39:19 -06:00
Rajendra Nayak
15ee8f021d arm64: dts: msm8916: Add cpu cooling maps
Add cpu cooling maps for cpu passive trip points. The cpu cooling
device states are mapped to cpufreq based scaling frequencies.

Signed-off-by: Rajendra Nayak <rnayak@codeaurora.org>
Signed-off-by: Amit Kucheria <amit.kucheria@linaro.org>
Reviewed-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-03-08 18:36:33 -06:00
Bjorn Andersson
68ae3d0cac arm64: dts: msm8996: Add rmtfs sharedmem node
A 2MB shared memory region is used on MSM8996 for exchanging sector data
in rmtfs. Add this chunk of reserved memory now that we have the
rmtfs-mem compatible to describe it and its memory protection
properties.

Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-03-08 18:35:24 -06:00
Georgi Djakov
65afdf4583 arm64: dts: qcom: msm8916: Add CPU frequency scaling support
Add a CPU OPP table to allow CPU frequency scaling on msm8916 platforms.

Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
Reviewed-by: Amit Kucheria <amit.kucheria@linaro.org>
Tested-by: Amit Kucheria <amit.kucheria@linaro.org>
Signed-off-by: Andy Gross <andy.gross@linaro.org>
2018-03-08 18:31:15 -06:00