mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-17 01:04:19 +08:00
net: dsa: lan9303: Only allocate 3 ports
Save 2628 bytes on arm eabi by allocate only the required 3 ports. Now that ds->num_ports is correct: In net/dsa/tag_lan9303.c eliminate duplicate LAN9303_MAX_PORTS, use ds->num_ports. (Matching the pattern of other net/dsa/tag_xxx.c files.) Signed-off-by: Egil Hjelmeland <privat@egil-hjelmeland.no> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Reviewed-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
996139e801
commit
274cdb46e9
@ -811,7 +811,7 @@ static struct dsa_switch_ops lan9303_switch_ops = {
|
||||
|
||||
static int lan9303_register_switch(struct lan9303 *chip)
|
||||
{
|
||||
chip->ds = dsa_switch_alloc(chip->dev, DSA_MAX_PORTS);
|
||||
chip->ds = dsa_switch_alloc(chip->dev, LAN9303_NUM_PORTS);
|
||||
if (!chip->ds)
|
||||
return -ENOMEM;
|
||||
|
||||
|
@ -39,7 +39,6 @@
|
||||
*/
|
||||
|
||||
#define LAN9303_TAG_LEN 4
|
||||
#define LAN9303_MAX_PORTS 3
|
||||
|
||||
static struct sk_buff *lan9303_xmit(struct sk_buff *skb, struct net_device *dev)
|
||||
{
|
||||
@ -104,7 +103,7 @@ static struct sk_buff *lan9303_rcv(struct sk_buff *skb, struct net_device *dev,
|
||||
|
||||
source_port = ntohs(lan9303_tag[1]) & 0x3;
|
||||
|
||||
if (source_port >= LAN9303_MAX_PORTS) {
|
||||
if (source_port >= ds->num_ports) {
|
||||
dev_warn_ratelimited(&dev->dev, "Dropping packet due to invalid source port\n");
|
||||
return NULL;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user