All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andy Shevchenko <andriy.shevchenko@intel.com>
To: rodrigo.alencar@analog.com
Cc: linux-kernel@vger.kernel.org, linux-iio@vger.kernel.org,
	devicetree@vger.kernel.org, linux-doc@vger.kernel.org,
	Jonathan Cameron <jic23@kernel.org>,
	David Lechner <dlechner@baylibre.com>,
	Andy Shevchenko <andy@kernel.org>,
	Lars-Peter Clausen <lars@metafoo.de>,
	Michael Hennerich <Michael.Hennerich@analog.com>,
	Rob Herring <robh@kernel.org>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Conor Dooley <conor+dt@kernel.org>,
	Jonathan Corbet <corbet@lwn.net>
Subject: Re: [PATCH v3 2/6] iio: frequency: adf41513: driver implementation
Date: Fri, 9 Jan 2026 20:55:13 +0200	[thread overview]
Message-ID: <aWFPEa9HI4wmYLpn@smile.fi.intel.com> (raw)
In-Reply-To: <20260108-adf41513-iio-driver-v3-2-23d1371aef48@analog.com>

On Thu, Jan 08, 2026 at 12:14:51PM +0000, Rodrigo Alencar via B4 Relay wrote:
> 
> The driver is based on existing PLL drivers in the IIO subsystem and
> implements the following key features:
> 
> - Integer-N and fractional-N (fixed/variable modulus) synthesis modes
> - High-resolution frequency calculations using microhertz (µHz) precision
>   to handle sub-Hz resolution across multi-GHz frequency ranges
> - IIO debugfs interface for direct register access
> - FW property parsing from devicetree including charge pump settings,
>   reference path configuration and muxout options
> - Power management support with suspend/resume callbacks
> - Lock detect GPIO monitoring
> 
> The driver uses 64-bit microhertz values throughout PLL calculations to
> maintain precision when working with frequencies that exceed 32-bit Hz
> representation while requiring fractional Hz resolution.

...

> +/* Specifications */
> +#define ADF41510_MAX_RF_FREQ			(10000ULL * HZ_PER_MHZ)
> +#define ADF41513_MIN_RF_FREQ			(1000ULL * HZ_PER_MHZ)
> +#define ADF41513_MAX_RF_FREQ			(26500ULL * HZ_PER_MHZ)

We need HZ_PER_GHZ. I think it's easy to have one be present in units.h.

...

> +#define ADF41513_MIN_REF_FREQ			(10U * HZ_PER_MHZ)
> +#define ADF41513_MAX_REF_FREQ			(800U * HZ_PER_MHZ)
> +#define ADF41513_MAX_REF_FREQ_DOUBLER		(225U * HZ_PER_MHZ)

How does "U" help here?

...

> +#define ADF41513_MIN_INT_4_5			20
> +#define ADF41513_MAX_INT_4_5			511
> +#define ADF41513_MIN_INT_8_9			64
> +#define ADF41513_MAX_INT_8_9			1023

Not sure if we want (BIT(x) - 1) for the limits as we have non-0 minimums.

...

> +#define ADF41513_MAX_CLK_DIVIDER		4095

Sounds like a candidate for (BIT(12) - 1).

...

> +#define ADF41513_MAX_PHASE_MICRORAD		6283185UL

Basically I'm replying to this just for this line. 180° is PI radians, which is
something like 31415926... Can we use here (2 * 314...) where PI is provided in
one of the used form? This will help to grep and replace in case we will have a
common PI constant defined in the kernel (units.h).

-- 
With Best Regards,
Andy Shevchenko



  reply	other threads:[~2026-01-09 18:55 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-01-08 12:14 [PATCH v3 0/6] ADF41513/ADF41510 PLL frequency synthesizers Rodrigo Alencar
2026-01-08 12:14 ` Rodrigo Alencar via B4 Relay
2026-01-08 12:14 ` [PATCH v3 1/6] dt-bindings: iio: frequency: add adf41513 Rodrigo Alencar
2026-01-08 12:14   ` Rodrigo Alencar via B4 Relay
2026-01-09  8:13   ` Krzysztof Kozlowski
2026-01-12 10:04     ` Rodrigo Alencar
2026-01-12 16:32       ` Krzysztof Kozlowski
2026-01-08 12:14 ` [PATCH v3 2/6] iio: frequency: adf41513: driver implementation Rodrigo Alencar
2026-01-08 12:14   ` Rodrigo Alencar via B4 Relay
2026-01-09 18:55   ` Andy Shevchenko [this message]
2026-01-12  9:56     ` Rodrigo Alencar
2026-01-12 10:57       ` Andy Shevchenko
2026-01-13  9:32         ` Rodrigo Alencar
2026-01-16 11:31           ` Rodrigo Alencar
2026-01-16 13:50             ` Andy Shevchenko
2026-01-16 13:53               ` Andy Shevchenko
2026-01-11 13:53   ` Jonathan Cameron
2026-01-08 12:14 ` [PATCH v3 3/6] iio: frequency: adf41513: handle LE synchronization feature Rodrigo Alencar
2026-01-08 12:14   ` Rodrigo Alencar via B4 Relay
2026-01-11 13:58   ` Jonathan Cameron
2026-01-08 12:14 ` [PATCH v3 4/6] iio: frequency: adf41513: features on frequency change Rodrigo Alencar
2026-01-08 12:14   ` Rodrigo Alencar via B4 Relay
2026-01-09 19:07   ` Andy Shevchenko
2026-01-12  9:45     ` Rodrigo Alencar
2026-01-12 10:54       ` Andy Shevchenko
2026-01-16 17:57         ` Jonathan Cameron
2026-01-19  7:38           ` Andy Shevchenko
2026-01-19 10:41             ` Jonathan Cameron
2026-01-19 13:18               ` Andy Shevchenko
2026-01-08 12:14 ` [PATCH v3 5/6] docs: iio: add documentation for adf41513 driver Rodrigo Alencar
2026-01-08 12:14   ` Rodrigo Alencar via B4 Relay
2026-01-08 12:14 ` [PATCH v3 6/6] Documentation: ABI: testing: add common ABI file for iio/frequency Rodrigo Alencar
2026-01-08 12:14   ` Rodrigo Alencar via B4 Relay
2026-01-11 14:01   ` Jonathan Cameron

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=aWFPEa9HI4wmYLpn@smile.fi.intel.com \
    --to=andriy.shevchenko@intel.com \
    --cc=Michael.Hennerich@analog.com \
    --cc=andy@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=corbet@lwn.net \
    --cc=devicetree@vger.kernel.org \
    --cc=dlechner@baylibre.com \
    --cc=jic23@kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=lars@metafoo.de \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-iio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=robh@kernel.org \
    --cc=rodrigo.alencar@analog.com \
    /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: link
Be 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.