From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [1/8] usb: typec: fusb302: Make fusb302_set_cc_polarity also set pull ups / downs From: Greg Kroah-Hartman Message-Id: <20190416101953.GA4243@kroah.com> Date: Tue, 16 Apr 2019 12:19:53 +0200 To: Hans de Goede Cc: Guenter Roeck , Heikki Krogerus , linux-usb@vger.kernel.org List-ID: T24gRnJpLCBGZWIgMjIsIDIwMTkgYXQgMDM6MTE6NThQTSArMDEwMCwgSGFucyBkZSBHb2VkZSB3 cm90ZToKPiBUaGUgMiBjYWxsZXJzIG9mIGZ1c2IzMDJfc2V0X2NjX3BvbGFyaXR5IGJvdGggY2Fs bCBmdXNiMzAyX3NldF9jY19wdWxsCj4gZGlyZWN0bHkgYmVmb3JlIGNhbGxpbmcgZnVzYjMwMl9z ZXRfY2NfcG9sYXJpdHksIHRoaXMgaXMgbm90IGlkZWFsIGZvcgo+IDIgcmVhc29uczoKPiAKPiAx KSBmdXNiMzAyX3NldF9jY19wdWxsIHVzZXMgdGhlIGNhY2hlZCBwb2xhcml0eSB3aGVuIGFwcGx5 aW5nIHB1bGwtdXBzLAo+IHdoaWNoIG1heWJlIGNoYW5nZWQgaW1tZWRpYXRlbHkgYWZ0ZXJ3YXJk cywgdG8gZml4IHRoaXMgc2V0X2NjX3BvbGFyaXR5Cj4gYWxyZWFkeSBkb2VzIHRoZSBwdWxsLXVw IHNldHRpbmcuCj4gCj4gMikgQm90aCB0b3VjaCB0aGUgU1dJVENIRVMwIHJlZ2lzdGVyIGluIGEg ci13LW1vZGlmeSBjeWNsZSwgdGhpcyBsZWFkcyB0bwo+IHJlYWQgcmVnLCB3cml0ZSByZWcsIHJl YWQgcmVnLCB3cml0ZSByZWcuIElmIHdlIGZvbGQgdGhlIHNldHRpbmcgb2YKPiB0aGUgcHVsbC1k b3ducyBpbnRvIGZ1c2IzMDJfc2V0X2NjX3BvbGFyaXR5IHRoZW4gbm90IG9ubHkgY2FuIHdlIGF2 b2lkCj4gZG9pbmcgdGhlIHJlYWRzIC8gd3JpdGVzIHR3aWNlLCBhdCB0aGlzIHBvaW50IHdlIHNl dCBhbGwgYml0cywgc28gd2UKPiBjYW4gc2tpcCB0aGUgcmVhZCwgdHVybmluZyA0IChzbG93aXNo KSBpMmMtdHJhbnNmZXJzIGludG8gMS4KPiAKPiBEb2luZyB0aGlzIGFsc28gYXZvaWRzIHRoZSBu ZWVkIHRvIGNhY2hlIHRoZSBwdWxsX3VwIHN0YXRlIGluCj4gc3RydWN0IGZ1c2IzMDJfY2hpcC4K PiAKPiBTaWduZWQtb2ZmLWJ5OiBIYW5zIGRlIEdvZWRlIDxoZGVnb2VkZUByZWRoYXQuY29tPgo+ IC0tLQo+ICBkcml2ZXJzL3VzYi90eXBlYy90Y3BtL2Z1c2IzMDIuYyB8IDQ4ICsrKysrKysrKysr LS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gIDEgZmlsZSBjaGFuZ2VkLCAxNiBpbnNlcnRpb25zKCsp LCAzMiBkZWxldGlvbnMoLSkKCkl0IHdvdWxkIGJlIG5pY2UgdG8gZ2V0IHNvbWUgcGVvcGxlIHRv IHJldmlldy9hY2sgdGhpcyBzZXJpZXMgYmVmb3JlIEkKdGFrZSBpdCAoaGludC4uLikKCnRoYW5r cywKCmdyZWcgay1oCg== 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 X-Spam-Level: X-Spam-Status: No, score=-5.4 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_PASS, T_DKIMWL_WL_HIGH,USER_AGENT_MUTT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 06A50C10F13 for ; Tue, 16 Apr 2019 10:39:06 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id BE44220821 for ; Tue, 16 Apr 2019 10:39:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1555411145; bh=c+Yb/xVJGsZRccPkH831u+xy/X9rjUSB67blQnAASuU=; h=Date:From:To:Cc:Subject:References:In-Reply-To:List-ID:From; b=NODHCchO0N83gFQmRCm37nW/1L0DoqF/PORNZB0C5GTz6HF5yQkg6+DGEbD0ZL08v LOswrpmksv/dOFukBds0Zm8PFFsU9NsxZBx4LQMqbYcPUeGMm4ZDLqxGIbSECNSD0U BHGrWKVcMHvgauvc8d8ikGPx65kWURmO5I/XW9EU= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728224AbfDPKjF (ORCPT ); Tue, 16 Apr 2019 06:39:05 -0400 Received: from mail.kernel.org ([198.145.29.99]:57756 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727950AbfDPKjF (ORCPT ); Tue, 16 Apr 2019 06:39:05 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 1254120693; Tue, 16 Apr 2019 10:39:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1555411144; bh=c+Yb/xVJGsZRccPkH831u+xy/X9rjUSB67blQnAASuU=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=UbjOq/Wm5i2xQ+5G/PaRFe+o2OTO8nrn1e5EPRlgcM6zHUiWNlASjKym+yEQUG8qi UNsY+tKawVd+Ela+YSHNUOR9vyp/4jmOYn+ttofE/qKaVjz7Dh0oubqARD6/RNxoZO ir+WKzhz7he0DTQTMt/aWUsvfn+mR4re3/ZTMMQw= Date: Tue, 16 Apr 2019 12:19:53 +0200 From: Greg Kroah-Hartman To: Hans de Goede Cc: Guenter Roeck , Heikki Krogerus , linux-usb@vger.kernel.org Subject: Re: [PATCH 1/8] usb: typec: fusb302: Make fusb302_set_cc_polarity also set pull ups / downs Message-ID: <20190416101953.GA4243@kroah.com> References: <20190222141205.7621-1-hdegoede@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Disposition: inline In-Reply-To: <20190222141205.7621-1-hdegoede@redhat.com> User-Agent: Mutt/1.11.4 (2019-03-13) Sender: linux-usb-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-usb@vger.kernel.org Message-ID: <20190416101953.j2FfUI_ZhqmvqkyOrSxtNF7XwDgVcblsrgkpc5k6xhE@z> On Fri, Feb 22, 2019 at 03:11:58PM +0100, Hans de Goede wrote: > The 2 callers of fusb302_set_cc_polarity both call fusb302_set_cc_pull > directly before calling fusb302_set_cc_polarity, this is not ideal for > 2 reasons: > > 1) fusb302_set_cc_pull uses the cached polarity when applying pull-ups, > which maybe changed immediately afterwards, to fix this set_cc_polarity > already does the pull-up setting. > > 2) Both touch the SWITCHES0 register in a r-w-modify cycle, this leads to > read reg, write reg, read reg, write reg. If we fold the setting of > the pull-downs into fusb302_set_cc_polarity then not only can we avoid > doing the reads / writes twice, at this point we set all bits, so we > can skip the read, turning 4 (slowish) i2c-transfers into 1. > > Doing this also avoids the need to cache the pull_up state in > struct fusb302_chip. > > Signed-off-by: Hans de Goede > --- > drivers/usb/typec/tcpm/fusb302.c | 48 +++++++++++--------------------- > 1 file changed, 16 insertions(+), 32 deletions(-) It would be nice to get some people to review/ack this series before I take it (hint...) thanks, greg k-h