From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 31152C433F5 for ; Wed, 5 Oct 2022 12:19:18 +0000 (UTC) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 3043484E3B; Wed, 5 Oct 2022 14:19:14 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=sancloud.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (1024-bit key; unprotected) header.d=sancloud.onmicrosoft.com header.i=@sancloud.onmicrosoft.com header.b="WD0flWGq"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 70DED844FC; Wed, 5 Oct 2022 14:18:59 +0200 (CEST) Received: from GBR01-LO2-obe.outbound.protection.outlook.com (mail-lo2gbr01on2123.outbound.protection.outlook.com [40.107.10.123]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id 6FF1E844FC for ; Wed, 5 Oct 2022 14:18:56 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=sancloud.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=paul.barker@sancloud.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fDKrrz86d36J5vx6YnxWCOxN2Srx87xs5TEsBDKM1U+qVyZzBblZeu0ZChPO2T1BCcm0iMKGnGeY99RNGKEyjLdtXTmxQLlaO8ynGEsPOFRMcLGl/DmhXtwhfI8JmW5tfkaVIGUkskgB928e3TQUzANJOQ1swLrjapGRhvLjzaxLffA1MPG2zYMZbHSCw0Vkosv0/9+t5/Pp8jYXPS5/bDrK0C45h1oyGQXDg1cQV0nB4ONq6RQo4ITQs2Y8gJJwoPbYCqLd5XLtMZJdwCviV6PBcFocxcPKDhrHYx54KJCtksGt6ZUXQZsdyruJESIyJhrvlqb/ImHHmGiKztZIVQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=km6Ro4h842fiyif+b0aunUX3mTAUG0J58FidFk9+33w=; b=JICmQjiNm3d0sq3C13epcmKczGwv5uMy91Guj+WrptyMGcHWVL/MR6vDURZAfQRcYqIWU2akzpLrbNAjVrl/1RCZ1hNLH8YzeMPGeBxA5s6T8f6ZkjFEq008BZC6UgHNdALTI0bvNO5umVJCR0HUQGcwg2Gk1DUHMNPPk4eyrkqmIxBo9AUBb5FiYmw00uno8s2ZL3RgU7aEAbM1B5N6ks2sVN9fB9XxRcUECnzyDrZHu9TPD5cc3Elp0lmQjd5uyfxL5qvp7GtyRgDoYGb3bOyenzvGpSNV1r+ZA3CqpiXeGUHVZEek3GSHqyyEDxZDDCvXNCXXyalprJg28hNlqw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=sancloud.com; dmarc=pass action=none header.from=sancloud.com; dkim=pass header.d=sancloud.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sancloud.onmicrosoft.com; s=selector2-sancloud-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=km6Ro4h842fiyif+b0aunUX3mTAUG0J58FidFk9+33w=; b=WD0flWGqkpB4ZkUDAcqZaBurQbYt5WWF3uAKYe4Jj8cWcr+gNkKY9ab3IGJxv2WdceKsS9Xo6eHg2/yOjKsmbadOrJHi3OP3lvByilJ+I6h32emYc7/H0j1nmh7MneRFUfbvzg1HALtGXy0deZcxbG/NXAnZMm53SnGa5HlWO/U= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=sancloud.com; Received: from CWLP123MB2241.GBRP123.PROD.OUTLOOK.COM (2603:10a6:401:61::19) by LO6P123MB6536.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:2b0::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5676.32; Wed, 5 Oct 2022 12:18:55 +0000 Received: from CWLP123MB2241.GBRP123.PROD.OUTLOOK.COM ([fe80::11d5:40af:9060:6b08]) by CWLP123MB2241.GBRP123.PROD.OUTLOOK.COM ([fe80::11d5:40af:9060:6b08%6]) with mapi id 15.20.5676.031; Wed, 5 Oct 2022 12:18:55 +0000 From: Paul Barker To: u-boot@lists.denx.de, Heinrich Schuchardt , Ilias Apalodimas , Tom Rini , Jagan Teki Cc: Paul Barker Subject: [PATCH v4 1/6] spi: Implement spi_set_speed Date: Wed, 5 Oct 2022 13:18:34 +0100 Message-Id: <20221005121839.3938771-2-paul.barker@sancloud.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20221005121839.3938771-1-paul.barker@sancloud.com> References: <20221005121839.3938771-1-paul.barker@sancloud.com> Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: LO2P265CA0191.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a::35) To CWLP123MB2241.GBRP123.PROD.OUTLOOK.COM (2603:10a6:401:61::19) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CWLP123MB2241:EE_|LO6P123MB6536:EE_ X-MS-Office365-Filtering-Correlation-Id: 29808455-2657-4417-59e8-08daa6cbc5c8 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: nf7HDvi7FRtv4qgCYVjSiUnIMMqrSXQJBbXjGcM+w9A58111P0EajHaMDNqVlAkGoXaV8utZj5htx0QUjaIEIei/McJqmXLlfVuC2otbqCRUQIgOYHwQR+jzfSekIY2KGtEQA5t4m6xOjvgr+d+/K2cu33B7eg0dnmiSEg6cWsCXtWKmbZIYSECFu3XhVf+Wujq7WgTyDZl9KZNrzlaCsWGe5EaXo/nX4BEubZAEZfs82O4RwEGFAqqTraNy8xmU/VFy6FfWD1Qrtsa5pbfREOgnamnhLfkN1sQOE95xs5F+trZnS2jARyrmttn3WjJ2h39IPv8UsuUhElNXaR5oH/YS/5BnO/p4gdxA8gQgiiql0nPo9yFncOmDuodR727F5J5YfzPy0BIciBgvTrbvGufOLT+u6ExJnYwXM5XQa1+PJ1tUfRJk3UM7ae6XXKLRKe2SHX8NI3LQ+iqj2yptm4MX4FYnHT0YoG2ePdcagqOtzjQy4azUmPNpl8y/3VcIufq84Z3JOTZ4XwaO/6oWEXG4h1mktswAXlb/K2nXypYyRyt+Up0zpGCgCiRVTSsLhU1ByvCciwug90JFcX0hpA91uYppl3wc1nqsRPSVYBrfbgcxQyxi58t0EVIItmgSpqaEp0JlnhOxEZxK4sJF3MCYLqG+Q7BW4rXvmPD0pjcfz+K89mMirZwWthjVmlEQmtUYSCqSrbx5XeaBaRhLdVr4mVx+JqPhu7eu/ynngPan/QEza0Y++xgAhCvQGywQwrjm6L7lKF/1wmmpF5n9naObnKb1GGMXmd2p9mCN9votOuSm8u6UqBWhXaZeEpb0 X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CWLP123MB2241.GBRP123.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFS:(13230022)(396003)(346002)(136003)(39830400003)(366004)(376002)(451199015)(36756003)(2906002)(6486002)(66556008)(66476007)(66946007)(8676002)(4326008)(38350700002)(41300700001)(478600001)(8936002)(44832011)(110136005)(5660300002)(316002)(2616005)(1076003)(83380400001)(52116002)(86362001)(38100700002)(26005)(6506007)(6512007)(6666004)(107886003)(186003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?vgCCB6ssvktI+jxoaSkETWJMALoud6QDQlzJA57Js9P79kJQCGRN1lCdf7Dp?= =?us-ascii?Q?gvoQSDuPRD0aKSH8Q7tefo9YQ8154SgZ3Y+6rXFTx1OO9NZd7uE8p0iln9MO?= =?us-ascii?Q?S3E42iY0AIcZt59jhc8uUUFS0WVS7QeCr+1YxlNKlDBbrRm9wzxOFb86eTdc?= =?us-ascii?Q?A64QcOUE3j4zrRmN7VM/2tdbW5ihoFQCbFwwjQdTxZ/Iswld6vhISaQ7Y8Dg?= =?us-ascii?Q?1sRFlHq9n09gEr4OBNh1byMc+71s1DBa4gY+FK2pnBslv9LMYnu1M6TfD+XU?= =?us-ascii?Q?qFnfWz5CxFxlnzcThmWX7/mqQzIVIc8twQ45CHOqmeE1tRqBeMCo48nudvjV?= =?us-ascii?Q?zovy6YIDZoWgSVtUSbmp7LQT9uQVuKNqWKUPVxMWQpimOLReVTwiF+9qM4L+?= =?us-ascii?Q?lnNJQ5NdwDpDXKklG0A753ZMAl/bUNwQdsoLCjY2slA2iWXx8D0MuhwJEOYB?= =?us-ascii?Q?4XWcxv9X/x3vQoFM8XOY5qMP52ZaYUqel7LD3c4+Z8WlFYn0f2NzX/9NKAh+?= =?us-ascii?Q?ECD/3lN3vsmXgJGLsbst2HHc7dbYbkHvf3ss1csQg6nCNSuGBpPg9CpPH3eD?= =?us-ascii?Q?eSUd8uEwnXNFqAIY2NrdukyvSXVW/iP/Ny89YtAtg+rmykb7nzrpqfOhxdUL?= =?us-ascii?Q?faExzgU//49f9OfsGV8Rfa6KxqE5tUTexwV44Ov2OYKpaVLIz77Uzb3X/Em1?= =?us-ascii?Q?JJ1FdXNGpB7LITq+e3Ujug6wkdXr0QIYdwHx7TitADRfOfdDn0mtS+eepVSc?= =?us-ascii?Q?DcmpoqgZF3VUdiMrmQwk3Y6IJ5nkY0uWA2ENezrRlZqkMmALcxF7v7bV6PSm?= =?us-ascii?Q?xJt5xKlZ+6MTmZ//2UVgnMkFYGHPyNQM9so1jrXLxxwoCUmC3fSbh8U+Ke1c?= =?us-ascii?Q?Du73fKab1rv9htWc0TT7BBrOv8uINSnUtHn7yywzSuV1Pmdnaibi6foYG7Ta?= =?us-ascii?Q?V1qpyA084LSNZXErfhRxT0nAcTgle4hmTUAGjJrTnM2IYuSAPrTgz/o+tOZX?= =?us-ascii?Q?M0PV/3O1TcBMk0NvVBS0R3u/ovoQqMN4xOjKOp9wQo0PfA08SaR//2ba6VC+?= =?us-ascii?Q?vzf1vUbzPpcDQVPC0CY62wpr8SnvZtYvddMgjg+7hWyt0pLZ0bYiloAmzlE2?= =?us-ascii?Q?T1+9erqGYtlg+VgYNXeEDW8NjMX78SSqR9rH1TmAK3N/08MtmVovGJE1mv2F?= =?us-ascii?Q?ZqEsxaVxmvRNwQuOCmACRkSQxeMEM97zZUq/gJtUo4fomecaNMKIxbdNKEZr?= =?us-ascii?Q?m5vJ4gMkBuUHZktrRu6oYgAoNC5hyXXVV/3osVIn9V1JCkkUzg270GD27Ist?= =?us-ascii?Q?PeWGDHa2TQMrUoS8vzVcvQjQCjyweFt9KlT8TDu0lETHtXgEUrrmfMngfLDJ?= =?us-ascii?Q?P/TRaLkOlJcGe6AO/Racm1kMJdibtcJMJX0aJc6DAOQVsLn7uh+dkW/Jxpu1?= =?us-ascii?Q?LpwTZtq6e2hG4m0aUVx85pEiseNWtU0/6bKm4iHmrEkgidseSqE7Ebv+nE8S?= =?us-ascii?Q?PuQ863dkf30CW1YMJr7hf6C2GloP9XDUEkp0N7hoX1NpmEWnwCcBWM9rGxYy?= =?us-ascii?Q?0yq30M9G5PEG5NxCErUquB0NkN95y4qyV4WL0LD+1Gu1iD0sVD5N4ulIh+H4?= =?us-ascii?Q?cg=3D=3D?= X-OriginatorOrg: sancloud.com X-MS-Exchange-CrossTenant-Network-Message-Id: 29808455-2657-4417-59e8-08daa6cbc5c8 X-MS-Exchange-CrossTenant-AuthSource: CWLP123MB2241.GBRP123.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Oct 2022 12:18:55.4410 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 840be37c-244a-450e-9bcc-2064862de1f4 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: EBLuchtE3StBioYPBR/V0rgijSfIOHSo6wertP9kNkvVesAFMchQVu1VZm58u5W2/wzr8dPo1An9IKCNA4P0qiRRH7x6ffIw6KfeSrjTbhs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: LO6P123MB6536 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.39 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.103.6 at phobos.denx.de X-Virus-Status: Clean This function is already defined in spi.h but no implementation of it currently exists in the tree. The implementation is based on the static function spi_set_speed_mode(). The function prototype is modified so that an success or error condition can be returned to the caller. Signed-off-by: Paul Barker --- drivers/spi/spi-uclass.c | 15 +++++++++++++++ include/spi.h | 2 +- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-uclass.c b/drivers/spi/spi-uclass.c index f2791c4b88ec..c929e7c1d0e9 100644 --- a/drivers/spi/spi-uclass.c +++ b/drivers/spi/spi-uclass.c @@ -130,6 +130,21 @@ void spi_release_bus(struct spi_slave *slave) dm_spi_release_bus(slave->dev); } +int spi_set_speed(struct spi_slave *slave, uint hz) +{ + struct dm_spi_ops *ops; + int ret; + + ops = spi_get_ops(slave->dev->parent); + if (ops->set_speed) + ret = ops->set_speed(slave->dev->parent, hz); + else + ret = -EINVAL; + if (ret) + dev_err(slave->dev, "Cannot set speed (err=%d)\n", ret); + return ret; +} + int spi_xfer(struct spi_slave *slave, unsigned int bitlen, const void *dout, void *din, unsigned long flags) { diff --git a/include/spi.h b/include/spi.h index 9a8c1fb260e6..de97ffb4c385 100644 --- a/include/spi.h +++ b/include/spi.h @@ -353,7 +353,7 @@ void spi_cs_deactivate(struct spi_slave *slave); * @slave: The SPI slave * @hz: The transfer speed */ -void spi_set_speed(struct spi_slave *slave, uint hz); +int spi_set_speed(struct spi_slave *slave, uint hz); /** * Write 8 bits, then read 8 bits. -- 2.25.1