From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753630AbbDAThx (ORCPT ); Wed, 1 Apr 2015 15:37:53 -0400 Received: from arroyo.ext.ti.com ([192.94.94.40]:60068 "EHLO arroyo.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753208AbbDAThu (ORCPT ); Wed, 1 Apr 2015 15:37:50 -0400 From: Dave Gerlach To: , , , CC: Ohad Ben-Cohen , Suman Anna , Kevin Hilman , Tony Lindgren , Dave Gerlach Subject: [PATCH v3 0/4] remoteproc: Introduce wkup_m3_rproc driver Date: Wed, 1 Apr 2015 14:37:15 -0500 Message-ID: <1427917039-43206-1-git-send-email-d-gerlach@ti.com> X-Mailer: git-send-email 2.3.0 MIME-Version: 1.0 Content-Type: text/plain Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, This patch series is version three of the series to add a wkup_m3_rproc driver for TI AM335x SoCs. This family of SoCs contains an ARM Cortex M3 coprocessor that is responsible for low-level power tasks that cannot be handled by the main ARM Cortex A8 so firmware running from the CM3 can be used instead. This driver handles loading of the firmware and reset of the CM3 once it is booted. The previous version of this series can be found here [1]. I have pushed a branch based on v4.0-rc5 containing the entire am335x suspend series here for a higher level view of the entire series of patch sets here [2]. This series depends on "remoteproc: add IOMMU hardware capability flag" which is currently queued here [3]. Based on comments on the DT node included in the "ARM: OMAP2+: wkup_m3_rproc support patches" series (v3 of that will immediately follow this series) the DT node moved under a different parent node so some changes to the driver were necessary to calculate proper device addresses for firmware loading. This series also now includes a patch to introduce an rproc_get_by_phandle API to the remoteproc core so that users of this wkup_m3_rproc driver are able to get a handle to the rproc and boot it as the rproc must be booted directly by the user. An example user, wkup_m3_ipc, can be seen in previously mentioned branch at [2]. v2 -> v3: -Modify wkup_m3_rproc driver to properly handle device address based on new DT location in l4_wkup node. -In binding doc, change ti,am3352-wkup-m3 from am3353-wkup_m3 to match other am3352 compats -General cleanup of address representation in wkup_m3_rproc driver -Includes rproc_get_by_phandle patch now The driver expects to load firmware am335x-pm-firmware.elf from /lib/firmware which is found here [4]. Regards, Dave [1] http://www.spinics.net/lists/linux-omap/msg116364.html [2] https://github.com/dgerlach/linux-pm/tree/pm-v4.0-rc5-am335x-suspend [3] https://git.kernel.org/cgit/linux/kernel/git/ohad/remoteproc.git/commit/?h=for-next&id=315491e5d6ee66838a18a8ca0c14e6ffb376e48c [4] https://git.ti.com/ti-cm3-pm-firmware/amx3-cm3/commits/next-upstream Dave Gerlach (3): remoteproc: introduce rproc_get_by_phandle API Documentation: dt: add bindings for TI Wakeup M3 processor remoteproc/wkup_m3: add a remoteproc driver for TI Wakeup M3 Suman Anna (1): remoteproc: add a rproc ops for performing address translation .../bindings/remoteproc/wkup_m3_rproc.txt | 52 +++++ Documentation/remoteproc.txt | 6 + drivers/remoteproc/Kconfig | 13 ++ drivers/remoteproc/Makefile | 1 + drivers/remoteproc/remoteproc_core.c | 114 +++++++++- drivers/remoteproc/wkup_m3_rproc.c | 249 +++++++++++++++++++++ include/linux/platform_data/wkup_m3.h | 30 +++ include/linux/remoteproc.h | 4 + 8 files changed, 463 insertions(+), 6 deletions(-) create mode 100644 Documentation/devicetree/bindings/remoteproc/wkup_m3_rproc.txt create mode 100644 drivers/remoteproc/wkup_m3_rproc.c create mode 100644 include/linux/platform_data/wkup_m3.h -- 2.3.0