
This patchset adds the platforms specific bootoctlinux command, which is used to boot the MIPS Octeon Linux kernel (4.9.x). A special command is necessary here, as very platform specific data is passed to the kernel via the bootinfo / bootmem format. This patchset also includes various required infrastructure code for this (octeon-feature, coremask, bootinfo). The code for booting the additional cores is also included in this patchset.
Tested on Octeon 7304 EBB with all 16 cores.
Thanks, Stefan
Aaron Williams (7): mips: octeon: Add header cvmx-regs.h mips: octeon: Add header octeon-feature.h mips: octeon: Add header cvmx-fuse.h mips: octeon: Add header cvmx-bootinfo.h mips: octeon: Add coremask support mips: octeon: Add bootmem support mips: octeon: Add bootoctlinux command
Stefan Roese (3): mips: octeon: octeon-model.h: Enable inclusion from assembler files mips: octeon: lowlevel_init.S: Add NMI handling code for SMP Linux booting mips: octeon: octeon_common.h: Increase CONFIG_SYS_BOOTM_LEN
arch/mips/mach-octeon/Makefile | 3 + arch/mips/mach-octeon/bootoctlinux.c | 661 ++++++++ arch/mips/mach-octeon/cvmx-bootmem.c | 1460 +++++++++++++++++ arch/mips/mach-octeon/cvmx-coremask.c | 366 +++++ .../mach-octeon/include/mach/bootoct_cmd.h | 54 + .../mach-octeon/include/mach/cvmx-bootinfo.h | 350 ++++ .../mach-octeon/include/mach/cvmx-bootmem.h | 533 ++++++ .../mach-octeon/include/mach/cvmx-coremask.h | 752 +++++++++ .../mips/mach-octeon/include/mach/cvmx-fuse.h | 71 + .../mips/mach-octeon/include/mach/cvmx-regs.h | 144 ++ .../mach-octeon/include/mach/octeon-feature.h | 442 +++++ .../mach-octeon/include/mach/octeon-model.h | 4 + arch/mips/mach-octeon/lowlevel_init.S | 76 + include/configs/octeon_common.h | 2 + 14 files changed, 4918 insertions(+) create mode 100644 arch/mips/mach-octeon/bootoctlinux.c create mode 100644 arch/mips/mach-octeon/cvmx-bootmem.c create mode 100644 arch/mips/mach-octeon/cvmx-coremask.c create mode 100644 arch/mips/mach-octeon/include/mach/bootoct_cmd.h create mode 100644 arch/mips/mach-octeon/include/mach/cvmx-bootinfo.h create mode 100644 arch/mips/mach-octeon/include/mach/cvmx-bootmem.h create mode 100644 arch/mips/mach-octeon/include/mach/cvmx-coremask.h create mode 100644 arch/mips/mach-octeon/include/mach/cvmx-fuse.h create mode 100644 arch/mips/mach-octeon/include/mach/cvmx-regs.h create mode 100644 arch/mips/mach-octeon/include/mach/octeon-feature.h