From patchwork Sun Dec 1 18:19:20 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: takasi-y@ops.dti.ne.jp X-Patchwork-Id: 3262551 Return-Path: X-Original-To: patchwork-linux-sh@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 18CB8BEEAD for ; Sun, 1 Dec 2013 18:38:19 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 42FD6203AA for ; Sun, 1 Dec 2013 18:38:18 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 64E0720348 for ; Sun, 1 Dec 2013 18:38:17 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751910Ab3LASiR (ORCPT ); Sun, 1 Dec 2013 13:38:17 -0500 Received: from gw.cm.dream.jp ([59.157.128.2]:53406 "EHLO vsmtp02.cm.dti.ne.jp" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751845Ab3LASiQ (ORCPT ); Sun, 1 Dec 2013 13:38:16 -0500 X-Greylist: delayed 1201 seconds by postgrey-1.27 at vger.kernel.org; Sun, 01 Dec 2013 13:37:56 EST Received: from okucha.tokox1.kt.home.ne.jp (110-133-65-132.rev.home.ne.jp [110.133.65.132]) by vsmtp02.cm.dti.ne.jp (3.11v) with ESMTP AUTH id rB1IJP6t004587; Mon, 2 Dec 2013 03:19:51 +0900 (JST) From: takasi-y@ops.dti.ne.jp To: linux-sh@vger.kernel.org Cc: Simon Horman , Magnus Damm , Linus Walleij , Mark Brown , linux-spi@vger.kernel.org Subject: [PATCH 09/11] ARM: shmobile: r8a7791: MSIOF platform device Date: Mon, 2 Dec 2013 03:19:20 +0900 Message-Id: <1385921962-19843-9-git-send-email-takasi-y@ops.dti.ne.jp> X-Mailer: git-send-email 1.7.9.5 In-Reply-To: <1385921962-19843-1-git-send-email-takasi-y@ops.dti.ne.jp> References: <20131202031557.162e78d407d82effdee627ac@ops.dti.ne.jp> <1385921962-19843-1-git-send-email-takasi-y@ops.dti.ne.jp> Sender: linux-sh-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-sh@vger.kernel.org X-Spam-Status: No, score=-6.9 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: Takashi Yoshii Define resources for msiof0,1,2. HWM says there is msiof3, but omit it because its clock, reset and irqs are not seen on HWM. Anyway, only msiof0 is registerd, so far, because others lack of chance for testing. msiof0 has id=1 (spi_sh_msiof.1), for a compatibility with BSP. Signed-off-by: Takashi Yoshii --- arch/arm/mach-shmobile/setup-r8a7791.c | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/arch/arm/mach-shmobile/setup-r8a7791.c b/arch/arm/mach-shmobile/setup-r8a7791.c index cddca99..5669fa0 100644 --- a/arch/arm/mach-shmobile/setup-r8a7791.c +++ b/arch/arm/mach-shmobile/setup-r8a7791.c @@ -26,6 +26,7 @@ #include #include #include +#include #include #include #include @@ -200,6 +201,34 @@ static const struct resource thermal_resources[] __initconst = { thermal_resources, \ ARRAY_SIZE(thermal_resources)) +static const struct sh_msiof_spi_info sh_msiof_info __initconst = { + .rx_fifo_override = 256, + .num_chipselect = 1, + .rx_need_dummy_tx = 1, +}; + +static const struct resource sh_msiof0_resources[] __initconst = { + DEFINE_RES_MEM(0xe6e20000, 0x0064), + DEFINE_RES_IRQ(gic_spi(156)), +}; + +static const struct resource sh_msiof1_resources[] __initconst = { + DEFINE_RES_MEM(0xe6e10000, 0x0064), + DEFINE_RES_IRQ(gic_spi(157)), +}; + +static const struct resource sh_msiof2_resources[] __initconst = { + DEFINE_RES_MEM(0xe6e00000, 0x0064), + DEFINE_RES_IRQ(gic_spi(158)), +}; + +#define r8a7791_register_msiof(idx) \ + platform_device_register_resndata(&platform_bus, "spi_sh_msiof", \ + (idx+1), sh_msiof##idx##_resources, \ + ARRAY_SIZE(sh_msiof##idx##_resources), \ + &sh_msiof_info, \ + sizeof(struct sh_msiof_spi_info)) + void __init r8a7791_add_dt_devices(void) { r8a7791_register_scif(SCIFA0); @@ -218,6 +247,7 @@ void __init r8a7791_add_dt_devices(void) r8a7791_register_scif(SCIFA4); r8a7791_register_scif(SCIFA5); r8a7791_register_cmt(00); + r8a7791_register_msiof(0); } void __init r8a7791_add_standard_devices(void)