All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v6 00/11] Add RISC-V support
@ 2019-02-12 10:30 Alexander Graf
  2019-02-12 10:30 ` [PATCH v6 01/11] efi: Rename armxx to arch Alexander Graf
                   ` (11 more replies)
  0 siblings, 12 replies; 30+ messages in thread
From: Alexander Graf @ 2019-02-12 10:30 UTC (permalink / raw)
  To: grub-devel
  Cc: leif.lindholm, Peter Jones, Paul Walmsley, David Abdurachmanov,
	atish.patra, schwab, Michael Chang, Alistair Francis, Lukas Auer,
	greentime @ andestech . com, rickchen36 @ gmail . com, Bin Meng,
	Daniel Kiper

As part of the plan for total world domination, we would like to make sure
that booting on RISC-V is in a sane state before anyone goes and does quick
hacks "just because".

For that reason, U-Boot supports UEFI booting on RISC-V for a while now.
This patch set is the second part of the puzzle, with grub learning how to
deal with a UEFI enabled RISC-V target.

The third bit (still missing) is to actually make a working Linux UEFI port.
But that will come, I'm sure :).

Looking forward to review feedback and testing,

v1 -> v2:

  - adapt to new grub_open_file() API
  - adapt to new grub_create_loader_cmdline() API

v2 -> v3:

  - fix riscv32 target

v3 -> v4:

  - Rebase onto current git master
  - Change copyright from 2013 to 2018
  - Coding style fixes
  - Add spec reference
  - Resurrect time reading code

v4 -> v5:

  - Mark grub_arch_sync_dma_caches args as unused
  - Whitespace fix
  - Add spec link to mkimagexx.c
  - Remove curly braces
  - Use GRUB_EFI_LINUX_FDT_EXTRA_SPACE
  - Fix whitespace
  - s/failure/fail
  - Remove blank line at EOF
  - Add blank lines before and after license tag
  - New patch: RISC-V: Add libgcc helpers for clz

v5 -> v6:

  - Remove most linux loading logic

Alexander Graf (11):
  efi: Rename armxx to arch
  PE: Add RISC-V definitions
  elf.h: Add RISC-V definitions
  RISC-V: Add setjmp implementation
  RISC-V: Add early startup code
  RISC-V: Add Linux load logic
  RISC-V: Add awareness for RISC-V reloations
  RISC-V: Add auxiliary files
  RISC-V: Add libgcc helpers for clz
  RISC-V: Add to build system
  fdt: Treat device tree file type like ACPI

 configure.ac                       |  28 ++-
 gentpl.py                          |  11 +-
 grub-core/Makefile.am              |  12 ++
 grub-core/Makefile.core.def        |  29 ++++
 grub-core/commands/efi/shim_lock.c |   1 +
 grub-core/commands/file.c          |  14 +-
 grub-core/kern/compiler-rt.c       |  48 +++++-
 grub-core/kern/dl.c                |   6 +-
 grub-core/kern/efi/mm.c            |   2 +-
 grub-core/kern/emu/cache.c         |   6 +
 grub-core/kern/emu/cache_s.S       |   1 +
 grub-core/kern/emu/lite.c          |   2 +
 grub-core/kern/riscv/cache.c       |  63 +++++++
 grub-core/kern/riscv/cache_flush.S |  44 +++++
 grub-core/kern/riscv/dl.c          | 340 +++++++++++++++++++++++++++++++++++++
 grub-core/kern/riscv/efi/init.c    |  76 +++++++++
 grub-core/kern/riscv/efi/startup.S |  48 ++++++
 grub-core/lib/efi/halt.c           |   3 +-
 grub-core/lib/riscv/setjmp.S       |  84 +++++++++
 grub-core/lib/setjmp.S             |   2 +
 grub-core/loader/arm64/linux.c     |  10 +-
 grub-core/loader/arm64/xen_boot.c  |   6 +-
 grub-core/loader/riscv/linux.c     |  59 +++++++
 include/grub/arm/linux.h           |   2 +-
 include/grub/arm64/linux.h         |   2 +-
 include/grub/compiler-rt.h         |  19 ++-
 include/grub/dl.h                  |   6 +-
 include/grub/efi/api.h             |   3 +-
 include/grub/efi/efi.h             |   6 +-
 include/grub/efi/pe32.h            |   5 +
 include/grub/elf.h                 |  58 +++++++
 include/grub/file.h                |   4 +-
 include/grub/misc.h                |   3 +-
 include/grub/riscv32/efi/memory.h  |   6 +
 include/grub/riscv32/linux.h       |  41 +++++
 include/grub/riscv32/setjmp.h      |  27 +++
 include/grub/riscv32/time.h        |  28 +++
 include/grub/riscv32/types.h       |  34 ++++
 include/grub/riscv64/efi/memory.h  |   6 +
 include/grub/riscv64/linux.h       |  43 +++++
 include/grub/riscv64/setjmp.h      |  27 +++
 include/grub/riscv64/time.h        |  28 +++
 include/grub/riscv64/types.h       |  34 ++++
 include/grub/util/install.h        |   2 +
 util/grub-install-common.c         |   2 +
 util/grub-install.c                |  28 +++
 util/grub-mkimagexx.c              | 259 ++++++++++++++++++++++++++++
 util/grub-mknetdir.c               |   4 +-
 util/grub-mkrescue.c               |  16 +-
 util/grub-module-verifier.c        |  56 ++++++
 util/mkimage.c                     |  32 ++++
 51 files changed, 1637 insertions(+), 39 deletions(-)
 create mode 100644 grub-core/kern/riscv/cache.c
 create mode 100644 grub-core/kern/riscv/cache_flush.S
 create mode 100644 grub-core/kern/riscv/dl.c
 create mode 100644 grub-core/kern/riscv/efi/init.c
 create mode 100644 grub-core/kern/riscv/efi/startup.S
 create mode 100644 grub-core/lib/riscv/setjmp.S
 create mode 100644 grub-core/loader/riscv/linux.c
 create mode 100644 include/grub/riscv32/efi/memory.h
 create mode 100644 include/grub/riscv32/linux.h
 create mode 100644 include/grub/riscv32/setjmp.h
 create mode 100644 include/grub/riscv32/time.h
 create mode 100644 include/grub/riscv32/types.h
 create mode 100644 include/grub/riscv64/efi/memory.h
 create mode 100644 include/grub/riscv64/linux.h
 create mode 100644 include/grub/riscv64/setjmp.h
 create mode 100644 include/grub/riscv64/time.h
 create mode 100644 include/grub/riscv64/types.h

-- 
2.12.3



^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2019-03-07 19:25 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-02-12 10:30 [PATCH v6 00/11] Add RISC-V support Alexander Graf
2019-02-12 10:30 ` [PATCH v6 01/11] efi: Rename armxx to arch Alexander Graf
2019-02-12 10:30 ` [PATCH v6 02/11] PE: Add RISC-V definitions Alexander Graf
2019-02-12 10:31 ` [PATCH v6 03/11] elf.h: " Alexander Graf
2019-02-12 10:31 ` [PATCH v6 04/11] RISC-V: Add setjmp implementation Alexander Graf
2019-02-12 10:31 ` [PATCH v6 05/11] RISC-V: Add early startup code Alexander Graf
2019-02-12 10:31 ` [PATCH v6 06/11] RISC-V: Add Linux load logic Alexander Graf
2019-02-13  0:37   ` Alistair Francis
2019-02-18 19:28   ` Daniel Kiper
2019-02-19 13:25     ` Alexander Graf
2019-02-20 20:32       ` Daniel Kiper
2019-02-12 10:31 ` [PATCH v6 07/11] RISC-V: Add awareness for RISC-V reloations Alexander Graf
2019-02-13  0:44   ` Alistair Francis
2019-02-18 19:36     ` Daniel Kiper
2019-02-12 10:31 ` [PATCH v6 08/11] RISC-V: Add auxiliary files Alexander Graf
2019-02-12 16:32   ` [PATCH v7 " Alexander Graf
2019-02-13  0:48     ` Alistair Francis
2019-02-18 19:44       ` Daniel Kiper
2019-02-12 10:31 ` [PATCH v6 09/11] RISC-V: Add libgcc helpers for clz Alexander Graf
2019-02-18 19:55   ` Daniel Kiper
2019-02-19 13:26     ` Alexander Graf
2019-02-20 20:34       ` Daniel Kiper
2019-02-12 10:31 ` [PATCH v6 10/11] RISC-V: Add to build system Alexander Graf
2019-02-18 20:14   ` Daniel Kiper
2019-02-19 13:44     ` Alexander Graf
2019-02-20 20:36       ` Daniel Kiper
2019-02-12 10:31 ` [PATCH v6 11/11] fdt: Treat device tree file type like ACPI Alexander Graf
2019-02-13  0:40   ` Alistair Francis
2019-03-06 16:53 ` [PATCH v6 00/11] Add RISC-V support Andreas Schwab
2019-03-07 19:22   ` Daniel Kiper

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.