From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1033855AbbKFVLV (ORCPT ); Fri, 6 Nov 2015 16:11:21 -0500 Received: from mail-gw2-out.broadcom.com ([216.31.210.63]:33472 "EHLO mail-gw2-out.broadcom.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1030450AbbKFVLT (ORCPT ); Fri, 6 Nov 2015 16:11:19 -0500 X-IronPort-AV: E=Sophos;i="5.20,253,1444719600"; d="scan'208";a="79931706" From: Kapil Hali To: Rob Herring , Pawel Moll , "Mark Rutland" , Ian Campbell , Kumar Gala , "Russell King" , Ray Jui , Scott Branden , Jon Mason , Florian Fainelli CC: Gregory Fong , Lee Jones , "Hauke Mehrtens" , Heiko Stuebner , Kever Yang , Maxime Ripard , Olof Johansson , "Paul Walmsley" , Linus Walleij , Chen-Yu Tsai , , , , , Kapil Hali Subject: [PATCH v3 0/4] SMP support for Broadcom NSP Date: Fri, 6 Nov 2015 16:11:09 -0500 Message-ID: <1446844273-6460-1-git-send-email-kapilh@broadcom.com> X-Mailer: git-send-email 2.1.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 Change in v3: * Fixed patch subject from RESEND PATCH to PATCH * Deleted arch/arm/mach-bcm/bcm_nsp.h file * Removed inclusion of header file bcm_nsp.h in platsmp.c * Removed unused variable 'timeout' in nsp_boot_secondary() Changes in v2: Removed the pen_holding method of SMP bringup for NSP SoC and replaced it with simple wakeup of secondary core using ARM IPI. This series adds SMP support for Broadcom's Northstar Plus SoC. There are similar SMP enablement methods for many ARMv7 bsed SoCs. BCM NSP SoC, has a typical such mechanism - after power-on, the secondary core is held in a standby state, primary core provides a startup address for the secondary core and wakes it up. Booting of the secondary core is serialized using pen_release global variable. The startup address is programmed at a special register location which is defined in the device tree using a "secondary-boot-reg" property in a node whose "enable-method" property matches. The first patch adds cpu-enable-method in the device tree bindings documentation. It also updates ARM CPU device tree documentation with Broadcom Northstar Plus CPU details. The second patch adds SMP support to the BCM NSP device tree file. The third patch, enables SMP on BCM NSP. It also consolidates common SMP handling between BCM NSP and BCM Kona. The final patch, enables SMP on BCM 4708 and this patch is pulled in from Jon Mason's patch from the mailing list. This patch series is constructed based on Linux v4.3-rc2. The source code is available at GITHUB: https://github.com/Broadcom/cygnus-linux/tree/nsp-smp-v1 Jon Mason (1): ARM: BCM: Add SMP support for Broadcom 4708 Kapil Hali (3): dt-bindings: add SMP enable-method for Broadcom NSP ARM: dts: add SMP support for Broadcom NSP ARM: BCM: Add SMP support for Broadcom NSP .../bindings/arm/bcm/brcm,nsp-cpu-method.txt | 36 ++++++++++ Documentation/devicetree/bindings/arm/cpus.txt | 1 + arch/arm/boot/dts/bcm-nsp.dtsi | 33 +++++---- arch/arm/boot/dts/bcm4708.dtsi | 2 + arch/arm/mach-bcm/Kconfig | 3 + arch/arm/mach-bcm/Makefile | 11 ++- arch/arm/mach-bcm/{kona_smp.c => platsmp.c} | 82 +++++++++++++++++++--- 7 files changed, 145 insertions(+), 23 deletions(-) create mode 100644 Documentation/devicetree/bindings/arm/bcm/brcm,nsp-cpu-method.txt rename arch/arm/mach-bcm/{kona_smp.c => platsmp.c} (75%) -- 2.1.0 From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kapil Hali Subject: [PATCH v3 0/4] SMP support for Broadcom NSP Date: Fri, 6 Nov 2015 16:11:09 -0500 Message-ID: <1446844273-6460-1-git-send-email-kapilh@broadcom.com> Mime-Version: 1.0 Content-Type: text/plain Return-path: Sender: linux-kernel-owner@vger.kernel.org To: Rob Herring , Pawel Moll , Mark Rutland , Ian Campbell , Kumar Gala , Russell King , Ray Jui , Scott Branden , Jon Mason , Florian Fainelli Cc: Gregory Fong , Lee Jones , Hauke Mehrtens , Heiko Stuebner , Kever Yang , Maxime Ripard , Olof Johansson , Paul Walmsley , Linus Walleij , Chen-Yu Tsai , devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, bcm-kernel-feedback-list@broadcom.com, Kapil Hali List-Id: devicetree@vger.kernel.org Change in v3: * Fixed patch subject from RESEND PATCH to PATCH * Deleted arch/arm/mach-bcm/bcm_nsp.h file * Removed inclusion of header file bcm_nsp.h in platsmp.c * Removed unused variable 'timeout' in nsp_boot_secondary() Changes in v2: Removed the pen_holding method of SMP bringup for NSP SoC and replaced it with simple wakeup of secondary core using ARM IPI. This series adds SMP support for Broadcom's Northstar Plus SoC. There are similar SMP enablement methods for many ARMv7 bsed SoCs. BCM NSP SoC, has a typical such mechanism - after power-on, the secondary core is held in a standby state, primary core provides a startup address for the secondary core and wakes it up. Booting of the secondary core is serialized using pen_release global variable. The startup address is programmed at a special register location which is defined in the device tree using a "secondary-boot-reg" property in a node whose "enable-method" property matches. The first patch adds cpu-enable-method in the device tree bindings documentation. It also updates ARM CPU device tree documentation with Broadcom Northstar Plus CPU details. The second patch adds SMP support to the BCM NSP device tree file. The third patch, enables SMP on BCM NSP. It also consolidates common SMP handling between BCM NSP and BCM Kona. The final patch, enables SMP on BCM 4708 and this patch is pulled in from Jon Mason's patch from the mailing list. This patch series is constructed based on Linux v4.3-rc2. The source code is available at GITHUB: https://github.com/Broadcom/cygnus-linux/tree/nsp-smp-v1 Jon Mason (1): ARM: BCM: Add SMP support for Broadcom 4708 Kapil Hali (3): dt-bindings: add SMP enable-method for Broadcom NSP ARM: dts: add SMP support for Broadcom NSP ARM: BCM: Add SMP support for Broadcom NSP .../bindings/arm/bcm/brcm,nsp-cpu-method.txt | 36 ++++++++++ Documentation/devicetree/bindings/arm/cpus.txt | 1 + arch/arm/boot/dts/bcm-nsp.dtsi | 33 +++++---- arch/arm/boot/dts/bcm4708.dtsi | 2 + arch/arm/mach-bcm/Kconfig | 3 + arch/arm/mach-bcm/Makefile | 11 ++- arch/arm/mach-bcm/{kona_smp.c => platsmp.c} | 82 +++++++++++++++++++--- 7 files changed, 145 insertions(+), 23 deletions(-) create mode 100644 Documentation/devicetree/bindings/arm/bcm/brcm,nsp-cpu-method.txt rename arch/arm/mach-bcm/{kona_smp.c => platsmp.c} (75%) -- 2.1.0 From mboxrd@z Thu Jan 1 00:00:00 1970 From: kapilh@broadcom.com (Kapil Hali) Date: Fri, 6 Nov 2015 16:11:09 -0500 Subject: [PATCH v3 0/4] SMP support for Broadcom NSP Message-ID: <1446844273-6460-1-git-send-email-kapilh@broadcom.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Change in v3: * Fixed patch subject from RESEND PATCH to PATCH * Deleted arch/arm/mach-bcm/bcm_nsp.h file * Removed inclusion of header file bcm_nsp.h in platsmp.c * Removed unused variable 'timeout' in nsp_boot_secondary() Changes in v2: Removed the pen_holding method of SMP bringup for NSP SoC and replaced it with simple wakeup of secondary core using ARM IPI. This series adds SMP support for Broadcom's Northstar Plus SoC. There are similar SMP enablement methods for many ARMv7 bsed SoCs. BCM NSP SoC, has a typical such mechanism - after power-on, the secondary core is held in a standby state, primary core provides a startup address for the secondary core and wakes it up. Booting of the secondary core is serialized using pen_release global variable. The startup address is programmed at a special register location which is defined in the device tree using a "secondary-boot-reg" property in a node whose "enable-method" property matches. The first patch adds cpu-enable-method in the device tree bindings documentation. It also updates ARM CPU device tree documentation with Broadcom Northstar Plus CPU details. The second patch adds SMP support to the BCM NSP device tree file. The third patch, enables SMP on BCM NSP. It also consolidates common SMP handling between BCM NSP and BCM Kona. The final patch, enables SMP on BCM 4708 and this patch is pulled in from Jon Mason's patch from the mailing list. This patch series is constructed based on Linux v4.3-rc2. The source code is available at GITHUB: https://github.com/Broadcom/cygnus-linux/tree/nsp-smp-v1 Jon Mason (1): ARM: BCM: Add SMP support for Broadcom 4708 Kapil Hali (3): dt-bindings: add SMP enable-method for Broadcom NSP ARM: dts: add SMP support for Broadcom NSP ARM: BCM: Add SMP support for Broadcom NSP .../bindings/arm/bcm/brcm,nsp-cpu-method.txt | 36 ++++++++++ Documentation/devicetree/bindings/arm/cpus.txt | 1 + arch/arm/boot/dts/bcm-nsp.dtsi | 33 +++++---- arch/arm/boot/dts/bcm4708.dtsi | 2 + arch/arm/mach-bcm/Kconfig | 3 + arch/arm/mach-bcm/Makefile | 11 ++- arch/arm/mach-bcm/{kona_smp.c => platsmp.c} | 82 +++++++++++++++++++--- 7 files changed, 145 insertions(+), 23 deletions(-) create mode 100644 Documentation/devicetree/bindings/arm/bcm/brcm,nsp-cpu-method.txt rename arch/arm/mach-bcm/{kona_smp.c => platsmp.c} (75%) -- 2.1.0