mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-10-31 05:54:26 -04:00 
			
		
		
		
	Removed upstreamed/solved elsewhere upstream: - 0001-MIPS-ralink-Add-rt3352-SPI_CS1-pinmux.patch - 0002-MIPS-pci-rt2880-set-pci-controller-of_node.patch - 0004-MIPS-ralink-add-MT7621-pcie-driver.patch - 0009-PCI-MIPS-enable-PCIe-on-MT7688.patch - 0025-pinctrl-ralink-add-pinctrl-driver.patch - 0028-GPIO-ralink-add-mt7621-gpio-controller.patch - 0043-spi-add-mt7621-support.patch - 0045-i2c-add-mt7621-driver.patch - 0047-DMA-ralink-add-rt2880-dma-engine.patch - 0053-mtd-spi-nor-add-w25q256-3b-mode-switch.patch - 0054-mtd-spi-nor-w25q256-respect-default-mode.patch - 0099-pci-mt7620.patch - 304-spi-nor-enable-4B-opcodes-for-mx25l25635f.patch Removed because of the new NAND driver: - 0038-Revert-mtd-nand-Remove-unused-chip-write_page-hook.patch - 0039-mtd-add-mt7621-nand-support.patch - 0040-nand-hack.patch Remove patch that no longer applies (needs rework): - 0034-NET-multi-phy-support.patch Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
		
			
				
	
	
		
			46 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| From: Tobias Wolf <dev-NTEO@vplace.de>
 | |
| Subject: [v2] MIPS: Fix memory reservation in bootmem_init for certain non-usermem setups
 | |
| 
 | |
| Commit 67a3ba25aa95 ("MIPS: Fix incorrect mem=X@Y handling") introduced a new
 | |
| issue for rt288x where "PHYS_OFFSET" is 0x0 but the calculated "ramstart" is
 | |
| not. As the prerequisite of custom memory map has been removed, this results
 | |
| in the full memory range of 0x0 - 0x8000000 to be marked as reserved for this
 | |
| platform.
 | |
| 
 | |
| v2: Correctly compare that usermem is not null.
 | |
| 
 | |
| This patch adds the originally intended prerequisite again.
 | |
| 
 | |
| Signed-off-by: Tobias Wolf <dev-NTEO@vplace.de>
 | |
| ---
 | |
| 
 | |
| --- a/arch/mips/kernel/setup.c
 | |
| +++ b/arch/mips/kernel/setup.c
 | |
| @@ -285,6 +285,8 @@ static unsigned long __init init_initrd(
 | |
|   * Initialize the bootmem allocator. It also setup initrd related data
 | |
|   * if needed.
 | |
|   */
 | |
| +static int usermem __initdata;
 | |
| +
 | |
|  #if defined(CONFIG_SGI_IP27) || (defined(CONFIG_CPU_LOONGSON3) && defined(CONFIG_NUMA))
 | |
|  
 | |
|  static void __init bootmem_init(void)
 | |
| @@ -323,7 +325,7 @@ static void __init bootmem_init(void)
 | |
|  	/*
 | |
|  	 * Reserve any memory between the start of RAM and PHYS_OFFSET
 | |
|  	 */
 | |
| -	if (ramstart > PHYS_OFFSET)
 | |
| +	if (usermem && ramstart > PHYS_OFFSET)
 | |
|  		memblock_reserve(PHYS_OFFSET, ramstart - PHYS_OFFSET);
 | |
|  
 | |
|  	if (PFN_UP(ramstart) > ARCH_PFN_OFFSET) {
 | |
| @@ -384,8 +386,6 @@ static void __init bootmem_init(void)
 | |
|  
 | |
|  #endif	/* CONFIG_SGI_IP27 */
 | |
|  
 | |
| -static int usermem __initdata;
 | |
| -
 | |
|  static int __init early_parse_mem(char *p)
 | |
|  {
 | |
|  	phys_addr_t start, size;
 |