Received: by 2002:a05:6830:16d2:b0:61c:ac69:ca1b with SMTP id l18csp2102743otr; Mon, 25 Jul 2022 07:22:10 -0700 (PDT) X-Google-Smtp-Source: AGRyM1sXg7qVM+2kWYKMg7LN6DXOOVaWUmNMUjdDZcS080++BC7fLjKVoYZWTlSPapMB83CHn85n X-Received: by 2002:a17:902:b593:b0:16c:4d8a:c8b0 with SMTP id a19-20020a170902b59300b0016c4d8ac8b0mr13078988pls.9.1658758929764; Mon, 25 Jul 2022 07:22:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1658758929; cv=none; d=google.com; s=arc-20160816; b=mbZWDyu/rpBxMKULAlz4xjmhPPyWD03w9UPKwLT3wxs8VjIpXDtxvIYUokGSjiao1x 4uMJTqSKhCYj6AtvLwHP9rD2yz8QDfgqYcayteJR7XOynL677tpYL3319BFGFWxUVAIa 4OUw8yEWQERMSmUvp87wtSuWkxeWTWbGvoqGZz3uQdOSZzb0FIN8Bm43KXLkVeqUnaLM cwvC7P3Ez+I1LJb5kgjqKYcCrs1oD2DbNbRz3kFvcb1Xlz6vxaRF0NN3zHwT+bxFRnkq 9eR+APSnwiYMNaAaCVLV5BCSwghvLvT2E5SPVKwJSrnb5J0ZjHya4I9usbhS5jnOa16s 5vdg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=nWnoriasKTjPDfSijueg14IXB7HkYS+jR5E7GrNcJoI=; b=JGiqL01v7PCtXw6WWrgTFzPE7uIiqDw87J/kDmMDH9O2qjA6cdxw/bYaHJdsxlQ2B8 MgxHsHI2Ypl32kF4JP1/7XF33MWLyFIOdP48hwHoLdEH6DPaxpHm8HdUSS/D/Y67nCM8 ioEVt6abuobhIaOPXuzc61Sd7419vWEfU862nde5oiYUrh8KGmWIZJbfr3jpZMgAP85T HI//ZcKm6aB5/HOWiV+6/6xUw8euUWKJXOAufku6bJ18jNoFHGbEMUGht7ZCjtUpoqdh 5+dlOiDyY5WGwWCiQ67KmE2VpZJ+jVvcqjYmPIT+6zpGjYDD1Ssgi3EL4VSXNMdSlRBi 4jdA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b="sIWJ/HEQ"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id i9-20020a654d09000000b0040c799657f4si14708534pgt.577.2022.07.25.07.21.44; Mon, 25 Jul 2022 07:22:09 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b="sIWJ/HEQ"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235135AbiGYNyV (ORCPT + 99 others); Mon, 25 Jul 2022 09:54:21 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38154 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233642AbiGYNyT (ORCPT ); Mon, 25 Jul 2022 09:54:19 -0400 Received: from mail-ej1-x62c.google.com (mail-ej1-x62c.google.com [IPv6:2a00:1450:4864:20::62c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 08C8715FF1 for ; Mon, 25 Jul 2022 06:54:18 -0700 (PDT) Received: by mail-ej1-x62c.google.com with SMTP id b11so20648319eju.10 for ; Mon, 25 Jul 2022 06:54:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=nWnoriasKTjPDfSijueg14IXB7HkYS+jR5E7GrNcJoI=; b=sIWJ/HEQO30M3WPFW+JwQi3sVhMIjYWZvm2ynC0ydkv3Fm4i9CCcXUmpM/5RUs1NMM rJf0blQtU0mTVq4nYQY04mNi5Q9cYbD7FjeeUcOcypBZcGSkVf1fxeYTLB7xtagvFGNW CHCyFWL85qyeDPAHaBO57XVbRGPzAEPpBxjLbpIVCK4VaPnkv4xao6SYhqdrd4VM17tU BsJCHqVrmWW1KRWgXaM4UaEAs4tZ668fTGNynCo0adlFURisOHFygMV7gmM98A+TUcCg fjFHaKh/Xp3lHBEcU5vn9sjoq8JKFFWMnGa7FCrl7WocP450ChVH/GfDt9D/nx2kngxG e9qQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=nWnoriasKTjPDfSijueg14IXB7HkYS+jR5E7GrNcJoI=; b=e+VBQr4ByqWL7j3GaNas4pFmBtzDjMDLth2m+0rNDmwZ365Xc601HSYf+uNscYqCZ4 Ji2eOdmeNBUIJ56TD9kgOGhlXabVJUFLIydwjihytnOoAyeYeQmo33ChB0gvEOHbsXSc XW3WLa4lNGp7FWjLR8nK2E+NmwTHU0YCYfL92nkSWlpqteXF3XiHgBvV7d3oZbE5dzQG UllPXKTDlM/cpwNGms6Ie8gpexOEe7URbkWEFlgcxyHm5j/Lvm2S2MbLn6YbLQ6k/9HJ rrmDC1iraZiF2zz+Pv/8QH3lVQuOLz/eAWE035Nx/ADs9XiF4AdOUFQtjSK43VzFXH1i PqbA== X-Gm-Message-State: AJIora/ILqdtQzb9sG6yp/5k6JKqAOwuVAwc3VXcWiF7foMVCAW5sVRK vs1pcyJrmvjN+fqC46BgDg5f0Z7R2iqQtZTFRmvHYg== X-Received: by 2002:a17:907:9612:b0:72e:56bd:2b9a with SMTP id gb18-20020a170907961200b0072e56bd2b9amr10311393ejc.526.1658757256304; Mon, 25 Jul 2022 06:54:16 -0700 (PDT) MIME-Version: 1.0 References: <20220721093422.2173982-1-marcus.folkesson@gmail.com> In-Reply-To: From: Linus Walleij Date: Mon, 25 Jul 2022 15:54:04 +0200 Message-ID: Subject: Re: [PATCH 1/2] gpio: gpio-74x164: add support for CDx4HC4094 To: Andy Shevchenko Cc: Marcus Folkesson , Bartosz Golaszewski , Rob Herring , Krzysztof Kozlowski , Maxime Ripard , "open list:GPIO SUBSYSTEM" , devicetree , Linux Kernel Mailing List Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Jul 25, 2022 at 11:32 AM Andy Shevchenko wrote: > On Thu, Jul 21, 2022 at 11:32 AM Marcus Folkesson > wrote: > > > > 74hc4094 and 75hc4094 works similar to 74x164 but has an additional > > storage latch associated with each stage for strobing data from the > > serial input to parallell buffer tri-state output. > > parallel > > > Add support for an optional strobe pin. > > Sorry for my absence of understanding, but why? > SPI has MOSI, CLK, CS, where the last one is exactly for that. No? Forgive me if I misunderstand, but if you use CS that way, the way that the SPI framework works is to assert CS then transfer a few chunks over SPI (MOSI/CLK) then de-assert CS. If CS is used for strobe, it is constantly asserted during transfer and the sequence will be latched out immediately as you write the SPI transfers and the data is clocked through the register, making the whole train of zeroes and ones flash across the output pins before they stabilize after the SPI transfer is finished. If you first do the SPI transfer, then strobe after finished, this will not happen. Then it should be a separate pin, so this doesn't happen, right? Yours, Linus Walleij