1
0
Fork 0
forked from mirror/openwrt
openwrt/target
Jonas Jelonek 9efcc52a7b realtek: pcs: rtl931x: streamline hardware mode setting
The SDK and our code for finally applying the hardware mode are quite
confusing. There are two different "places" where a mode can be set,
in a SerDes register and in a global SerDes mode register. Neither the
SDK nor any of the datasheet/documentation serve any explanation for
that. The functions are just named "fiber_mode_set" and "mii_mode_set"
which is basically as useless as it can be to understand it.

Try to get rid off this confusion by naming the functions
'sds_set_mac_mode' and 'sds_set_ip_mode' to make clear where the mode
is set. While at it, also clarify the naming of 'config_mode' by
renaming it to 'config_hw_mode'.

The naming is based on the following assumption:

> Realtek uses an SerDes IP core design (probably from another vendor)
> in their switch. This supports a variety of modes and must be
> configured properly for each mode. Usually, changing the mode in the
> MAC's registers triggers a proper configuration of the SerDes IP block
> in the background.

> However, for some modes this seems to be incomplete, at least missing
> important parts so it doesn't work on its own in the end. In this
> case, the SerDes IP block needs to be configured manually with the
> missing bits to make it work.

There are several places in the SDK that support this assumption, both
for RTL931X and RTL930X (as they are somewhat similar), e.g. [1].

[1] f7f85ffc14/sources/rtk-dms1250/src/dal/longan/dal_longan_sds.c (L1746)

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/20736
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-12-29 17:06:19 +01:00
..
imagebuilder imagebuilder: fix repeated generation of package index when signing is enabled 2025-11-12 21:23:33 +08:00
linux realtek: pcs: rtl931x: streamline hardware mode setting 2025-12-29 17:06:19 +01:00
llvm-bpf
sdk sdk: use GIT_COMMIT for buildbot SDK 2025-12-04 19:20:55 +01:00
toolchain
Config.in targets: add USES_PM auto-feature 2025-07-20 12:16:13 +01:00
Makefile