Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c36ec73d authored by Narendra Muppalla's avatar Narendra Muppalla
Browse files

Merge remote-tracking branch 'quic/msm-4.14' into dev/msm-4.14-display



* quic/msm-4.14:
  msm: ipa: Add support to get current ipa clock vote from apps
  msm: ipa: Set ep delay on USB_PROD ep
  ARM: dts: msm: Add peripheral devices for sm8150-auto
  ARM: dts: msm: Add UFS support for sm8150-auto
  sched/core_ctl : make assisting more stringent
  arm64: smp: Get ipi_raise tracepoint working again
  ARM: dts: msm: ADSPRPC: CDSP loader DT entry for qcs405
  power: smb5: Enable Type-C DRP try.snk support
  arm64: Apply Erratum 1024718 to Kryo4xx Cores
  arm64: Add MIDR values for kryo4xx little cores
  arm64: Apply erratum 1024718 to Kryo3xx Cores
  arch: arm64: Add MIDR values for kryo3xx little cores
  arm64: Add work around for Arm Cortex-A55 Erratum 1024718
  arm64: Delay enabling hardware DBM feature
  drivers: pinctrl: Add support for pinctrl driver for sdxprairie
  msm: ipa4: add SMMU support for EMAC
  arm64: capabilities: Add support for checks based on a list of MIDRs
  arm64: Add helpers for checking CPU MIDR against a range
  sched/fair: make upmigration of big tasks possible under boost scenarios
  cpuidle: lpm-levels: Use of_node_put on node pointers
  sched/core: Keep rq online after cpu isolation
  msm: kgsl: Use the GMU for bus DCVS
  msm: fastcvpd: adding hyp_assign to allow memory access to CDSP
  fbdev: msm: Remove restore secure cfg stub out
  defconfig: add DCC_V2 support on qcs405
  esoc: power down on reboot
  iommu/arm-smmu: Replace devm_ioremap_resource by devm_ioremap
  trace: events: pdc: Correct trace print
  coresight: place pm_runtime_put() properly
  msm: ipa3: fix HPS replication type for 3_5_1 targets
  defconfig: arm64: Enable TGU in sm8150 perf config
  ARM: dts: msm: support PM6150L BOB dynamic mode configuration on SM6150
  clk: qcom: clk-smd-rpm: Support new XO voter clock for CDSP
  power: fg-util: Update fg_get_battery_type
  ARM: dts: msm: update UFS's Supported Clocks for SM8150
  scsi: ufs-qcom: update vendor specific unipro attribute per clk freq
  ARM: dts: msm: add ion secure cma heap node on qcs405
  ARM: dts: msm: Add glink client device nodes for QCS405
  Revert "drivers: dma-removed: introduce no-map-fixup"

Change-Id: Ia8c8db8392659df0de01f117df92eb8383dde505
Signed-off-by: default avatarNarendra Muppalla <NarendraM@codeaurora.org>
parents e00d2a35 cfbe53ff
Loading
Loading
Loading
Loading
+186 −0
Original line number Diff line number Diff line
Qualcomm Technologies, Inc. SDXPRAIRIE TLMM block

This binding describes the Top Level Mode Multiplexer block found in the
SDXPRAIRIE platform.

- compatible:
	Usage: required
	Value type: <string>
	Definition: must be "qcom,sdxprairie-pinctrl"

- reg:
	Usage: required
	Value type: <prop-encoded-array>
	Definition: the base address and size of the TLMM register space.

- interrupts:
	Usage: required
	Value type: <prop-encoded-array>
	Definition: should specify the TLMM summary IRQ.

- interrupt-controller:
	Usage: required
	Value type: <none>
	Definition: identifies this node as an interrupt controller

- #interrupt-cells:
	Usage: required
	Value type: <u32>
	Definition: must be 2. Specifying the pin number and flags, as defined
		    in <dt-bindings/interrupt-controller/irq.h>

- gpio-controller:
	Usage: required
	Value type: <none>
	Definition: identifies this node as a gpio controller

- #gpio-cells:
	Usage: required
	Value type: <u32>
	Definition: must be 2. Specifying the pin number and flags, as defined
		    in <dt-bindings/gpio/gpio.h>

Please refer to ../gpio/gpio.txt and ../interrupt-controller/interrupts.txt for
a general description of GPIO and interrupt bindings.

Please refer to pinctrl-bindings.txt in this directory for details of the
common pinctrl bindings used by client devices, including the meaning of the
phrase "pin configuration node".

The pin configuration nodes act as a container for an arbitrary number of
subnodes. Each of these subnodes represents some desired configuration for a
pin, a group, or a list of pins or groups. This configuration can include the
mux function to select on those pin(s)/group(s), and various pin configuration
parameters, such as pull-up, drive strength, etc.


PIN CONFIGURATION NODES:

The name of each subnode is not important; all subnodes should be enumerated
and processed purely based on their content.

Each subnode only affects those parameters that are explicitly listed. In
other words, a subnode that lists a mux function but no pin configuration
parameters implies no information about any pin configuration parameters.
Similarly, a pin subnode that describes a pullup parameter implies no
information about e.g. the mux function.


The following generic properties as defined in pinctrl-bindings.txt are valid
to specify in a pin configuration subnode:

- pins:
	Usage: required
	Value type: <string-array>
	Definition: List of gpio pins affected by the properties specified in
		    this subnode.

		    Valid pins are:
		      gpio0-gpio149
		        Supports mux, bias and drive-strength

		      sdc1_clk, sdc1_cmd, sdc1_data sdc2_clk, sdc2_cmd,
		      sdc2_data sdc1_rclk
		        Supports bias and drive-strength

- function:
	Usage: required
	Value type: <string>
	Definition: Specify the alternative function to be configured for the
		    specified pins. Functions are only valid for gpio pins.
		    Valid values are:

		    blsp_uart1, blsp_spi1, blsp_i2c1, blsp_uim1, atest_tsens,
		    bimc_dte1, dac_calib0, blsp_spi8, blsp_uart8, blsp_uim8,
		    qdss_cti_trig_out_b, bimc_dte0, dac_calib1, qdss_cti_trig_in_b,
		    dac_calib2, atest_tsens2, atest_usb1, blsp_spi10, blsp_uart10,
		    blsp_uim10, atest_bbrx1, atest_usb13, atest_bbrx0, atest_usb12,
		    mdp_vsync, edp_lcd, blsp_i2c10, atest_gpsadc1, atest_usb11,
		    atest_gpsadc0, edp_hot, atest_usb10, m_voc, dac_gpio, atest_char,
		    cam_mclk, pll_bypassnl, qdss_stm7, blsp_i2c8, qdss_tracedata_b,
		    pll_reset, qdss_stm6, qdss_stm5, qdss_stm4, atest_usb2, cci_i2c,
		    qdss_stm3, dac_calib3, atest_usb23, atest_char3, dac_calib4,
		    qdss_stm2, atest_usb22, atest_char2, qdss_stm1, dac_calib5,
		    atest_usb21, atest_char1, dbg_out, qdss_stm0, dac_calib6,
		    atest_usb20, atest_char0, dac_calib10, qdss_stm10,
		    qdss_cti_trig_in_a, cci_timer4, blsp_spi6, blsp_uart6, blsp_uim6,
		    blsp2_spi, qdss_stm9, qdss_cti_trig_out_a, dac_calib11,
		    qdss_stm8, cci_timer0, qdss_stm13, dac_calib7, cci_timer1,
		    qdss_stm12, dac_calib8, cci_timer2, blsp1_spi, qdss_stm11,
		    dac_calib9, cci_timer3, cci_async, dac_calib12, blsp_i2c6,
		    qdss_tracectl_a, dac_calib13, qdss_traceclk_a, dac_calib14,
		    dac_calib15, hdmi_rcv, dac_calib16, hdmi_cec, pwr_modem,
		    dac_calib17, hdmi_ddc, pwr_nav, dac_calib18, pwr_crypto,
		    dac_calib19, hdmi_hot, dac_calib20, dac_calib21, pci_e0,
		    dac_calib22, dac_calib23, dac_calib24, tsif1_sync, dac_calib25,
		    sd_write, tsif1_error, blsp_spi2, blsp_uart2, blsp_uim2,
		    qdss_cti, blsp_i2c2, blsp_spi3, blsp_uart3, blsp_uim3, blsp_i2c3,
		    uim3, blsp_spi9, blsp_uart9, blsp_uim9, blsp10_spi, blsp_i2c9,
		    blsp_spi7, blsp_uart7, blsp_uim7, qdss_tracedata_a, blsp_i2c7,
		    qua_mi2s, gcc_gp1_clk_a, ssc_irq, uim4, blsp_spi11, blsp_uart11,
		    blsp_uim11, gcc_gp2_clk_a, gcc_gp3_clk_a, blsp_i2c11, cri_trng0,
		    cri_trng1, cri_trng, qdss_stm18, pri_mi2s, qdss_stm17, blsp_spi4,
		    blsp_uart4, blsp_uim4, qdss_stm16, qdss_stm15, blsp_i2c4,
		    qdss_stm14, dac_calib26, spkr_i2s, audio_ref, lpass_slimbus,
		    isense_dbg, tsense_pwm1, tsense_pwm2, btfm_slimbus, ter_mi2s,
		    qdss_stm22, qdss_stm21, qdss_stm20, qdss_stm19, gcc_gp1_clk_b,
		    sec_mi2s, blsp_spi5, blsp_uart5, blsp_uim5, gcc_gp2_clk_b,
		    gcc_gp3_clk_b, blsp_i2c5, blsp_spi12, blsp_uart12, blsp_uim12,
		    qdss_stm25, qdss_stm31, blsp_i2c12, qdss_stm30, qdss_stm29,
		    tsif1_clk, qdss_stm28, tsif1_en, tsif1_data, sdc4_cmd, qdss_stm27,
		    qdss_traceclk_b, tsif2_error, sdc43, vfr_1, qdss_stm26, tsif2_clk,
		    sdc4_clk, qdss_stm24, tsif2_en, sdc42, qdss_stm23, qdss_tracectl_b,
		    sd_card, tsif2_data, sdc41, tsif2_sync, sdc40, mdp_vsync_p_b,
		    ldo_en, mdp_vsync_s_b, ldo_update, blsp11_uart_tx_b, blsp11_uart_rx_b,
		    blsp11_i2c_sda_b, prng_rosc, blsp11_i2c_scl_b, uim2, uim1, uim_batt,
		    pci_e2, pa_indicator, adsp_ext, ddr_bist, qdss_tracedata_11,
		    qdss_tracedata_12, modem_tsync, nav_dr, nav_pps, pci_e1, gsm_tx,
		    qspi_cs, ssbi2, ssbi1, mss_lte, qspi_clk, qspi0, qspi1, qspi2, qspi3,
		    gpio

- bias-disable:
	Usage: optional
	Value type: <none>
	Definition: The specified pins should be configued as no pull.

- bias-pull-down:
	Usage: optional
	Value type: <none>
	Definition: The specified pins should be configued as pull down.

- bias-pull-up:
	Usage: optional
	Value type: <none>
	Definition: The specified pins should be configued as pull up.

- output-high:
	Usage: optional
	Value type: <none>
	Definition: The specified pins are configured in output mode, driven
		    high.
		    Not valid for sdc pins.

- output-low:
	Usage: optional
	Value type: <none>
	Definition: The specified pins are configured in output mode, driven
		    low.
		    Not valid for sdc pins.

- drive-strength:
	Usage: optional
	Value type: <u32>
	Definition: Selects the drive strength for the specified pins, in mA.
		    Valid values are: 2, 4, 6, 8, 10, 12, 14 and 16

Example:

	tlmm: pinctrl@03900000 {
		compatible = "qcom,sdxprairie-pinctrl";
		reg = <0x03900000 0x300000>;
		interrupts = <0 212 0>;
		gpio-controller;
		#gpio-cells = <2>;
		interrupt-controller;
		#interrupt-cells = <2>;
	};
+0 −10
Original line number Diff line number Diff line
@@ -59,16 +59,6 @@ no-map (optional) - empty property
      of the region as part of its standard mapping of system memory,
      nor permit speculative access to it under any circumstances other
      than under the control of the device driver using the region.
no-map-fixup (optional) - empty property
    - Indicates the operating system must reserve the memory region and keep
      virtual mapping. Upon first allocation the actual allocated region is
      removed for any virtual mapping and behaves as "no-map" while the
      remaining memory is returned back to the system for normal use. One would
      like to use this property where he is not sure about how much region size
      must be reserved, so he gives it a max size which then is shrink once
      (first) allocation is done. This property is for some specific use cases,
      if unsure please don't use it. This property cannot be used together with
      "no-map" attribute.
reusable (optional) - empty property
    - The operating system can use the memory in this region with the
      limitation that the device driver(s) owning the region need to be
+1 −0
Original line number Diff line number Diff line
@@ -385,6 +385,7 @@ CONFIG_MSM_SUBSYSTEM_RESTART=y
CONFIG_MSM_PIL=y
CONFIG_MSM_BOOT_STATS=y
CONFIG_MSM_CORE_HANG_DETECT=y
CONFIG_QCOM_DCC_V2=y
CONFIG_QCOM_GLINK=y
CONFIG_QCOM_GLINK_PKT=y
# CONFIG_MSM_JTAGV8 is not set
+6 −0
Original line number Diff line number Diff line
@@ -21,6 +21,12 @@
			qcom,ion-heap-type = "SYSTEM";
		};

		qcom,ion-heap@8 { /* CP_MM HEAP */
			reg = <8>;
			memory-region = <&secure_mem>;
			qcom,ion-heap-type = "SECURE_DMA";
		};

		qcom,ion-heap@27 { /* QSEECOM HEAP */
			reg = <27>;
			memory-region = <&qseecom_mem>;
+62 −8
Original line number Diff line number Diff line
@@ -442,56 +442,110 @@
		mboxes = <&apcs_glb 0>;
	};

	qcom,msm-cdsp-loader {
		compatible = "qcom,cdsp-loader";
		qcom,proc-img-to-load = "cdsp";
	};

	qcom,glink {
		compatible = "qcom,glink";
		modem {
		#address-cells = <1>;
		#size-cells = <1>;
		ranges;

		glink_wcnss: wcnss {
			qcom,remote-pid = <1>;
			transport = "smem";
			mboxes = <&apcs_glb 16>;
			mbox-names = "mpss_smem";
			mbox-names = "wcnss_smem";
			interrupts = <GIC_SPI 156 IRQ_TYPE_EDGE_RISING>;

			modem_qrtr {
			label = "wcnss";
			qcom,glink-label = "wcnss";

			qcom,wcnss_qrtr {
				qcom,glink-channels = "IPCRTR";
				qcom,intents = <0x800  5
						0x2000 3
						0x4400 2>;
			};

			qcom,msm_fastrpc_rpmsg {
				compatible = "qcom,msm-fastrpc-rpmsg";
				qcom,glink-channels = "fastrpcglink-apps-dsp";
				qcom,intents = <0x64 64>;
			};

			qcom,wcnss_glink_ssr {
				qcom,glink-channels = "glink_ssr";
				qcom,notify-edges = <&glink_adsp>,
						    <&glink_cdsp>;
			};
		};

		adsp {
		glink_adsp: adsp {
			qcom,remote-pid = <2>;
			transport = "smem";
			mboxes = <&apcs_glb 8>;
			mbox-names = "adsp_smem";
			interrupts = <GIC_SPI 289 IRQ_TYPE_EDGE_RISING>;

			adsp_qrtr {
			label = "adsp";
			qcom,glink-label = "lpass";

			qcom,adsp_qrtr {
				qcom,glink-channels = "IPCRTR";
				qcom,intents = <0x800  5
						0x2000 3
						0x4400 2>;
			};

			apr_tal_rpmsg {
			qcom,apr_tal_rpmsg {
				qcom,glink-channels = "apr_audio_svc";
				qcom,intents = <0x200 20>;
			};

			qcom,msm_fastrpc_rpmsg {
				compatible = "qcom,msm-fastrpc-rpmsg";
				qcom,glink-channels = "fastrpcglink-apps-dsp";
				qcom,intents = <0x64 64>;
			};

			qcom,adsp_glink_ssr {
				qcom,glink-channels = "glink_ssr";
				qcom,notify-edges = <&glink_wcnss>,
						    <&glink_cdsp>;
			};
		};

		cdsp {
		glink_cdsp: cdsp {
			qcom,remote-pid = <5>;
			transport = "smem";
			mboxes = <&apcs_glb 12>;
			mbox-names = "cdsp_smem";
			interrupts = <GIC_SPI 141 IRQ_TYPE_EDGE_RISING>;

			cdsp_qrtr {
			label = "cdsp";
			qcom,glink-label = "cdsp";

			qcom,cdsp_qrtr {
				qcom,glink-channels = "IPCRTR";
				qcom,intents = <0x800  5
						0x2000 3
						0x4400 2>;
			};

			qcom,msm_fastrpc_rpmsg {
				compatible = "qcom,msm-fastrpc-rpmsg";
				qcom,glink-channels = "fastrpcglink-apps-dsp";
				qcom,intents = <0x64 64>;
			};

			qcom,cdsp_glink_ssr {
				qcom,glink-channels = "glink_ssr";
				qcom,notify-edges = <&glink_wcnss>,
						    <&glink_adsp>;
			};
		};
	};

Loading