On Fri, May 12, 2017 at 08:07:58PM +0000, woojung....@microchip.com wrote:

> +static void ksz_config_cpu_port(struct dsa_switch *ds)
> +{
> +     struct ksz_device *dev = ds->priv;
> +     int i;
> +
> +     ds->num_ports = dev->port_cnt;
> +
> +     for (i = 0; i < ds->num_ports; i++) {
> +             if (dsa_is_cpu_port(ds, i)) {
> +                     dev->cpu_port = i;
> +                     /* enable tag tail for host port */
> +                     ksz_port_cfg(dev, i, REG_PORT_CTRL_0,
> +                                  PORT_TAIL_TAG_ENABLE, true);
> +             }
> +     }
> +}


> +static const struct ksz_chip_data ksz_switch_chips[] = {
> +     {
> +             .chip_id = 0x00947700,
> +             .dev_name = "KSZ9477",
> +             .num_vlans = 4096,
> +             .num_alus = 4096,
> +             .num_statics = 16,
> +             .enabled_ports = 0x1F,  /* port0-4 */
> +             .cpu_port = 5,          /* port5 (RGMII) */
> +             .port_cnt = 7,
> +             .phy_port_cnt = 5,
> +     },
> +};

Hi Woojung

Do we need cpu_port in this table? Can any port be used as a CPU port?
>From the code in ksz_config_cpu_port() it seems like it can.

And do we need enabled_ports? This seems to suggest only ports 0-4 can
be user ports?

Thanks
        Andrew

Reply via email to