The most important is probably regression fix in handling platform NVRAM. That bug stopped hardware from being properly calibrated breaking e.g. 5 GHz for Netgear R8000. Other than that it triggers memory dumps when experiencing firmware problems which is important for debugging purposes. Fixes:2811c97803("mac80211: backport brcmfmac firmware & clm_blob loading rework") Signed-off-by: Rafał Miłecki <rafal@milecki.pl> (cherry picked from commitb26214adb5)
		
			
				
	
	
		
			31 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
From b8248236e92790ac635caeb4156e46ea2417e037 Mon Sep 17 00:00:00 2001
 | 
						|
From: Franky Lin <franky.lin@broadcom.com>
 | 
						|
Date: Wed, 16 May 2018 14:12:03 +0200
 | 
						|
Subject: [PATCH] brcmfmac: trigger memory dump on SDIO firmware halt message
 | 
						|
 | 
						|
Attempt to dump dongle memory for debug upon receiving firmware halt
 | 
						|
message through dongle to host mail box interrupt.
 | 
						|
 | 
						|
Reviewed-by: Arend van Spriel <arend.vanspriel@broadcom.com>
 | 
						|
Signed-off-by: Franky Lin <franky.lin@broadcom.com>
 | 
						|
Signed-off-by: Arend van Spriel <arend.vanspriel@broadcom.com>
 | 
						|
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
 | 
						|
---
 | 
						|
 drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c | 4 +++-
 | 
						|
 1 file changed, 3 insertions(+), 1 deletion(-)
 | 
						|
 | 
						|
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
 | 
						|
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
 | 
						|
@@ -1072,8 +1072,10 @@ static u32 brcmf_sdio_hostmail(struct br
 | 
						|
 	bus->sdcnt.f1regdata += 2;
 | 
						|
 
 | 
						|
 	/* dongle indicates the firmware has halted/crashed */
 | 
						|
-	if (hmb_data & HMB_DATA_FWHALT)
 | 
						|
+	if (hmb_data & HMB_DATA_FWHALT) {
 | 
						|
 		brcmf_err("mailbox indicates firmware halted\n");
 | 
						|
+		brcmf_dev_coredump(&sdiod->func1->dev);
 | 
						|
+	}
 | 
						|
 
 | 
						|
 	/* Dongle recomposed rx frames, accept them again */
 | 
						|
 	if (hmb_data & HMB_DATA_NAKHANDLED) {
 |