[PATCH v5 net-next 2/9] net: mscc: ocelot: export struct ocelot_mact_entry

Vladimir Oltean vladimir.oltean at nxp.com
Sat Sep 25 12:19:46 PDT 2021


On Fri, Sep 24, 2021 at 05:52:19PM +0800, Xiaoliang Yang wrote:
> From: Vladimir Oltean <vladimir.oltean at nxp.com>
> 
> Felix DSA needs to use this struct to export MAC table write and lookup
> operations as well, for its stream identification functions, so export
> them in preparation of that.
> 
> Signed-off-by: Vladimir Oltean <vladimir.oltean at nxp.com>
> Signed-off-by: Xiaoliang Yang <xiaoliang.yang_1 at nxp.com>
> ---

I don't think this patch is my doing, is it? Can you please drop me from
the author and the sign-off? Thanks.

>  drivers/net/ethernet/mscc/ocelot.c |  6 ------
>  drivers/net/ethernet/mscc/ocelot.h | 13 -------------
>  include/soc/mscc/ocelot.h          | 19 +++++++++++++++++++
>  3 files changed, 19 insertions(+), 19 deletions(-)
> 
> diff --git a/drivers/net/ethernet/mscc/ocelot.c b/drivers/net/ethernet/mscc/ocelot.c
> index 9f481cf19931..35006b0fb963 100644
> --- a/drivers/net/ethernet/mscc/ocelot.c
> +++ b/drivers/net/ethernet/mscc/ocelot.c
> @@ -14,12 +14,6 @@
>  #define TABLE_UPDATE_SLEEP_US 10
>  #define TABLE_UPDATE_TIMEOUT_US 100000
>  
> -struct ocelot_mact_entry {
> -	u8 mac[ETH_ALEN];
> -	u16 vid;
> -	enum macaccess_entry_type type;
> -};
> -
>  /* Must be called with &ocelot->mact_lock held */
>  static inline u32 ocelot_mact_read_macaccess(struct ocelot *ocelot)
>  {
> diff --git a/drivers/net/ethernet/mscc/ocelot.h b/drivers/net/ethernet/mscc/ocelot.h
> index 1952d6a1b98a..a77050b13d18 100644
> --- a/drivers/net/ethernet/mscc/ocelot.h
> +++ b/drivers/net/ethernet/mscc/ocelot.h
> @@ -54,19 +54,6 @@ struct ocelot_dump_ctx {
>  	int idx;
>  };
>  
> -/* MAC table entry types.
> - * ENTRYTYPE_NORMAL is subject to aging.
> - * ENTRYTYPE_LOCKED is not subject to aging.
> - * ENTRYTYPE_MACv4 is not subject to aging. For IPv4 multicast.
> - * ENTRYTYPE_MACv6 is not subject to aging. For IPv6 multicast.
> - */
> -enum macaccess_entry_type {
> -	ENTRYTYPE_NORMAL = 0,
> -	ENTRYTYPE_LOCKED,
> -	ENTRYTYPE_MACv4,
> -	ENTRYTYPE_MACv6,
> -};
> -
>  /* A (PGID) port mask structure, encoding the 2^ocelot->num_phys_ports
>   * possibilities of egress port masks for L2 multicast traffic.
>   * For a switch with 9 user ports, there are 512 possible port masks, but the
> diff --git a/include/soc/mscc/ocelot.h b/include/soc/mscc/ocelot.h
> index 682cd058096c..e6773f4d09ce 100644
> --- a/include/soc/mscc/ocelot.h
> +++ b/include/soc/mscc/ocelot.h
> @@ -701,6 +701,25 @@ struct ocelot_skb_cb {
>  	u8 ts_id;
>  };
>  
> +/* MAC table entry types.
> + * ENTRYTYPE_NORMAL is subject to aging.
> + * ENTRYTYPE_LOCKED is not subject to aging.
> + * ENTRYTYPE_MACv4 is not subject to aging. For IPv4 multicast.
> + * ENTRYTYPE_MACv6 is not subject to aging. For IPv6 multicast.
> + */
> +enum macaccess_entry_type {
> +	ENTRYTYPE_NORMAL = 0,
> +	ENTRYTYPE_LOCKED,
> +	ENTRYTYPE_MACv4,
> +	ENTRYTYPE_MACv6,
> +};
> +
> +struct ocelot_mact_entry {
> +	u8 mac[ETH_ALEN];
> +	u16 vid;
> +	enum macaccess_entry_type type;
> +};
> +

Also, I am not sure that ocelot_mact_entry needs to be exported. More
details in the next patch.

>  #define OCELOT_SKB_CB(skb) \
>  	((struct ocelot_skb_cb *)((skb)->cb))
>  
> -- 
> 2.17.1
> 


More information about the Linux-mediatek mailing list