1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2024-11-27 19:33:08 +02:00

brcm47xx: BCMA - Consolidate/reduce code in bcma_device_name

Eliminate unneeded procedure by incorporating code into bcma_device_name

Signed-off-by: Nathan Hintz <nlhintz@hotmail.com>


git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31120 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
hauke 2012-03-28 09:36:50 +00:00
parent 98aade835d
commit e32d309b26

View File

@ -48,7 +48,7 @@
{ BCMA_CORE_MAC_GBIT, "GBit MAC" },
{ BCMA_CORE_DDR12_MEM_CTL, "DDR1/DDR2 Memory Controller" },
{ BCMA_CORE_PCIE_RC, "PCIe Root Complex" },
@@ -79,16 +80,57 @@ struct bcma_device_id_name bcma_device_n
@@ -79,16 +80,41 @@ struct bcma_device_id_name bcma_device_n
{ BCMA_CORE_SHIM, "SHIM" },
{ BCMA_CORE_DEFAULT, "Default" },
};
@ -60,30 +60,17 @@
+ { BCMA_CORE_MIPS_74K, "MIPS 74K" },
+};
+
+static const char *bcma_scan_device_names(const struct bcma_device_id *id,
+ const struct bcma_device_id_name *device_names,
+ int array_size)
+static const char *bcma_device_name(const struct bcma_device_id *id)
{
int i;
- int i;
+ const struct bcma_device_id_name *names;
+ int size, i;
- if (id->manuf == BCMA_MANUF_BCM) {
- for (i = 0; i < ARRAY_SIZE(bcma_device_names); i++) {
- if (bcma_device_names[i].id == id->id)
- return bcma_device_names[i].name;
- }
+ for (i = 0; i < array_size; i++) {
+ if (device_names[i].id == id->id)
+ return device_names[i].name;
}
+ return NULL;
+}
+
+static const char *bcma_device_name(const struct bcma_device_id *id)
+{
+ const char *name;
+ const struct bcma_device_id_name *names;
+ int size;
+
+ /* search manufacturer specific names */
+ switch (id->manuf) {
+ case BCMA_MANUF_ARM:
@ -99,14 +86,12 @@
+ size = ARRAY_SIZE(bcma_mips_device_names);
+ break;
+ default:
+ names = NULL;
+ break;
+ }
+ return "UNKNOWN";
}
+
+ if (names) {
+ name = bcma_scan_device_names(id, names, size);
+ if (name)
+ return name;
+ for (i = 0; i < size; i++) {
+ if (names[i].id == id->id)
+ return names[i].name;
+ }
+
return "UNKNOWN";