Enable testing kernel. Fix compile errors by using new kernel APIs. Fix fuzz by manually editing patches to ensure the code goes in the right place. For 721-NET-no-auto-carrier-off-support.patch, revert upstream commit a307593a6 to keep the OpenWrt ralink driver operational. Add mt7621-pci-phy patch to select REGMAP_MMIO as discussed in PR #3693 and #3952. Run automatic quilt refresh on the rest. Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
		
			
				
	
	
		
			64 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			64 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
From f15d27f9c90ede4b16eb37f9ae573ef81c2b6996 Mon Sep 17 00:00:00 2001
 | 
						|
From: David Bauer <mail@david-bauer.net>
 | 
						|
Date: Thu, 31 Dec 2020 18:49:12 +0100
 | 
						|
Subject: [PATCH] MIPS: add bootargs-override property
 | 
						|
 | 
						|
Add support for the bootargs-override property to the chosen node
 | 
						|
similar to the one used on ipq806x or mpc85xx.
 | 
						|
 | 
						|
This is necessary, as the U-Boot used on some boards, notably the
 | 
						|
Ubiquiti UniFi 6 Lite, overwrite the bootargs property of the chosen
 | 
						|
node leading to a kernel panic when loading OpenWrt.
 | 
						|
 | 
						|
Signed-off-by: David Bauer <mail@david-bauer.net>
 | 
						|
---
 | 
						|
 arch/mips/kernel/setup.c | 30 ++++++++++++++++++++++++++++++
 | 
						|
 1 file changed, 30 insertions(+)
 | 
						|
 | 
						|
--- a/arch/mips/kernel/setup.c
 | 
						|
+++ b/arch/mips/kernel/setup.c
 | 
						|
@@ -542,8 +542,28 @@ static int __init bootcmdline_scan_chose
 | 
						|
 
 | 
						|
 #endif /* CONFIG_OF_EARLY_FLATTREE */
 | 
						|
 
 | 
						|
+static int __init bootcmdline_scan_chosen_override(unsigned long node, const char *uname,
 | 
						|
+						   int depth, void *data)
 | 
						|
+{
 | 
						|
+	bool *dt_bootargs = data;
 | 
						|
+	const char *p;
 | 
						|
+	int l;
 | 
						|
+
 | 
						|
+	if (depth != 1 || !data || strcmp(uname, "chosen") != 0)
 | 
						|
+		return 0;
 | 
						|
+
 | 
						|
+	p = of_get_flat_dt_prop(node, "bootargs-override", &l);
 | 
						|
+	if (p != NULL && l > 0) {
 | 
						|
+		strlcpy(boot_command_line, p, COMMAND_LINE_SIZE);
 | 
						|
+		*dt_bootargs = true;
 | 
						|
+	}
 | 
						|
+
 | 
						|
+	return 1;
 | 
						|
+}
 | 
						|
+
 | 
						|
 static void __init bootcmdline_init(void)
 | 
						|
 {
 | 
						|
+	bool dt_bootargs_override = false;
 | 
						|
 	bool dt_bootargs = false;
 | 
						|
 
 | 
						|
 	/*
 | 
						|
@@ -557,6 +577,14 @@ static void __init bootcmdline_init(void
 | 
						|
 	}
 | 
						|
 
 | 
						|
 	/*
 | 
						|
+	 * If bootargs-override in the chosen node is set, use this as the
 | 
						|
+	 * command line
 | 
						|
+	 */
 | 
						|
+	of_scan_flat_dt(bootcmdline_scan_chosen_override, &dt_bootargs_override);
 | 
						|
+	if (dt_bootargs_override)
 | 
						|
+		return;
 | 
						|
+
 | 
						|
+	/*
 | 
						|
 	 * If the user specified a built-in command line &
 | 
						|
 	 * MIPS_CMDLINE_BUILTIN_EXTEND, then the built-in command line is
 | 
						|
 	 * prepended to arguments from the bootloader or DT so we'll copy them
 |