Hi Joel,

On Mon, Jan 27 2020, Joel Johnson wrote:
> While newer Linux kernels provide autoconfiguration of SFP, provide
> an option for setting in U-Boot Kconfig for use prior to booting.
>
> Signed-off-by: Joel Johnson <mrj...@lixil.net>
>
> ---
>
> v2 changes:
>   - fixed help indentation
> v3 changes:
>   - none
> v4 changes:
>   - adjust static SerDes configuration at runtime instead of #ifdef
>
> ---
>  board/solidrun/clearfog/Kconfig    | 7 +++++++
>  board/solidrun/clearfog/clearfog.c | 3 +++
>  2 files changed, 10 insertions(+)
>
> diff --git a/board/solidrun/clearfog/Kconfig b/board/solidrun/clearfog/Kconfig
> index 936d5918f8..c910e17093 100644
> --- a/board/solidrun/clearfog/Kconfig
> +++ b/board/solidrun/clearfog/Kconfig
> @@ -15,4 +15,11 @@ config TARGET_CLEARFOG_BASE
>         detection via additional EEPROM hardware. This option enables 
> selecting
>         the Base variant for older hardware revisions.
>
> +config CLEARFOG_SFP_25GB
> +     bool "Enable 2.5 Gbps mode for SFP"
> +     help
> +       Set the SFP module connection to support 2.5 Gbps transfer speed for 
> the
> +       SGMII connection (requires a supporting SFP). By default, transfer 
> speed
> +       of 1.25 Gbps is used, suitable for a more common 1 Gbps SFP module.
> +
>  endmenu
> diff --git a/board/solidrun/clearfog/clearfog.c 
> b/board/solidrun/clearfog/clearfog.c
> index 4019e37016..6c5b9a784f 100644
> --- a/board/solidrun/clearfog/clearfog.c
> +++ b/board/solidrun/clearfog/clearfog.c
> @@ -59,6 +59,9 @@ void config_static_serdes_map(void)
>               board_serdes_map[4].serdes_speed = SERDES_SPEED_5_GBPS;
>               board_serdes_map[4].serdes_mode = SERDES_DEFAULT_MODE;
>       }
> +
> +     if (IS_ENABLED(CONFIG_CLEARFOG_SFP_25GB))
> +             board_serdes_map[5].serdes_speed = SERDES_SPEED_3_125_GBPS;

config_static_serdes_map() is not called only when TLV EEPROM is
present. So CONFIG_CLEARFOG_SFP_25GB has no effect in that case. This
code should move to hws_board_topology_load() to avoid that.

baruch

>  }
>
>  int hws_board_topology_load(struct serdes_map **serdes_map_array, u8 *count)


--
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - bar...@tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il -

Reply via email to