Commit 830ebd37 authored by Arnd Bergmann's avatar Arnd Bergmann
Browse files

Merge tag 'qcom-drivers-for-4.16' of...

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

Pull "Qualcomm ARM Based Driver Updates for v4.16 - Redo" from Andy Gross:

* Fix error handling code in SMP2P probe
* Update SMP2P to use ACPS as mailbox client
* Add QMI support
* Fixups for Qualcomm SCM
* Fix licensing on rmtfs_mem
* Correct SMSM child node lookup
* Populate firmware nodes during platform init

* tag 'qcom-drivers-for-4.16' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/agross/linux:
  of: platform: populate /firmware/ node from of_platform_default_populate_init()
  soc: qcom: smp2p: Use common error handling code in qcom_smp2p_probe()
  soc: qcom: Introduce QMI helpers
  soc: qcom: Introduce QMI encoder/decoder
  firmware: qcom_scm: Add dependent headers to qcom_scm.h
  soc: qcom: smp2p: Access APCS as mailbox client
  soc: qcom: rmtfs_mem: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE
  soc: qcom: smsm: fix child-node lookup
  firmware: qcom_scm: drop redandant of_platform_populate
parents 57e36159 3aa0582f
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -17,9 +17,15 @@ processor ID) and a string identifier.
	Value type: <prop-encoded-array>
	Definition: one entry specifying the smp2p notification interrupt

- qcom,ipc:
- mboxes:
	Usage: required
	Value type: <prop-encoded-array>
	Definition: reference to the associated doorbell in APCS, as described
		    in mailbox/mailbox.txt

- qcom,ipc:
	Usage: required, unless mboxes is specified
	Value type: <prop-encoded-array>
	Definition: three entries specifying the outgoing ipc bit used for
		    signaling the remote end of the smp2p edge:
		    - phandle to a syscon node representing the apcs registers
+0 −24
Original line number Diff line number Diff line
@@ -622,30 +622,6 @@ static struct platform_driver qcom_scm_driver = {

static int __init qcom_scm_init(void)
{
	struct device_node *np, *fw_np;
	int ret;

	fw_np = of_find_node_by_name(NULL, "firmware");

	if (!fw_np)
		return -ENODEV;

	np = of_find_matching_node(fw_np, qcom_scm_dt_match);

	if (!np) {
		of_node_put(fw_np);
		return -ENODEV;
	}

	of_node_put(np);

	ret = of_platform_populate(fw_np, qcom_scm_dt_match, NULL, NULL);

	of_node_put(fw_np);

	if (ret)
		return ret;

	return platform_driver_register(&qcom_scm_driver);
}
subsys_initcall(qcom_scm_init);
+4 −0
Original line number Diff line number Diff line
@@ -518,6 +518,10 @@ static int __init of_platform_default_populate_init(void)
	for_each_matching_node(node, reserved_mem_matches)
		of_platform_device_create(node, NULL, NULL);

	node = of_find_node_by_path("/firmware");
	if (node)
		of_platform_populate(node, NULL, NULL, NULL);

	/* Populate everything else. */
	of_platform_default_populate(NULL, NULL, NULL);

+10 −0
Original line number Diff line number Diff line
@@ -35,6 +35,15 @@ config QCOM_PM
	  modes. It interface with various system drivers to put the cores in
	  low power modes.

config QCOM_QMI_HELPERS
	tristate
	depends on ARCH_QCOM
	help
	  Helper library for handling QMI encoded messages.  QMI encoded
	  messages are used in communication between the majority of QRTR
	  clients and this helpers provide the common functionality needed for
	  doing this from a kernel driver.

config QCOM_RMTFS_MEM
	tristate "Qualcomm Remote Filesystem memory driver"
	depends on ARCH_QCOM
@@ -75,6 +84,7 @@ config QCOM_SMEM_STATE

config QCOM_SMP2P
	tristate "Qualcomm Shared Memory Point to Point support"
	depends on MAILBOX
	depends on QCOM_SMEM
	select QCOM_SMEM_STATE
	help
+2 −0
Original line number Diff line number Diff line
@@ -3,6 +3,8 @@ obj-$(CONFIG_QCOM_GLINK_SSR) += glink_ssr.o
obj-$(CONFIG_QCOM_GSBI)	+=	qcom_gsbi.o
obj-$(CONFIG_QCOM_MDT_LOADER)	+= mdt_loader.o
obj-$(CONFIG_QCOM_PM)	+=	spm.o
obj-$(CONFIG_QCOM_QMI_HELPERS)	+= qmi_helpers.o
qmi_helpers-y	+= qmi_encdec.o qmi_interface.o
obj-$(CONFIG_QCOM_RMTFS_MEM)	+= rmtfs_mem.o
obj-$(CONFIG_QCOM_SMD_RPM)	+= smd-rpm.o
obj-$(CONFIG_QCOM_SMEM) +=	smem.o
Loading