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.2 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS autolearn=no 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 00C87C12002 for ; Wed, 21 Jul 2021 12:50:52 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id BDD9060FE7 for ; Wed, 21 Jul 2021 12:50:51 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org BDD9060FE7 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=pengutronix.de Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:Content-Type: List-Subscribe:List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id: In-Reply-To:MIME-Version:References:Message-ID:Subject:Cc:To:From:Date: Reply-To:Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date :Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=9I3MQRhAVkRfzdwpDOZR6dydS0P3Pgnhvjd4jYBxkLg=; b=LPJdZT65k+ECfq8lJszrE73D/T YIXFKonzokjoMpNTOUvCZWJAMeuJPO8T6BItKK1SpNzRk+Ydt54mRiiQMpYpqa88qB+rsl5wjB3Qx bmfNou6Er5hzL+VIziIlpAnogYtmVvpfGduM3lwCuQNihlr1zs0f5esgysqU6GQeW2APpmcgZpm05 4yLUyOigQJEJFfMeSOhJQZHiSpG88osPX5K/KXzfZ5ZgWIhr06lY49uhGb9Irs8zuOA8tY98F3n/e p5Y+BMK23YPLLleuq1Vahi03nY2zQgv9JlaNtrEjMvpLHsAzJmmQXmnSn8tqYO2rcAJVkDqMgxmk/ aSDIwvpw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1m6BfA-00FfLS-Bl; Wed, 21 Jul 2021 12:49:24 +0000 Received: from metis.ext.pengutronix.de ([2001:67c:670:201:290:27ff:fe1d:cc33]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1m6Bf5-00FfJr-TZ for linux-arm-kernel@lists.infradead.org; Wed, 21 Jul 2021 12:49:21 +0000 Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.ext.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1m6Bez-0005Rz-3Z; Wed, 21 Jul 2021 14:49:13 +0200 Received: from [2a0a:edc0:0:900:1d::77] (helo=ptz.office.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1m6Bel-00009I-8O; Wed, 21 Jul 2021 14:48:59 +0200 Received: from ukl by ptz.office.stw.pengutronix.de with local (Exim 4.92) (envelope-from ) id 1m6Bel-0000Yf-7G; Wed, 21 Jul 2021 14:48:59 +0200 Date: Wed, 21 Jul 2021 14:48:59 +0200 From: Uwe =?utf-8?Q?Kleine-K=C3=B6nig?= To: Billy Tsai Cc: "lee.jones@linaro.org" , "robh+dt@kernel.org" , "joel@jms.id.au" , "andrew@aj.id.au" , "thierry.reding@gmail.com" , "p.zabel@pengutronix.de" , "devicetree@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "linux-aspeed@lists.ozlabs.org" , "linux-kernel@vger.kernel.org" , "linux-pwm@vger.kernel.org" , BMC-SW Subject: Re: [v9 2/2] pwm: Add Aspeed ast2600 PWM support Message-ID: <20210721124859.clv6qlitbyomdz6s@pengutronix.de> References: <20210709065217.6153-1-billy_tsai@aspeedtech.com> <20210709065217.6153-3-billy_tsai@aspeedtech.com> <20210715150533.vppkw5oiomkxmfrn@pengutronix.de> <20210716070943.ayxkz2irkwhgincz@pengutronix.de> <20210716101301.l563tdwt5xuq5iq6@pengutronix.de> <3F12A498-DF5C-4954-8BCE-8C0C66BC9734@aspeedtech.com> <4BC9AEF6-31EA-4EDA-BCB2-7E4D44B6D5D2@aspeedtech.com> MIME-Version: 1.0 In-Reply-To: <4BC9AEF6-31EA-4EDA-BCB2-7E4D44B6D5D2@aspeedtech.com> X-SA-Exim-Connect-IP: 2a0a:edc0:0:c01:1d::a2 X-SA-Exim-Mail-From: ukl@pengutronix.de X-SA-Exim-Scanned: No (on metis.ext.pengutronix.de); SAEximRunCond expanded to false X-PTX-Original-Recipient: linux-arm-kernel@lists.infradead.org X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210721_054920_005990_D3FF244E X-CRM114-Status: GOOD ( 36.58 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============5157763351901746947==" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org --===============5157763351901746947== Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="sh6jjxfikryciybj" Content-Disposition: inline --sh6jjxfikryciybj Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Jul 21, 2021 at 10:52:21AM +0000, Billy Tsai wrote: > Hi Uwe, >=20 > On 2021/7/16, 6:13 PM, "Uwe Kleine-K=F6nig" wrote: >=20 > On Fri, Jul 16, 2021 at 09:22:22AM +0000, Billy Tsai wrote: > >> On 2021/7/16, 3:10 PM, "Uwe Kleine-K=F6nig" wrote: > >>=20 > >> On Fri, Jul 16, 2021 at 01:48:20AM +0000, Billy Tsai wrote: > >> >> On 2021/7/15, 11:06 PM, "Uwe Kleine-K=F6nig" > wrote: > >> >> > Another is: The PWM doesn't support duty_cycle 0,= on such a request the > >> >> > PWM is disabled which results in a constant inact= ive level. > >> >>=20 > >> >> > (This is correct, is it? Or does it yield a const= ant 0 level?) > >> >>=20 > >> >> Our pwm can support duty_cycle 0 by unset CLK_ENABLE. > >>=20 > >> > This has a slightly different semantic though. Some cons= umer might > >> > expect that the following sequence: > >>=20 > >> > pwm_apply(mypwm, { .period =3D 10000, .duty_cycle =3D 10= 000, .enabled =3D true }) > >> > pwm_apply(mypwm, { .period =3D 10000, .duty_cycle =3D 0,= .enabled =3D true }) > >> > pwm_apply(mypwm, { .period =3D 10000, .duty_cycle =3D 10= 000, .enabled =3D true }) > >>=20 > >> > results in the output being low for an integer multiple = of 10 =B5s. This > >> > isn't given with setting CLK_ENABLE to zero, is it? (I d= idn't recheck, > >> > if the PWM doesn't complete periods on reconfiguration t= his doesn't > >> > matter much though.) > >> Thanks for the explanation. > >> Our hardware actually can only support duty from 1/256 to 256/= 256. > >> For this situation I can do possible solution: > >> We can though change polarity to meet this requirement. Invers= e the pin and use > >> duty_cycle 100.=20 > >> But I think this is not a good solution for this problem right? >=20 > > If this doesn't result in more glitches that would be fine for = me. > > (Assuming it is documented good enough in the code to be > > understandable.) >=20 > > The polarity of our pwm controller will affect the duty cycle range: > > PWM_POLARITY_INVERSED : Support duty_cycle from 0% to 99% > > PWM_POLARITY_NORMAL: Support duty_cycle from 1% to 100% > > Dynamic change polarity will result in more glitches. Thus, this wi= ll become > > a trade-off between 100% and 0% duty_cycle support for user to use = our pwm device. > > I will document it and send next patch. >=20 > For handling the situation that the user want to set the duty cycle to 0%= , the driver can: > 1. Just return the error. > 2. Use the minimum duty cycle value. > I don't know which solution will be the better way or others. > I would be grateful if you can give me some suggestion about this problem. I thought if you disable the PWM it emits the inactive level? Then this is the best you can do if duty_cycle =3D 0 is requested. Best regards Uwe --=20 Pengutronix e.K. | Uwe Kleine-K=F6nig | Industrial Linux Solutions | https://www.pengutronix.de/ | --sh6jjxfikryciybj Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAABCgAdFiEEfnIqFpAYrP8+dKQLwfwUeK3K7AkFAmD4F7gACgkQwfwUeK3K 7AkJmQgAnqDb+O4do8MRPO90e+3qhwE2WBmoUv3JcNTC4u/KvdJlWCq1JvKmGjAs L5nbyWsMVXT9A6Ry1xVvDH5jIVd9kpLns5ApiyURH94FUZR/wG9BfpaLdSDwzLzM W8WOr3c5Dcq9D/2j0cZ5xcjcg4kC31NkCkEL9U4dBYY+8XQ3f5zkKQgLzvJiEgSV P43lIjEFxmkZLZ2p+EWTMDK+fxYq6GXTcjLY+zVbmLh3S7kcTrf9ccSGS4tb8Xha oytit4cw0uUZ8tGk1dLSMysNexb/6p/QKfC5XSe7vshfobkDryGZUa9UQT4GmqTU h4V6Sk4tjTVpfnBEWUL5fadiMoc/nQ== =bCmv -----END PGP SIGNATURE----- --sh6jjxfikryciybj-- --===============5157763351901746947== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel --===============5157763351901746947==--