Re: [RFC Patch net-next v2 8/9] net: dsa: microchip: add the phylink get_caps

From: Vladimir Oltean
Date: Mon May 16 2022 - 07:29:58 EST


On Fri, May 13, 2022 at 03:52:18PM +0530, Arun Ramadoss wrote:
> This patch add the support for phylink_get_caps for ksz8795 and ksz9477
> series switch. It updates the struct ksz_switch_chip with the details of
> the internal phys and xmii interface. Then during the get_caps based on
> the bits set in the structure, corresponding phy mode is set.
>
> Signed-off-by: Arun Ramadoss <arun.ramadoss@xxxxxxxxxxxxx>
> ---

Reviewed-by: Vladimir Oltean <olteanv@xxxxxxxxx>

Looks good, although I haven't verified the exact compatibility matrix
for all switches. Just one comment below.

> @@ -179,6 +183,10 @@ const struct ksz_chip_data ksz_switch_chips[] = {
> .mib_names = ksz9477_mib_names,
> .mib_cnt = ARRAY_SIZE(ksz9477_mib_names),
> .reg_mib_cnt = MIB_COUNTER_NUM,
> + .supports_mii = {false, false, false, false, true},
> + .supports_rmii = {false, false, false, false, true},
> + .supports_rgmii = {false, false, false, false, true},
> + .internal_phy = {true, true, true, false, false},
> },
>
> [KSZ8765] = {
> @@ -193,6 +201,10 @@ const struct ksz_chip_data ksz_switch_chips[] = {
> .mib_names = ksz9477_mib_names,
> .mib_cnt = ARRAY_SIZE(ksz9477_mib_names),
> .reg_mib_cnt = MIB_COUNTER_NUM,
> + .supports_mii = {false, false, false, false, true},
> + .supports_rmii = {false, false, false, false, true},
> + .supports_rgmii = {false, false, false, false, true},
> + .internal_phy = {true, true, true, true, false},
> },
>
> [KSZ8830] = {
> @@ -206,6 +218,9 @@ const struct ksz_chip_data ksz_switch_chips[] = {
> .mib_names = ksz88xx_mib_names,
> .mib_cnt = ARRAY_SIZE(ksz88xx_mib_names),
> .reg_mib_cnt = MIB_COUNTER_NUM,
> + .supports_mii = {false, false, true},
> + .supports_rmii = {false, false, true},
> + .internal_phy = {true, true, false},
> },
>
> [KSZ9477] = {
> @@ -220,6 +235,14 @@ const struct ksz_chip_data ksz_switch_chips[] = {
> .mib_names = ksz9477_mib_names,
> .mib_cnt = ARRAY_SIZE(ksz9477_mib_names),
> .reg_mib_cnt = MIB_COUNTER_NUM,
> + .supports_mii = {false, false, false, false,
> + false, true, false},
> + .supports_rmii = {false, false, false, false,
> + false, true, false},
> + .supports_rgmii = {false, false, false, false,
> + false, true, false},

Please fix indentation here and for KSZ9897 and KSZ9567.

> + .internal_phy = {true, true, true, true,
> + true, false, false},
> },