U-Boot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Vladimir Oltean <vladimir.oltean@nxp.com>
To: Vincent Jardin <vjardin@free.fr>
Cc: u-boot@lists.u-boot-project.org, Peng Fan <peng.fan@nxp.com>,
	Tom Rini <trini@konsulko.com>,
	Hemant Agrawal <hemant.agrawal@nxp.com>,
	Wasim Khan <wasim.khan@nxp.com>,
	Priyanka Jain <priyanka.jain@nxp.com>,
	Meenakshi Aggarwal <meenakshi.aggarwal@nxp.com>,
	Ioana Ciornei <ioana.ciornei@nxp.com>
Subject: Re: [PATCH v4 09/10] doc: lx2160a: document the sd1 hwconfig option
Date: Mon, 28 Sep 2026 18:05:20 +0300	[thread overview]
Message-ID: <20260928150520.mgsfjftht7l7pgvy@skbuf> (raw)
In-Reply-To: <20260928101330.881662-10-vjardin@free.fr> <20260928101330.881662-10-vjardin@free.fr>

On Mon, Sep 28, 2026 at 12:13:28PM +0200, Vincent Jardin wrote:
> Enrich README.fsl-hwconfig with this sd1 reconfiguration scenarios.
> Add a reference to the Layerscape README.soc.
> 
> Signed-off-by: Vincent Jardin <vjardin@free.fr>
> 
> ---
> 
> Changes in v4:
> - was v3 5/5, rewritten using a table
> 
>  .../cpu/armv8/fsl-layerscape/doc/README.soc   |  7 +++
>  doc/README.fsl-hwconfig                       | 60 +++++++++++++++++++
>  2 files changed, 67 insertions(+)
> 
> diff --git a/arch/arm/cpu/armv8/fsl-layerscape/doc/README.soc b/arch/arm/cpu/armv8/fsl-layerscape/doc/README.soc
> index f2efd4cc1d7..a641e4978aa 100644
> --- a/arch/arm/cpu/armv8/fsl-layerscape/doc/README.soc
> +++ b/arch/arm/cpu/armv8/fsl-layerscape/doc/README.soc
> @@ -331,6 +331,13 @@ LX2160A SoC has 2 more similar SoC personalities
>  2)LX2080A, few difference w.r.t. LX2160A:
>         a) Eight 64-bit ARM v8 Cortex-A72 CPUs
>  
> +SerDes 1 lane grouping
> +  SRDS_PRTCL_S1 is latched at reset. U-Boot can still configure SD1 before
> +  the MC starts:
> +  1x100GE + 4x25G, 2x40GE, 1x40GE + 4x10G or 1x100GE + 4x10G.
> +  See 'serdes1' in doc/README.fsl-hwconfig, and the 'lx2160_serdes status'
> +  command.
> +
>  
>  LS1028A
>  --------
> diff --git a/doc/README.fsl-hwconfig b/doc/README.fsl-hwconfig
> index e752505da49..3f9d2ddad75 100644
> --- a/doc/README.fsl-hwconfig
> +++ b/doc/README.fsl-hwconfig
> @@ -44,3 +44,63 @@ usb
>  		usb1:dr_mode=host;usb2:dr_mode=peripheral'
>  
>  		usb1:dr_mode=host,phy_type=utmi;usb2:dr_mode=host'
> +
> +serdes1
> +	Specific to the LX2160A boards whose reset_phy() calls
> +	lx2160a_serdes_apply_hwconfig() before mc_env_boot(): lx2160aqds.
> +
> +	SRDS_PRTCL_S1 is latched at reset, but the eight SD1 (SerDes) lanes
> +	can still be configured before the DPAA2 management complex (MC) starts.
> +	This option picks the grouping. The RCW, and RCWSR29, keep the
> +	protocol number.

I feel the last 2 sentences do not have a sharply defined meaning. Maybe
say "This option alters the Ethernet MAC-to-lane grouping after the fact
(RCWSR29 will continue reporting the initial protocol)"?

> +
> +	'serdes1:2x100g'
> +		2x 100GE (CAUI-4), what protocol 13 builds: nothing to do
> +
> +	'serdes1:100g4x25g'
> +		1x 100GE + 4x 25G
> +
> +	'serdes1:2x40g'
> +		2x 40GE (XLAUI-4)
> +
> +	'serdes1:40g4x10g'
> +		1x 40GE + 4x 10G (XFI)
> +
> +	'serdes1:100g4x10g'
> +		1x 100GE + 4x 10G (XFI)
> +
> +	Each mode starts from the one in the 'from' column, which is
> +	entered first when SD1 is not in it yet, and so on down to what
> +	SRDS_PRTCL_S1 built:
> +
> +		mode        from      SRDS_PRTCL_S1   lanes run on
> +		2x100g      -         13              PLLF
> +		100g4x25g   2x100g    13              PLLF
> +		2x40g       2x100g    13              PLLS
> +		40g4x10g    2x40g     13 or 20        PLLS
> +		100g4x10g   2x100g    13              PLLF and PLLS
> +
> +	What each mode makes of the two four-lane ports of protocol 13:
> +
> +		mode        dpmac.2 port   dpmac.1 port
> +		2x100g      100GE          100GE
> +		100g4x25g   100GE          4x 25G: dpmac.3 to dpmac.6
> +		2x40g       40GE           40GE
> +		40g4x10g    40GE           4x XFI: dpmac.3 to dpmac.6
> +		100g4x10g   100GE          4x XFI: dpmac.3 to dpmac.6
> +
> +	Initial conditions:
> +
> +	- The MC must not be running yet. Otherwise the mode is refused and
> +	  SD1 is left as it is.

What is actionable for the reader with this information? Assuming the
reader is a board user, and not a developer.

BTW, the first paragraph already says "Specific to the LX2160A boards
whose reset_phy() calls lx2160a_serdes_apply_hwconfig() before mc_env_boot()".

> +	- The MC DPC must set follow_hw_pssr in board_info/serdes, for the
> +	  MC to read the lanes rather than look at protocol, and the DPL
> +	  must use the dpmacs of the new grouping.

- PLLS must be provisioned with a refclk frequency from which the 10.3125 GHz
  clock net can be derived. This is kind of important, because this requirement
  does not exist on the native SRDS_PRTCL_S1=13 boot, because there, PLLS is
  simply powered down. You just _assume_ you can power it up and it will lock
  at the frequency you want.

> +
> +	'lx2160_serdes status 1' shows the resulting lane grouping and
> +	protocol converters.
> +
> +	Example:
> +		setenv hwconfig serdes1:100g4x25g
> +		saveenv
> +		reset
> -- 
> 2.43.0
>

  reply	other threads:[~2026-09-28 15:05 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-28 10:13 [PATCH v4 00/10] board: lx2160a: runtime SD 1 lane configuration for LX2160A boards Vincent Jardin
2026-09-28 10:13 ` [PATCH v4 01/10] board: lx2160a: serdes: drop the split subcommand Vincent Jardin
2026-09-28 11:17   ` Vladimir Oltean
2026-09-28 10:13 ` [PATCH v4 02/10] board: lx2160a: serdes: rename serdes1:split to serdes1:100g4x25g Vincent Jardin
2026-09-28 11:18   ` Vladimir Oltean
2026-09-28 10:13 ` [PATCH v4 03/10] board: lx2160a: serdes: set SD1 with a table Vincent Jardin
2026-09-28 12:02   ` Vladimir Oltean
2026-09-28 10:13 ` [PATCH v4 04/10] board: lx2160a: serdes: report unknown SD1 cases Vincent Jardin
2026-09-28 14:29   ` Vladimir Oltean
2026-09-28 10:13 ` [PATCH v4 05/10] board: lx2160a: serdes: no SD1 config once MC runs Vincent Jardin
2026-09-28 14:50   ` Vladimir Oltean
2026-09-28 10:13 ` [PATCH v4 06/10] board: lx2160a: serdes: add serdes1:2x40g Vincent Jardin
2026-09-28 10:13 ` [PATCH v4 07/10] board: lx2160a: serdes: add serdes1:40g4x10g Vincent Jardin
2026-09-28 10:13 ` [PATCH v4 08/10] board: lx2160a: serdes: add serdes1:100g4x10g Vincent Jardin
2026-09-28 10:13 ` [PATCH v4 09/10] doc: lx2160a: document the sd1 hwconfig option Vincent Jardin
2026-09-28 15:05   ` Vladimir Oltean [this message]
2026-09-28 15:10   ` Vladimir Oltean
2026-09-28 22:13     ` Vincent Jardin
2026-09-28 10:13 ` [PATCH v4 10/10] board: nbxv3: apply sd1 hwconfig before MC starts Vincent Jardin
2026-09-28 15:07   ` Vladimir Oltean
2026-09-28 19:14 ` [PATCH v4 00/10] board: lx2160a: runtime SD 1 lane configuration for LX2160A boards Tom Rini
2026-09-28 20:59   ` Vincent Jardin
2026-09-28 21:15     ` Tom Rini

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=20260928150520.mgsfjftht7l7pgvy@skbuf \
    --to=vladimir.oltean@nxp.com \
    --cc=hemant.agrawal@nxp.com \
    --cc=ioana.ciornei@nxp.com \
    --cc=meenakshi.aggarwal@nxp.com \
    --cc=peng.fan@nxp.com \
    --cc=priyanka.jain@nxp.com \
    --cc=trini@konsulko.com \
    --cc=u-boot@lists.u-boot-project.org \
    --cc=vjardin@free.fr \
    --cc=wasim.khan@nxp.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox