Commit 2a9b065c authored by Arend van Spriel's avatar Arend van Spriel Committed by Greg Kroah-Hartman
Browse files

staging: brcm80211: replace string based variable storage by linked list



The storage of variables obtained from srom are now stored in a linked
list and lookup is done based on the enumerated identifier.

Reported-by: default avatarJohannes Berg <johannes@sipsolutions.net>
Reviewed-by: default avatarRoland Vossen <rvossen@broadcom.com>
Reviewed-by: default avatarAlwin Beukers <alwin@broadcom.com>
Signed-off-by: default avatarArend van Spriel <arend@broadcom.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 36bd40db
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -1210,6 +1210,7 @@ void ai_detach(struct si_pub *sih)
		pcicore_deinit(sii->pch);
	sii->pch = NULL;

	srom_free_vars(sih);
	kfree(sii);
}

+1 −0
Original line number Diff line number Diff line
@@ -266,6 +266,7 @@ struct si_info {

	struct pcicore_info *pch; /* PCI/E core handle */

	struct list_head var_list; /* list of srom variables */
	char *vars;
	uint varsz;

+121 −431

File changed.

Preview size limit exceeded, changes collapsed.

+1 −0
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@
/* Prototypes */
extern int srom_var_init(struct si_pub *sih, void __iomem *curmap, char **vars,
			 uint *count);
extern void srom_free_vars(struct si_pub *sih);

extern int srom_read(struct si_pub *sih, uint bus, void *curmap,
		     uint byteoff, uint nbytes, u16 *buf, bool check_crc);