Skip to content

Commit

Permalink
MIPS: OCTEON: Drop boot_mem_map
Browse files Browse the repository at this point in the history
Replace walk through boot_mem_map with for_each_memblock.
And remove the check of total boot_mem_map.

Signed-off-by: Jiaxun Yang <jiaxun.yang@flygoat.com>
Signed-off-by: Paul Burton <paul.burton@mips.com>
Cc: linux-mips@vger.kernel.org
Cc: yasha.che3@gmail.com
Cc: aurelien@aurel32.net
Cc: sfr@canb.auug.org.au
Cc: fancer.lancer@gmail.com
Cc: matt.redfearn@mips.com
Cc: chenhc@lemote.com
  • Loading branch information
Jiaxun Yang authored and Paul Burton committed Aug 23, 2019
1 parent 8084499 commit 6cda3a5
Showing 2 changed files with 8 additions and 12 deletions.
17 changes: 7 additions & 10 deletions arch/mips/cavium-octeon/dma-octeon.c
Original file line number Diff line number Diff line change
@@ -16,6 +16,7 @@
#include <linux/types.h>
#include <linux/init.h>
#include <linux/mm.h>
#include <linux/memblock.h>

#include <asm/bootinfo.h>

@@ -190,7 +191,7 @@ char *octeon_swiotlb;

void __init plat_swiotlb_setup(void)
{
int i;
struct memblock_region *mem;
phys_addr_t max_addr;
phys_addr_t addr_size;
size_t swiotlbsize;
@@ -199,19 +200,15 @@ void __init plat_swiotlb_setup(void)
max_addr = 0;
addr_size = 0;

for (i = 0 ; i < boot_mem_map.nr_map; i++) {
struct boot_mem_map_entry *e = &boot_mem_map.map[i];
if (e->type != BOOT_MEM_RAM && e->type != BOOT_MEM_INIT_RAM)
continue;

for_each_memblock(memory, mem) {
/* These addresses map low for PCI. */
if (e->addr > 0x410000000ull && !OCTEON_IS_OCTEON2())
if (mem->base > 0x410000000ull && !OCTEON_IS_OCTEON2())
continue;

addr_size += e->size;
addr_size += mem->size;

if (max_addr < e->addr + e->size)
max_addr = e->addr + e->size;
if (max_addr < mem->base + mem->size)
max_addr = mem->base + mem->size;

}

3 changes: 1 addition & 2 deletions arch/mips/cavium-octeon/setup.c
Original file line number Diff line number Diff line change
@@ -1007,8 +1007,7 @@ void __init plat_mem_setup(void)
* regions next to each other.
*/
cvmx_bootmem_lock();
while ((boot_mem_map.nr_map < BOOT_MEM_MAP_MAX)
&& (total < max_memory)) {
while (total < max_memory) {
memory = cvmx_bootmem_phy_alloc(mem_alloc_size,
__pa_symbol(&_end), -1,
0x100000,

0 comments on commit 6cda3a5

Please sign in to comment.