From patchwork Thu Sep 20 01:31:58 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stephen Warren X-Patchwork-Id: 185296 Return-Path: X-Original-To: incoming-imx@patchwork.ozlabs.org Delivered-To: patchwork-incoming-imx@bilbo.ozlabs.org Received: from merlin.infradead.org (unknown [IPv6:2001:4978:20e::2]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id 1F0F32C0085 for ; Thu, 20 Sep 2012 11:34:13 +1000 (EST) Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.76 #1 (Red Hat Linux)) id 1TEVco-0000AW-CE; Thu, 20 Sep 2012 01:32:18 +0000 Received: from avon.wwwdotorg.org ([2001:470:1f0f:bd7::2]) by merlin.infradead.org with esmtps (Exim 4.76 #1 (Red Hat Linux)) id 1TEVck-00009z-IC; Thu, 20 Sep 2012 01:32:15 +0000 Received: from severn.wwwdotorg.org (unknown [192.168.65.5]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by avon.wwwdotorg.org (Postfix) with ESMTPS id B1709636A; Wed, 19 Sep 2012 19:32:45 -0600 (MDT) Received: from dart.wifi.foxrun.wwwdotorg.org (unknown [192.168.62.30]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by severn.wwwdotorg.org (Postfix) with ESMTPSA id 31A06E4103; Wed, 19 Sep 2012 19:32:12 -0600 (MDT) From: Stephen Warren To: arm@kernel.org Subject: [GIT PULL] ARM: add basic BCM2835 SoC and Raspberry Pi board support Date: Wed, 19 Sep 2012 19:31:58 -0600 Message-Id: <1348104718-21751-1-git-send-email-swarren@wwwdotorg.org> X-Mailer: git-send-email 1.7.9.5 X-NVConfidentiality: public X-Virus-Scanned: clamav-milter 0.96.5 at avon.wwwdotorg.org X-Virus-Status: Clean X-Spam-Note: CRM114 invocation failed X-Spam-Score: -2.5 (--) X-Spam-Report: SpamAssassin version 3.3.2 on merlin.infradead.org summary: Content analysis details: (-2.5 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 SPF_PASS SPF: sender matches SPF record -0.6 RP_MATCHES_RCVD Envelope sender domain matches handover relay domain -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] Cc: linux-rpi-kernel@lists.infradead.org, linux-arm-kernel@lists.infradead.org, Stephen Warren X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.14 Precedence: list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: linux-arm-kernel-bounces@lists.infradead.org Errors-To: linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org List-Id: linux-imx-kernel.lists.patchwork.ozlabs.org The BCM2835 is an ARM SoC from Broadcom. This patch adds very basic support for this SoC; enough to boot the system into an initrd with UART console, interrupt controller, timers, and a stub clock driver. Also provided is a similarly basic device tree for the Raspberry Pi Model B board. This series was written by Simon Arlott, Chris Boot, and Dom Cobley downstream, with reference to a Broadcom tree, and modified for upstream and submitted by Stephen Warren. ---------------------------------------------------------------- The following changes since commit 55d512e245bc7699a8800e23df1a24195dd08217: Linux 3.6-rc5 are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/swarren/linux-tegra.git rpi-for-3.7 for you to fetch changes up to f680f25c635a1a4327bef34fcbe1e9e3777b546c: MAINTAINERS: add an entry for the BCM2835 ARM sub-architecture ---------------------------------------------------------------- Simon Arlott (5): ARM: add infra-structure for BCM2835 and Raspberry Pi ARM: bcm2835: add interrupt controller driver ARM: bcm2835: add system timer ARM: bcm2835: add stub clock driver ARM: bcm2835: instantiate console UART Stephen Warren (1): MAINTAINERS: add an entry for the BCM2835 ARM sub-architecture Documentation/devicetree/bindings/arm/bcm2835.txt | 8 + .../brcm,bcm2835-armctrl-ic.txt | 110 +++++++ .../bindings/timer/brcm,bcm2835-system-timer.txt | 22 ++ .../devicetree/bindings/vendor-prefixes.txt | 1 + MAINTAINERS | 10 + arch/arm/Kconfig | 17 ++ arch/arm/Makefile | 1 + arch/arm/boot/dts/bcm2835-rpi-b.dts | 12 + arch/arm/boot/dts/bcm2835.dtsi | 39 +++ arch/arm/configs/bcm2835_defconfig | 95 ++++++ arch/arm/mach-bcm2835/Makefile | 1 + arch/arm/mach-bcm2835/Makefile.boot | 5 + arch/arm/mach-bcm2835/bcm2835.c | 64 +++++ arch/arm/mach-bcm2835/include/mach/bcm2835_soc.h | 29 ++ arch/arm/mach-bcm2835/include/mach/debug-macro.S | 21 ++ arch/arm/mach-bcm2835/include/mach/timex.h | 26 ++ arch/arm/mach-bcm2835/include/mach/uncompress.h | 45 +++ drivers/Kconfig | 2 + drivers/Makefile | 2 + drivers/clk/Makefile | 1 + drivers/clk/clk-bcm2835.c | 59 ++++ drivers/clocksource/Makefile | 1 + drivers/clocksource/bcm2835_timer.c | 161 +++++++++++ drivers/irqchip/Makefile | 1 + drivers/irqchip/irq-bcm2835.c | 223 +++++++++++++++ include/linux/bcm2835_timer.h | 22 ++ include/linux/clk/bcm2835.h | 24 ++ include/linux/irqchip/bcm2835.h | 29 ++ 28 files changed, 1031 insertions(+) create mode 100644 Documentation/devicetree/bindings/arm/bcm2835.txt create mode 100644 Documentation/devicetree/bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt create mode 100644 Documentation/devicetree/bindings/timer/brcm,bcm2835-system-timer.txt create mode 100644 arch/arm/boot/dts/bcm2835-rpi-b.dts create mode 100644 arch/arm/boot/dts/bcm2835.dtsi create mode 100644 arch/arm/configs/bcm2835_defconfig create mode 100644 arch/arm/mach-bcm2835/Makefile create mode 100644 arch/arm/mach-bcm2835/Makefile.boot create mode 100644 arch/arm/mach-bcm2835/bcm2835.c create mode 100644 arch/arm/mach-bcm2835/include/mach/bcm2835_soc.h create mode 100644 arch/arm/mach-bcm2835/include/mach/debug-macro.S create mode 100644 arch/arm/mach-bcm2835/include/mach/timex.h create mode 100644 arch/arm/mach-bcm2835/include/mach/uncompress.h create mode 100644 drivers/clk/clk-bcm2835.c create mode 100644 drivers/clocksource/bcm2835_timer.c create mode 100644 drivers/irqchip/Kconfig create mode 100644 drivers/irqchip/Makefile create mode 100644 drivers/irqchip/irq-bcm2835.c create mode 100644 include/linux/bcm2835_timer.h create mode 100644 include/linux/clk/bcm2835.h create mode 100644 include/linux/irqchip/bcm2835.h