From patchwork Thu Mar 7 14:43:56 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Jan_Kundr=C3=A1t?= X-Patchwork-Id: 10843249 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 3A64A1390 for ; Thu, 7 Mar 2019 15:39:55 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 27D712E99E for ; Thu, 7 Mar 2019 15:39:55 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 19F182E9EE; Thu, 7 Mar 2019 15:39:55 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id ADB072E99E for ; Thu, 7 Mar 2019 15:39:54 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726387AbfCGPjy (ORCPT ); Thu, 7 Mar 2019 10:39:54 -0500 Received: from office2.cesnet.cz ([195.113.144.244]:47668 "EHLO office2.cesnet.cz" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726275AbfCGPjy (ORCPT ); Thu, 7 Mar 2019 10:39:54 -0500 Received: from localhost (unknown [IPv6:2001:718:1:2c:9077:1a3:d51f:f1d6]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by office2.cesnet.cz (Postfix) with ESMTPSA id 5F3BE400052; Thu, 7 Mar 2019 16:39:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cesnet.cz; s=office2; t=1551973192; bh=5yyRKwdtW+Qqiy8/FPe81wSkccK0WZ4x9PDol404N8M=; h=Resent-Date:Resent-From:Resent-To:Resent-Cc:In-Reply-To: References:From:Date:Subject:To:Cc; b=erRL7LJot5GbUyE9czdB2oc7eHQJixdjNiw6aDqYvnAIIfCEaV8UjRH8MeKxiLVlS 1pnYac+wzurTXlLpklv+y69uDHuQVq0vptWFfs99SNsQLQQJZlhwHGS+ySRqWdKUWD fPtel34JO7/h1emBdk/iMjrNPsNAFiDubmVz4zUo= Message-Id: In-Reply-To: References: From: =?utf-8?q?Jan_Kundr=C3=A1t?= Date: Thu, 7 Mar 2019 15:43:56 +0100 Subject: [PATCH 3/3] Revert "spi: orion: Prepare space for per-child options" To: linux-spi@vger.kernel.org, Mark Brown , Jonas Bonn Cc: Kosta Zertsekel , Baolin Wang , Chris Packham Sender: linux-spi-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-spi@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP That commit only made sense when there were more per-child options such as per-slave interword delay, perhaps obtained via DT. That never happened. Instead, the inter-word delay feature got implemented during the 5.1 cycle, but it works on a per-transfer basis rather than per-child. This means that it is quite likely that we won't be stashing more per-child options in that struct, and I can clean up after myself. Sorry for noise. This reverts commit 5c22af7eeb265413b80eb8e03ae708e1b222728c. Signed-off-by: Jan Kundrát --- drivers/spi/spi-orion.c | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/drivers/spi/spi-orion.c b/drivers/spi/spi-orion.c index eb70a9dc31ac..7d2e9bcc8b30 100644 --- a/drivers/spi/spi-orion.c +++ b/drivers/spi/spi-orion.c @@ -91,10 +91,6 @@ struct orion_direct_acc { u32 size; }; -struct orion_child_options { - struct orion_direct_acc direct_access; -}; - struct orion_spi { struct spi_master *master; void __iomem *base; @@ -103,7 +99,7 @@ struct orion_spi { const struct orion_spi_dev *devdata; int unused_hw_gpio; - struct orion_child_options child[ORION_NUM_CHIPSELECTS]; + struct orion_direct_acc direct_access[ORION_NUM_CHIPSELECTS]; }; static inline void __iomem *spi_reg(struct orion_spi *orion_spi, u32 reg) @@ -442,7 +438,7 @@ orion_spi_write_read(struct spi_device *spi, struct spi_transfer *xfer) * Use SPI direct write mode if base address is available. Otherwise * fall back to PIO mode for this transfer. */ - vaddr = orion_spi->child[cs].direct_access.vaddr; + vaddr = orion_spi->direct_access[cs].vaddr; if (vaddr && xfer->tx_buf && word_len == 8) { unsigned int cnt = count / 4; @@ -687,7 +683,6 @@ static int orion_spi_probe(struct platform_device *pdev) } for_each_available_child_of_node(pdev->dev.of_node, np) { - struct orion_direct_acc *dir_acc; u32 cs; int cs_gpio; @@ -755,13 +750,14 @@ static int orion_spi_probe(struct platform_device *pdev) * This needs to get extended for the direct SPI-NOR / SPI-NAND * support, once this gets implemented. */ - dir_acc = &spi->child[cs].direct_access; - dir_acc->vaddr = devm_ioremap(&pdev->dev, r->start, PAGE_SIZE); - if (!dir_acc->vaddr) { + spi->direct_access[cs].vaddr = devm_ioremap(&pdev->dev, + r->start, + PAGE_SIZE); + if (!spi->direct_access[cs].vaddr) { status = -ENOMEM; goto out_rel_axi_clk; } - dir_acc->size = PAGE_SIZE; + spi->direct_access[cs].size = PAGE_SIZE; dev_info(&pdev->dev, "CS%d configured for direct access\n", cs); }