Received: by 2002:a05:6a10:9e8c:0:0:0:0 with SMTP id y12csp119625pxx; Tue, 27 Oct 2020 23:32:46 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxmWDerLQKWNl9EtjrXHdF2n4PXjyOWeZeeynzMpL5gO8rgN+hq+YxM3S07QkVVUq6RT3N9 X-Received: by 2002:a17:907:2677:: with SMTP id ci23mr6066369ejc.270.1603866766273; Tue, 27 Oct 2020 23:32:46 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1603866766; cv=none; d=google.com; s=arc-20160816; b=emEU6iMsFWArZ2RlfuBDCzfF2Z6yWpSzPz21t2p730mvDEW7zHiHFE6OVlOM6+r04y 5NJZS04LbCt08p79vkpFs28Nf5Hzz9lYHQHwBiGKBtS4vDpzDWpmRxXHq/IeHh7Ld9tz sTpSHvPIcBeW0KfrKdhL1lR9w01oEDB3et+iAa7G2MuD1Y4EwiNi8C0z0DpYn/4NDsM1 EFRX5qpyRlpYCbw8YlFT8F4JN5TBIlIT+uKDsVPV2ASOf2An89ZjaezfTybXzMv9tRb3 9lkPCGd8wFi5+5BpmtBimOihAX0k3PSzZcFisVlz8rpclh5SNl4FkYxKJxsaNOWq3Eyf GocQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=l6aC1Z6GrneH/0LQSaTYaALj0vcTSn1I79U0Ii8Dpq4=; b=sSCK+I57g5Pk9DogSLC4LYxpl2lPyPR605aBCmhZr5mUleAZ+jcV3SS8CVr7Sc3Qyz ISXxdvg7KncGYNeEHhFwRmo52L0koyKmy1soadv3ZwB2HebjlGXb+TiC+8+NE+IlyIZG eLt2dMBz3tpeHVmJmVGbMj+9m2CrIYNxqcTJBR/h1F6VLCk2fijhF/4VITzRBVFeb4XR r9Fp0UclK2aCZ1k6C9e+Gvp3AgH2nD6GiXjkR0nuz09q/XLdEZ8ocNZBonroWz16EaPs Y3aG4SOoPbrVqxdD4Wc3Dl673TiT80HhN+XAuSAWiazaqIKeTgFqTcaICDJ0ALLxW/cb xZpw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id w14si2545272edt.78.2020.10.27.23.32.24; Tue, 27 Oct 2020 23:32:46 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2896624AbgJ0J6p (ORCPT + 99 others); Tue, 27 Oct 2020 05:58:45 -0400 Received: from metis.ext.pengutronix.de ([85.220.165.71]:46751 "EHLO metis.ext.pengutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2410387AbgJ0J5a (ORCPT ); Tue, 27 Oct 2020 05:57:30 -0400 Received: from dude.hi.pengutronix.de ([2001:67c:670:100:1d::7]) by metis.ext.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kXLjK-0004UL-D8; Tue, 27 Oct 2020 10:57:26 +0100 Received: from ore by dude.hi.pengutronix.de with local (Exim 4.92) (envelope-from ) id 1kXLjJ-0004ry-Pr; Tue, 27 Oct 2020 10:57:25 +0100 From: Oleksij Rempel To: Dmitry Torokhov , Alexandru Ardelean , Mark Brown Cc: Oleksij Rempel , kernel@pengutronix.de, linux-kernel@vger.kernel.org, linux-input@vger.kernel.org, linux-spi@vger.kernel.org, David Jander Subject: [PATCH v2 1/2] spi: introduce SPI_MODE_X_MASK macro Date: Tue, 27 Oct 2020 10:57:23 +0100 Message-Id: <20201027095724.18654-2-o.rempel@pengutronix.de> X-Mailer: git-send-email 2.28.0 In-Reply-To: <20201027095724.18654-1-o.rempel@pengutronix.de> References: <20201027095724.18654-1-o.rempel@pengutronix.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SA-Exim-Connect-IP: 2001:67c:670:100:1d::7 X-SA-Exim-Mail-From: ore@pengutronix.de X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-kernel@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Provide a macro to filter all SPI_MODE_0,1,2,3 mode in one run. The latest SPI framework will parse the devicetree in following call sequence: of_register_spi_device() -> of_spi_parse_dt() So, driver do not need to pars the devicetree and will get prepared flags in the probe. On one hand it is good far most drivers. On other hand some drivers need to filter flags provide by SPI framework and apply know to work flags. This drivers may use SPI_MODE_X_MASK to filter MODE flags and set own, known flags: spi->flags &= ~SPI_MODE_X_MASK; spi->flags |= SPI_MODE_0; Signed-off-by: Oleksij Rempel --- include/linux/spi/spi.h | 1 + 1 file changed, 1 insertion(+) diff --git a/include/linux/spi/spi.h b/include/linux/spi/spi.h index 99380c0825db..8097f27702f3 100644 --- a/include/linux/spi/spi.h +++ b/include/linux/spi/spi.h @@ -171,6 +171,7 @@ struct spi_device { #define SPI_MODE_1 (0|SPI_CPHA) #define SPI_MODE_2 (SPI_CPOL|0) #define SPI_MODE_3 (SPI_CPOL|SPI_CPHA) +#define SPI_MODE_X_MASK (SPI_CPOL|SPI_CPHA) #define SPI_CS_HIGH 0x04 /* chipselect active high? */ #define SPI_LSB_FIRST 0x08 /* per-word bits-on-wire */ #define SPI_3WIRE 0x10 /* SI/SO signals shared */ -- 2.28.0