From patchwork Mon Aug 24 08:40:08 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Martin Sperl X-Patchwork-Id: 7061701 Return-Path: X-Original-To: patchwork-linux-spi@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 84ED4C05AC for ; Mon, 24 Aug 2015 08:40:55 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 9F2E220627 for ; Mon, 24 Aug 2015 08:40:54 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id A325F20708 for ; Mon, 24 Aug 2015 08:40:53 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932776AbbHXIki (ORCPT ); Mon, 24 Aug 2015 04:40:38 -0400 Received: from 212-186-180-163.dynamic.surfer.at ([212.186.180.163]:59105 "EHLO cgate.sperl.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932627AbbHXIk3 (ORCPT ); Mon, 24 Aug 2015 04:40:29 -0400 Received: from raspb.intern.sperl.org (account martin@sperl.org [10.10.10.32] verified) by sperl.org (CommuniGate Pro SMTP 6.1.2) with ESMTPSA id 6342155; Mon, 24 Aug 2015 08:40:18 +0000 From: kernel@martin.sperl.org To: Stephen Warren , Lee Jones , Russell King , Mark Brown , Mark Rutland , devicetree@vger.kernel.org, linux-rpi-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-spi@vger.kernel.org, Ian Campbell , Rob Herring , Pawel Moll , Kumar Gala Cc: Martin Sperl Subject: [PATCH v4 5/5] dt/bindings: bcm2835: Add binding documentation for auxiliar spi devices Date: Mon, 24 Aug 2015 08:40:08 +0000 Message-Id: <1440405608-3995-6-git-send-email-kernel@martin.sperl.org> X-Mailer: git-send-email 1.7.10.4 In-Reply-To: <1440405608-3995-1-git-send-email-kernel@martin.sperl.org> References: <1440405608-3995-1-git-send-email-kernel@martin.sperl.org> Sender: linux-spi-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-spi@vger.kernel.org X-Spam-Status: No, score=-8.3 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Martin Sperl Signed-off-by: Martin Sperl --- .../bindings/spi/brcm,bcm2835-aux-spi.txt | 61 ++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 Documentation/devicetree/bindings/spi/brcm,bcm2835-aux-spi.txt 1.7.10.4 -- To unsubscribe from this list: send the line "unsubscribe linux-spi" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/Documentation/devicetree/bindings/spi/brcm,bcm2835-aux-spi.txt b/Documentation/devicetree/bindings/spi/brcm,bcm2835-aux-spi.txt new file mode 100644 index 0000000..2a69a3b --- /dev/null +++ b/Documentation/devicetree/bindings/spi/brcm,bcm2835-aux-spi.txt @@ -0,1 +1,61 @@ +Broadcom BCM2835 auxiliar SPI1/2 controller + +The BCM2835 contains two forms of SPI master controller, one known simply as +SPI0, and the other known as the "Universal SPI Master"; part of the +auxiliary block. This binding applies to the SPI1/2 controller. + +Required properties: +- compatible: Should be "brcm,bcm2835-aux-spi". +- reg: Should contain register location and length for the spi block + as well as for the common aux block control +- interrupts: Should contain shared interrupt of the aux block +- clocks: The clock feeding the SPI controller. +- cs-gpios: the cs-gpios (native cs is NOT supported) + see also spi-bus.txt +- bcrm,aux-enable: the bcrm,bcm2835-aux-enable config entry to handle + enabling/disabling of the spi1/spi2/uart1 HW block + second "argument" is the mask to apply to the + enable register + +Example: + +spi1@7e215080 { + compatible = "brcm,bcm2835-aux-spi"; + reg = <0x7e215080 0x40>; + interrupts = <1 29>; + clocks = <&clk_spi>; + #address-cells = <1>; + #size-cells = <0>; + cs-gpios = <&gpio 18>, <&gpio 17>, <&gpio 16>; + bcrm,aux-enable = <&aux_enable 2>; +}; + +spi2@7e2150c0 { + compatible = "brcm,bcm2835-aux-spi"; + reg = <0x7e2150c0 0x40>; + interrupts = <1 29>; + clocks = <&clk_spi>; + #address-cells = <1>; + #size-cells = <0>; + cs-gpios = <&gpio 43>, <&gpio 44>, <&gpio 45>; + bcrm,aux-enable = <&aux_enable 4>; +}; + +/* the necessary syscon config referenced above*/ +aux_enable: aux_enable@0x7e215004 { + compatible = "bcrm,bcm2835-aux"; + reg = <0x7e215004 0x04>; +}; + +Note that it also requires the GPIOs to be set up with the +correct ALT-functions. + +For spi1 the following pins need to be set as: +* ALT4: 19, 20, 21 (MISO, MOSI, SCK) + +For spi2 the following pins need to be set as: +* ALT4: 40, 41, 42 (MISO, MOSI, SCK) + +CS-GPIOS need to get set as output - typically: +* spi1: 18, 17, 16 (CS0, CS1, CS2) +* spi2: 43, 44, 45 (CS0, CS1, CS2) --