Subject: linux-next: build failure after merge of the staging tree

From: Stephen Rothwell <[email-masked]>
Date: Mon, 18 Aug 2014 08:47:50 +1000

Hi Greg,

After merging the staging tree, today's linux-next build (powerpc allyesconfig)
failed like this:

drivers/staging/built-in.o:(.opd+0xaab8): multiple definition of `rtl88e_phy_rf_config'
drivers/net/built-in.o:(.opd+0x78840): first defined here
drivers/staging/built-in.o:(.opd+0xa9f8): multiple definition of `rtl88e_download_fw'
drivers/net/built-in.o:(.opd+0x781b0): first defined here
drivers/staging/built-in.o: In function `.rtl88e_phy_rf_config':
(.text+0xe0a00): multiple definition of `.rtl88e_phy_rf_config'
drivers/net/built-in.o:(.text+0xe85a48): first defined here
drivers/staging/built-in.o: In function `.rtl88e_download_fw':
(.text+0xdf28c): multiple definition of `.rtl88e_download_fw'
drivers/net/built-in.o:(.text+0xe6f330): first defined here
drivers/staging/built-in.o: In function `.rtl88e_phy_mac_config':
(.text+0xdf984): multiple definition of `.rtl88e_phy_mac_config'
drivers/net/built-in.o:(.text+0xe84a8c): first defined here
drivers/staging/built-in.o: In function `.rtl88e_phy_bb_config':
(.text+0xdfa2c): multiple definition of `.rtl88e_phy_bb_config'
drivers/net/built-in.o:(.text+0xe84d14): first defined here
drivers/staging/built-in.o:(.opd+0xaa58): multiple definition of `rtl88e_phy_bb_config'
drivers/net/built-in.o:(.opd+0x78828): first defined here
drivers/staging/built-in.o:(.opd+0xaa28): multiple definition of `rtl88e_phy_mac_config'

Caused by commits d6c28c23f89b ("staging: rtl8188eu: Cleanup firmware
initialization code") and 586b60877244 ("staging: rtl8188eu: Cleanup
and simplify RF configuration code") and probably others.

I applied this fix up patch:

From: Stephen Rothwell <[email-masked]>
Date: Mon, 18 Aug 2014 08:40:48 +1000
Subject: [PATCH] staging: rtl8188eu: using unique names is good

fixes:

drivers/staging/built-in.o:(.opd+0xaab8): multiple definition of `rtl88e_phy_rf_config'
drivers/net/built-in.o:(.opd+0x78840): first defined here
drivers/staging/built-in.o:(.opd+0xa9f8): multiple definition of `rtl88e_download_fw'
drivers/net/built-in.o:(.opd+0x781b0): first defined here
drivers/staging/built-in.o: In function `.rtl88e_phy_rf_config':
(.text+0xe0a00): multiple definition of `.rtl88e_phy_rf_config'
drivers/net/built-in.o:(.text+0xe85a48): first defined here
drivers/staging/built-in.o: In function `.rtl88e_download_fw':
(.text+0xdf28c): multiple definition of `.rtl88e_download_fw'
drivers/net/built-in.o:(.text+0xe6f330): first defined here
drivers/staging/built-in.o: In function `.rtl88e_phy_mac_config':
(.text+0xdf984): multiple definition of `.rtl88e_phy_mac_config'
drivers/net/built-in.o:(.text+0xe84a8c): first defined here
drivers/staging/built-in.o: In function `.rtl88e_phy_bb_config':
(.text+0xdfa2c): multiple definition of `.rtl88e_phy_bb_config'
drivers/net/built-in.o:(.text+0xe84d14): first defined here
drivers/staging/built-in.o:(.opd+0xaa58): multiple definition of `rtl88e_phy_bb_config'
drivers/net/built-in.o:(.opd+0x78828): first defined here
drivers/staging/built-in.o:(.opd+0xaa28): multiple definition of `rtl88e_phy_mac_config'

Signed-off-by: Stephen Rothwell <[email-masked]>
---
 drivers/staging/rtl8188eu/hal/HalHWImg8188E_BB.c  | 2 +-
 drivers/staging/rtl8188eu/hal/HalHWImg8188E_MAC.c | 2 +-
 drivers/staging/rtl8188eu/hal/HalHWImg8188E_RF.c  | 2 +-
 drivers/staging/rtl8188eu/hal/fw.c                | 2 +-
 drivers/staging/rtl8188eu/hal/usb_halinit.c       | 8 ++++----
 drivers/staging/rtl8188eu/include/fw.h            | 2 +-
 drivers/staging/rtl8188eu/include/phy.h           | 6 +++---
 7 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/drivers/staging/rtl8188eu/hal/HalHWImg8188E_BB.c b/drivers/staging/rtl8188eu/hal/HalHWImg8188E_BB.c
index 00f9cd737193..0c5dc26fd5a2 100644
--- a/drivers/staging/rtl8188eu/hal/HalHWImg8188E_BB.c
+++ b/drivers/staging/rtl8188eu/hal/HalHWImg8188E_BB.c
@@ -687,7 +687,7 @@ static bool config_parafile(struct adapter *adapt)
 	return true;
 }
 
-bool rtl88e_phy_bb_config(struct adapter *adapt)
+bool rtl88eu_phy_bb_config(struct adapter *adapt)
 {
 	int rtstatus = true;
 	struct hal_data_8188e	*hal_data = GET_HAL_DATA(adapt);
diff --git a/drivers/staging/rtl8188eu/hal/HalHWImg8188E_MAC.c b/drivers/staging/rtl8188eu/hal/HalHWImg8188E_MAC.c
index ccca6a496b2b..7d22dd1abaed 100644
--- a/drivers/staging/rtl8188eu/hal/HalHWImg8188E_MAC.c
+++ b/drivers/staging/rtl8188eu/hal/HalHWImg8188E_MAC.c
@@ -116,7 +116,7 @@ static u32 array_MAC_REG_8188E[] = {
 		0x70B, 0x00000087,
 };
 
-bool rtl88e_phy_mac_config(struct adapter *adapt)
+bool rtl88eu_phy_mac_config(struct adapter *adapt)
 {
 	u32 i;
 	u32 arraylength;
diff --git a/drivers/staging/rtl8188eu/hal/HalHWImg8188E_RF.c b/drivers/staging/rtl8188eu/hal/HalHWImg8188E_RF.c
index 2648840f9e20..94ee740efd1f 100644
--- a/drivers/staging/rtl8188eu/hal/HalHWImg8188E_RF.c
+++ b/drivers/staging/rtl8188eu/hal/HalHWImg8188E_RF.c
@@ -312,7 +312,7 @@ static bool rtl88e_phy_rf6052_config(struct adapter *adapt)
 	return rf6052_conf_para(adapt);
 }
 
-bool rtl88e_phy_rf_config(struct adapter *adapt)
+bool rtl88eu_phy_rf_config(struct adapter *adapt)
 {
 	return rtl88e_phy_rf6052_config(adapt);
 }
diff --git a/drivers/staging/rtl8188eu/hal/fw.c b/drivers/staging/rtl8188eu/hal/fw.c
index 09324ae80e72..17b7f3750547 100644
--- a/drivers/staging/rtl8188eu/hal/fw.c
+++ b/drivers/staging/rtl8188eu/hal/fw.c
@@ -181,7 +181,7 @@ exit:
 	return err;
 }
 
-int rtl88e_download_fw(struct adapter *adapt)
+int rtl88eu_download_fw(struct adapter *adapt)
 {
 	struct hal_data_8188e *rtlhal = GET_HAL_DATA(adapt);
 	struct dvobj_priv *dvobj = adapter_to_dvobj(adapt);
diff --git a/drivers/staging/rtl8188eu/hal/usb_halinit.c b/drivers/staging/rtl8188eu/hal/usb_halinit.c
index c5559dfa4e92..1f057b32876d 100644
--- a/drivers/staging/rtl8188eu/hal/usb_halinit.c
+++ b/drivers/staging/rtl8188eu/hal/usb_halinit.c
@@ -743,7 +743,7 @@ static u32 rtl8188eu_hal_init(struct adapter *Adapter)
 		Adapter->bFWReady = false;
 		haldata->fw_ractrl = false;
 	} else {
-		status = rtl88e_download_fw(Adapter);
+		status = rtl88eu_download_fw(Adapter);
 
 		if (status) {
 			DBG_88E("%s: Download Firmware failed!!\n", __func__);
@@ -758,11 +758,11 @@ static u32 rtl8188eu_hal_init(struct adapter *Adapter)
 	}
 	rtl8188e_InitializeFirmwareVars(Adapter);
 
-	rtl88e_phy_mac_config(Adapter);
+	rtl88eu_phy_mac_config(Adapter);
 
-	rtl88e_phy_bb_config(Adapter);
+	rtl88eu_phy_bb_config(Adapter);
 
-	rtl88e_phy_rf_config(Adapter);
+	rtl88eu_phy_rf_config(Adapter);
 
 	HAL_INIT_PROFILE_TAG(HAL_INIT_STAGES_EFUSE_PATCH);
 	status = rtl8188e_iol_efuse_patch(Adapter);
diff --git a/drivers/staging/rtl8188eu/include/fw.h b/drivers/staging/rtl8188eu/include/fw.h
index c7c7e7e5ffac..d5faaff3db59 100644
--- a/drivers/staging/rtl8188eu/include/fw.h
+++ b/drivers/staging/rtl8188eu/include/fw.h
@@ -54,6 +54,6 @@ struct rtl92c_firmware_header {
 	u32 rsvd5;
 };
 
-int rtl88e_download_fw(struct adapter *adapt);
+int rtl88eu_download_fw(struct adapter *adapt);
 
 #endif
diff --git a/drivers/staging/rtl8188eu/include/phy.h b/drivers/staging/rtl8188eu/include/phy.h
index 676a66c44264..e3efa8fd69a8 100644
--- a/drivers/staging/rtl8188eu/include/phy.h
+++ b/drivers/staging/rtl8188eu/include/phy.h
@@ -1,3 +1,3 @@
-bool rtl88e_phy_mac_config(struct adapter *adapt);
-bool rtl88e_phy_rf_config(struct adapter *adapt);
-bool rtl88e_phy_bb_config(struct adapter *adapt);
+bool rtl88eu_phy_mac_config(struct adapter *adapt);
+bool rtl88eu_phy_rf_config(struct adapter *adapt);
+bool rtl88eu_phy_bb_config(struct adapter *adapt);
-- 
2.1.0.rc1

-- 
Cheers,
Stephen Rothwell                    [email-masked]