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
>
next prev parent 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