From: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de> To: Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@toshiba.co.jp> Cc: Rob Herring <robh+dt@kernel.org>, Thierry Reding <thierry.reding@gmail.com>, Lee Jones <lee.jones@linaro.org>, devicetree@vger.kernel.org, linux-pwm@vger.kernel.org, punit1.agrawal@toshiba.co.jp, yuji2.ishikawa@toshiba.co.jp, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v4 2/2] pwm: visconti: Add Toshiba Visconti SoC PWM support Date: Fri, 16 Apr 2021 11:44:26 +0200 [thread overview] Message-ID: <20210416094426.x4gyw3drp2fcwczs@pengutronix.de> (raw) In-Reply-To: <20210416080721.oa7xdvu22w2b2rkf@toshiba.co.jp> [-- Attachment #1: Type: text/plain, Size: 2129 bytes --] Hello Nobuhiro, On Fri, Apr 16, 2021 at 05:07:21PM +0900, Nobuhiro Iwamatsu wrote: > On Mon, Apr 12, 2021 at 09:02:32AM +0200, Uwe Kleine-König wrote: > > On Mon, Apr 12, 2021 at 11:55:36AM +0900, Nobuhiro Iwamatsu wrote: > > > On Sat, Apr 10, 2021 at 03:53:21PM +0200, Uwe Kleine-König wrote: > > > > Can you please put a paragraph analogous to the one in pwm-sifive in the > > > > same format. This simplified keeping an overview about the oddities of > > > > the various supported chips. > > > > > > OK, I will check pwm-sifive's, and add. > > I will add the following : > > * Limitations: > * - PIPGM_PWMC is a 2-bit divider (00: 1, 01: 2, 10: 4, 11: 8) for the input > * clock running at 1 MHz. I would strip that to: - Fixed input clock running at 1 MHz > * - When the settings of the PWM are modified, the new values are shadowed > * in hardware until the PIPGM_PCSR register is written and the currently > * running period is completed. This way the hardware switches atomically > * from the old setting to the new. > * - Disabling the hardware completes the currently running period and keeps > * the output at low level at all times. This looks fine. > > For me the critical (and only) difference between "off" and > > "duty cycle = 0" is that when a new configuration is to be applied. In > > the "off" state a new period can (and should) start immediately, while > > with "duty_cycle = 0" the rising edge should be delayed until the > > currently running period is over.[1] > > > > So the thing to do here (IMHO) is: > > > > Iff with PIPGM_PCSR = 0 configuring a new setting (that is finalized > > with writing a non-zero value to PIPGM_PCSR) completes the currently > > running period, then always assume the PWM as enabled. > > Yes, this device works that way. OK, then please use state->enabled = true unconditionally in visconti_pwm_get_state(). Best regards Uwe -- Pengutronix e.K. | Uwe Kleine-König | Industrial Linux Solutions | https://www.pengutronix.de/ | [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 488 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de> To: Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@toshiba.co.jp> Cc: Rob Herring <robh+dt@kernel.org>, Thierry Reding <thierry.reding@gmail.com>, Lee Jones <lee.jones@linaro.org>, devicetree@vger.kernel.org, linux-pwm@vger.kernel.org, punit1.agrawal@toshiba.co.jp, yuji2.ishikawa@toshiba.co.jp, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v4 2/2] pwm: visconti: Add Toshiba Visconti SoC PWM support Date: Fri, 16 Apr 2021 11:44:26 +0200 [thread overview] Message-ID: <20210416094426.x4gyw3drp2fcwczs@pengutronix.de> (raw) In-Reply-To: <20210416080721.oa7xdvu22w2b2rkf@toshiba.co.jp> [-- Attachment #1.1: Type: text/plain, Size: 2129 bytes --] Hello Nobuhiro, On Fri, Apr 16, 2021 at 05:07:21PM +0900, Nobuhiro Iwamatsu wrote: > On Mon, Apr 12, 2021 at 09:02:32AM +0200, Uwe Kleine-König wrote: > > On Mon, Apr 12, 2021 at 11:55:36AM +0900, Nobuhiro Iwamatsu wrote: > > > On Sat, Apr 10, 2021 at 03:53:21PM +0200, Uwe Kleine-König wrote: > > > > Can you please put a paragraph analogous to the one in pwm-sifive in the > > > > same format. This simplified keeping an overview about the oddities of > > > > the various supported chips. > > > > > > OK, I will check pwm-sifive's, and add. > > I will add the following : > > * Limitations: > * - PIPGM_PWMC is a 2-bit divider (00: 1, 01: 2, 10: 4, 11: 8) for the input > * clock running at 1 MHz. I would strip that to: - Fixed input clock running at 1 MHz > * - When the settings of the PWM are modified, the new values are shadowed > * in hardware until the PIPGM_PCSR register is written and the currently > * running period is completed. This way the hardware switches atomically > * from the old setting to the new. > * - Disabling the hardware completes the currently running period and keeps > * the output at low level at all times. This looks fine. > > For me the critical (and only) difference between "off" and > > "duty cycle = 0" is that when a new configuration is to be applied. In > > the "off" state a new period can (and should) start immediately, while > > with "duty_cycle = 0" the rising edge should be delayed until the > > currently running period is over.[1] > > > > So the thing to do here (IMHO) is: > > > > Iff with PIPGM_PCSR = 0 configuring a new setting (that is finalized > > with writing a non-zero value to PIPGM_PCSR) completes the currently > > running period, then always assume the PWM as enabled. > > Yes, this device works that way. OK, then please use state->enabled = true unconditionally in visconti_pwm_get_state(). Best regards Uwe -- Pengutronix e.K. | Uwe Kleine-König | Industrial Linux Solutions | https://www.pengutronix.de/ | [-- Attachment #1.2: signature.asc --] [-- Type: application/pgp-signature, Size: 488 bytes --] [-- Attachment #2: Type: text/plain, Size: 176 bytes --] _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2021-04-16 9:44 UTC|newest] Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-04-09 23:08 [PATCH v4 0/2] pwm: visconti: Add Toshiba Visconti SoC PWM support Nobuhiro Iwamatsu 2021-04-09 23:08 ` Nobuhiro Iwamatsu 2021-04-09 23:08 ` [PATCH v4 1/2] dt-bindings: pwm: Add bindings for Toshiba Visconti PWM Controller Nobuhiro Iwamatsu 2021-04-09 23:08 ` Nobuhiro Iwamatsu 2021-04-09 23:08 ` [PATCH v4 2/2] pwm: visconti: Add Toshiba Visconti SoC PWM support Nobuhiro Iwamatsu 2021-04-09 23:08 ` Nobuhiro Iwamatsu 2021-04-10 1:57 ` kernel test robot 2021-04-10 13:53 ` Uwe Kleine-König 2021-04-10 13:53 ` Uwe Kleine-König 2021-04-12 2:55 ` Nobuhiro Iwamatsu 2021-04-12 2:55 ` Nobuhiro Iwamatsu 2021-04-12 7:02 ` Uwe Kleine-König 2021-04-12 7:02 ` Uwe Kleine-König 2021-04-16 8:07 ` Nobuhiro Iwamatsu 2021-04-16 8:07 ` Nobuhiro Iwamatsu 2021-04-16 9:44 ` Uwe Kleine-König [this message] 2021-04-16 9:44 ` Uwe Kleine-König 2021-04-16 12:15 ` Nobuhiro Iwamatsu 2021-04-16 12:15 ` Nobuhiro Iwamatsu 2021-04-17 15:50 ` Uwe Kleine-König 2021-04-17 15:50 ` Uwe Kleine-König 2021-04-18 11:07 ` Nobuhiro Iwamatsu 2021-04-18 11:07 ` Nobuhiro Iwamatsu 2021-04-10 18:52 ` Uwe Kleine-König 2021-04-10 18:52 ` Uwe Kleine-König 2021-04-12 3:04 ` Nobuhiro Iwamatsu 2021-04-12 3:04 ` Nobuhiro Iwamatsu
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20210416094426.x4gyw3drp2fcwczs@pengutronix.de \ --to=u.kleine-koenig@pengutronix.de \ --cc=devicetree@vger.kernel.org \ --cc=lee.jones@linaro.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-pwm@vger.kernel.org \ --cc=nobuhiro1.iwamatsu@toshiba.co.jp \ --cc=punit1.agrawal@toshiba.co.jp \ --cc=robh+dt@kernel.org \ --cc=thierry.reding@gmail.com \ --cc=yuji2.ishikawa@toshiba.co.jp \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.