From patchwork Wed Oct 31 16:52:13 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pantelis Antoniou X-Patchwork-Id: 1673051 Return-Path: X-Original-To: patchwork-linux-omap@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork2.kernel.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by patchwork2.kernel.org (Postfix) with ESMTP id 3CC11DFB7B for ; Tue, 30 Oct 2012 19:00:17 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934211Ab2J3S7e (ORCPT ); Tue, 30 Oct 2012 14:59:34 -0400 Received: from li42-95.members.linode.com ([209.123.162.95]:40573 "EHLO li42-95.members.linode.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965649Ab2J3S73 (ORCPT ); Tue, 30 Oct 2012 14:59:29 -0400 Received: from sles11esa.localdomain (unknown [195.97.110.117]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) (Authenticated sender: panto) by li42-95.members.linode.com (Postfix) with ESMTPSA id DB4EE9C1EA; Tue, 30 Oct 2012 18:59:23 +0000 (UTC) From: Pantelis Antoniou To: Tony Lindgren Cc: Pantelis Antoniou , linux-arm-kernel@lists.infradead.org, devicetree-discuss@lists.ozlabs.org, linux-kernel@vger.kernel.org, Koen Kooi , Matt Porter , Russ Dill , linux-omap@vger.kernel.org Subject: [RFC 7/7] capebus: Documentation; capebus-summary Date: Wed, 31 Oct 2012 18:52:13 +0200 Message-Id: <1351702333-8456-8-git-send-email-panto@antoniou-consulting.com> X-Mailer: git-send-email 1.7.12 In-Reply-To: <1351702333-8456-1-git-send-email-panto@antoniou-consulting.com> References: <1351702333-8456-1-git-send-email-panto@antoniou-consulting.com> Sender: linux-omap-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-omap@vger.kernel.org Small summary of capebus. Signed-off-by: Pantelis Antoniou --- Documentation/capebus/capebus-summary | 40 +++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 Documentation/capebus/capebus-summary diff --git a/Documentation/capebus/capebus-summary b/Documentation/capebus/capebus-summary new file mode 100644 index 0000000..742e33c --- /dev/null +++ b/Documentation/capebus/capebus-summary @@ -0,0 +1,40 @@ +Overview of Linux kernel Capebus support +======================================== + +30-Oct-2012 + +What is Capebus? +---------------- +Capebus is an abstract concept. There's no such thing as a vanilla physical +capebus, what is there is a concept and a method on how various capebus +based implementations can be made. + +Capebus is created to address the problem of many SoCs that can provide a +multitude of hardware interfaces but in order to keep costs down the main +boards only support a limited number of them. The rest are typically brought +out to pin connectors on to which other boards, named capes are connected and +allow those peripherals to be used. + +These capes connect to the SoC interfaces but might also contain various other +parts that may need some kind of driver to work. + +Since SoCs have limited pins and pin muxing options, not all capes can work +together so some kind of resource tracking (at least for the pins in use) is +required. + +Before capebus all of this took place in the board support file, and frankly +for boards with too many capes it was becoming unmanageable. + +Capebus provides a virtual bus, which along with a board specific controller, +cape drivers can be written using the standard Linux device model. + +What kind of systems/boards capebus supports? +--------------------------------------------- + +The core capebus infrastructure is not depended on any specific board. +However capebus needs a board controller to provide services to the cape devices +it controls. Services like addressing and resource reservation are provided +by the board controller. + +Capebus at the moment only support TI's Beaglebone platform. +