[openwrt/openwrt] kernel: ssb: fallback-sprom: optimize struct data

LEDE Commits lede-commits at lists.infradead.org
Mon Apr 24 14:11:33 PDT 2023


noltari pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/d5c93d2b85ab86b81c4ef4e6d3855aa1ee2d8123

commit d5c93d2b85ab86b81c4ef4e6d3855aa1ee2d8123
Author: Álvaro Fernández Rojas <noltari at gmail.com>
AuthorDate: Mon Apr 24 20:10:48 2023 +0200

    kernel: ssb: fallback-sprom: optimize struct data
    
    - Remove unneeded mac bytes from struct (it's already present in the SPROM).
    - Convert devid_override to boolean.
    
    Signed-off-by: Álvaro Fernández Rojas <noltari at gmail.com>
---
 .../generic/files/drivers/ssb/fallback-sprom.c     | 28 +++++++++++-----------
 1 file changed, 14 insertions(+), 14 deletions(-)

diff --git a/target/linux/generic/files/drivers/ssb/fallback-sprom.c b/target/linux/generic/files/drivers/ssb/fallback-sprom.c
index 93001d20d7..f156522328 100644
--- a/target/linux/generic/files/drivers/ssb/fallback-sprom.c
+++ b/target/linux/generic/files/drivers/ssb/fallback-sprom.c
@@ -48,8 +48,7 @@ struct ssb_fbs {
 	struct ssb_sprom sprom;
 	u32 pci_bus;
 	u32 pci_dev;
-	u8 mac[ETH_ALEN];
-	int devid_override;
+	bool devid_override;
 };
 
 static DEFINE_SPINLOCK(ssb_fbs_lock);
@@ -624,8 +623,8 @@ static void ssb_fbs_fixup(struct ssb_fbs *priv, u16 *sprom)
 	}
 }
 
-static int sprom_override_devid(struct ssb_fbs *priv, struct ssb_sprom *out,
-				const u16 *in)
+static bool sprom_override_devid(struct ssb_fbs *priv, struct ssb_sprom *out,
+				 const u16 *in)
 {
 	SPEX(dev_id, SSB_SPROM1_PID, 0xFFFF, 0);
 	return !!out->dev_id;
@@ -668,7 +667,7 @@ static int ssb_fbs_set(struct ssb_fbs *priv, struct device_node *node)
 		sprom->itssi_bg = 0x00;
 		sprom->boardflags_lo = 0x2848;
 		sprom->boardflags_hi = 0x0000;
-		priv->devid_override = 0;
+		priv->devid_override = false;
 
 		dev_warn(priv->dev, "using basic SPROM\n");
 	} else {
@@ -696,6 +695,7 @@ static int ssb_fbs_probe(struct platform_device *pdev)
 	struct device_node *node = dev->of_node;
 	struct ssb_fbs *priv;
 	unsigned long flags;
+	u8 mac[ETH_ALEN];
 
 	priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
 	if (!priv)
@@ -708,18 +708,18 @@ static int ssb_fbs_probe(struct platform_device *pdev)
 	of_property_read_u32(node, "pci-bus", &priv->pci_bus);
 	of_property_read_u32(node, "pci-dev", &priv->pci_dev);
 
-	of_get_mac_address(node, priv->mac);
-	if (is_valid_ether_addr(priv->mac)) {
-		dev_info(dev, "mtd mac %pM\n", priv->mac);
+	of_get_mac_address(node, mac);
+	if (is_valid_ether_addr(mac)) {
+		dev_info(dev, "mtd mac %pM\n", mac);
 	} else {
-		random_ether_addr(priv->mac);
-		dev_info(dev, "random mac %pM\n", priv->mac);
+		random_ether_addr(mac);
+		dev_info(dev, "random mac %pM\n", mac);
 	}
 
-	memcpy(priv->sprom.il0mac, priv->mac, ETH_ALEN);
- 	memcpy(priv->sprom.et0mac, priv->mac, ETH_ALEN);
- 	memcpy(priv->sprom.et1mac, priv->mac, ETH_ALEN);
-	memcpy(priv->sprom.et2mac, priv->mac, ETH_ALEN);
+	memcpy(priv->sprom.il0mac, mac, ETH_ALEN);
+ 	memcpy(priv->sprom.et0mac, mac, ETH_ALEN);
+ 	memcpy(priv->sprom.et1mac, mac, ETH_ALEN);
+	memcpy(priv->sprom.et2mac, mac, ETH_ALEN);
 
 	spin_lock_irqsave(&ssb_fbs_lock, flags);
 	list_add(&priv->list, &ssb_fbs_list);




More information about the lede-commits mailing list