mail archive of the barebox mailing list
 help / color / mirror / Atom feed
From: Ahmad Fatoum <a.fatoum@pengutronix.de>
To: Antony Pavlov <antonynpavlov@gmail.com>
Cc: barebox@lists.infradead.org, rcz@pengutronix.de
Subject: Re: [PATCH 00/20] RISC-V: rework for PBL, VIRT and 64-Bit support
Date: Mon, 15 Mar 2021 11:30:55 +0100	[thread overview]
Message-ID: <16b8990f-1ab3-2222-aa40-cee4bc20998f@pengutronix.de> (raw)
In-Reply-To: <20210315112237.32cc9325433b134de4859acb@gmail.com>

Hello Antony,

On 15.03.21 09:22, Antony Pavlov wrote:
> On Sun, 14 Mar 2021 13:27:44 +0100
> Ahmad Fatoum <a.fatoum@pengutronix.de> wrote: 
> I'm very glad to see RISC-V support improvement!

Your erizo barebox/qemu work made the initial iterations much quicker,
so thanks for that!

> Can you please push your RISC-V working branch to github (or other public git repo),
> so I can test it too?

Sure. I'll send out a v2 and send you a github link later today or early tomorrow.

> At the moment I have at least two out-of tree RISC-V branches that which I want
> to rebase on latest barebox with your patches:
> 
>   * https://github.com/frantony/barebox/tree/20200222.riscv-sifive 
>     contains hacky 64-bit support and add Sifive U500 qemu support.

This is becoming relevant for us as well as we'' port barebox to the
BeagleV. Our intention is to get the other Qemu platforms running
as well in preparation for actual hardware support.

>     
>   * https://github.com/litex-hub/barebox/tree/20200727.litex-vexriscv-linux
>     contains litex SoC with RISC-V 32-bit CPU core support.
>     It can run linux on Arty, please see
>     https://github.com/enjoy-digital/litex/issues/413#issuecomment-609047340
> 
>     It seems, that ethernet driver needs update: https://github.com/litex-hub/barebox/issues/1

Thanks for the heads up. I will take a look at your rebased branches,
once they are available.

> I suppose that you can add 'bootm: add RISC-V image type' patch to your series 
> (I'll send you the patch in a few minutes). The patch used in the litex series.

Sascha just picked it up.

Cheers,
Ahmad

> 
> 
>> With these changes applied, barebox can now generate images that can
>> be booted on qemu/tinyemu virt32 and virt64 machines.
>>
>> The boards have clocksource, virtio, cfi-flash,  reboot and poweroff
>> support.
>>
>> Cheers,
>> Ahmad Fatoum (18):
>>   partitions: don't allocate dma capable memory
>>   images: make BOARD_ARM_GENERIC_DT available for other arches
>>   ARM: rename CONFIG_ARM_USE_COMPRESSED_DTB to CONFIG_USE_COMPRESSED_DTB
>>   ARM: aarch64: ommit unused label in assembly
>>   serial: virtio-console: depend on, but don't select VIRTIO
>>   filetype: detect RISC-V Linux kernel image
>>   asm: unaligned: don't do unaligned accesses
>>   RISC-V: debug_ll: ns16550: align C access size with assembly's
>>   RISC-V: drop duplicate or unneeded cflags
>>   RISC-V: add cacheless HAS_DMA support
>>   RISC-V: erizo: move to arch/riscv/boards/erizo
>>   RISC-V: import Linux' optimized string functions
>>   RISC-V: implement PBL and relocation support
>>   RISC-V: erizo: migrate to PBL
>>   RISC-V: support symbol names in barebox image
>>   RISC-V: add generic DT image
>>   clocksource: add driver for RISC-V CLINT timer
>>   power: reset: add drivers for generic syscon reset and poweroff
>>
>> Rouven Czerwinski (2):
>>   RISC-V: add 64-bit support
>>   RISC-V: add Qemu virt support
>>
>>  Documentation/boards/riscv.rst               |  72 ++++++-
>>  Makefile                                     |   1 +
>>  arch/arm/Kconfig                             |   9 +-
>>  arch/arm/cpu/start.c                         |   2 +-
>>  arch/arm/lib64/runtime-offset.S              |   2 +-
>>  arch/arm/mach-at91/Kconfig                   |   2 +-
>>  arch/arm/mach-imx/Kconfig                    |  26 +--
>>  arch/arm/mach-omap/Kconfig                   |   2 +-
>>  arch/riscv/Kconfig                           |  66 +++++--
>>  arch/riscv/Makefile                          |  34 ++--
>>  arch/riscv/boards/Makefile                   |   2 +
>>  arch/riscv/boards/erizo/Makefile             |   3 +
>>  arch/riscv/boards/erizo/lowlevel.c           |  18 ++
>>  arch/riscv/boot/Makefile                     |   5 +-
>>  arch/riscv/boot/board-dt-2nd-entry.S         |  26 +++
>>  arch/riscv/boot/board-dt-2nd.c               |  29 +++
>>  arch/riscv/boot/dtb.c                        |  25 ---
>>  arch/riscv/boot/entry.c                      |  33 ++++
>>  arch/riscv/boot/entry.h                      |  15 ++
>>  arch/riscv/boot/entry_ll.S                   |  15 ++
>>  arch/riscv/boot/main_entry.c                 |  35 ----
>>  arch/riscv/boot/start.S                      |  68 -------
>>  arch/riscv/boot/start.c                      | 197 +++++++++++++++++++
>>  arch/riscv/boot/uncompress.c                 |  74 +++++++
>>  arch/riscv/configs/erizo_generic_defconfig   |   5 -
>>  arch/riscv/configs/virt32_defconfig          | 117 +++++++++++
>>  arch/riscv/configs/virt64_defconfig          | 118 +++++++++++
>>  arch/riscv/dts/Makefile                      |   9 +-
>>  arch/riscv/include/asm/barebox-riscv.h       | 101 ++++++++++
>>  arch/riscv/include/asm/common.h              |  10 +-
>>  arch/riscv/include/asm/debug_ll_ns16550.h    |  16 +-
>>  arch/riscv/include/asm/dma.h                 |  44 +++++
>>  arch/riscv/include/asm/elf.h                 |   8 +-
>>  arch/riscv/include/asm/image.h               |  65 ++++++
>>  arch/riscv/include/asm/linkage.h             |   4 +
>>  arch/riscv/include/asm/sections.h            |  15 ++
>>  arch/riscv/include/asm/string.h              |  21 +-
>>  arch/riscv/include/asm/types.h               |   8 +-
>>  arch/riscv/include/asm/unaligned.h           |  16 +-
>>  arch/riscv/lib/Makefile                      |   6 +-
>>  arch/riscv/lib/barebox.lds.S                 |  55 ++++--
>>  arch/riscv/lib/dtb.c                         |  26 +++
>>  arch/riscv/lib/memcpy.S                      | 108 ++++++++++
>>  arch/riscv/lib/memmove.S                     |  64 ++++++
>>  arch/riscv/lib/memset.S                      | 113 +++++++++++
>>  arch/riscv/lib/pbl.lds.S                     |  88 +++++++++
>>  arch/riscv/lib/reloc.c                       |  64 ++++++
>>  arch/riscv/lib/runtime-offset.S              |  12 ++
>>  arch/riscv/lib/sections.c                    |   9 +
>>  arch/riscv/lib/setupc.S                      |  55 ++++++
>>  arch/riscv/mach-virt/Makefile                |   3 +
>>  arch/riscv/mach-virt/include/mach/debug_ll.h |  25 +++
>>  common/Kconfig                               |   8 +-
>>  common/filetype.c                            |   3 +
>>  common/partitions.c                          |   5 +-
>>  common/partitions/dos.c                      |   7 +-
>>  common/partitions/efi.c                      |   1 -
>>  drivers/clocksource/Kconfig                  |   7 +
>>  drivers/clocksource/Makefile                 |   1 +
>>  drivers/clocksource/timer-clint.c            |  98 +++++++++
>>  drivers/power/reset/Kconfig                  |  14 ++
>>  drivers/power/reset/Makefile                 |   2 +
>>  drivers/power/reset/syscon-poweroff.c        |  76 +++++++
>>  drivers/power/reset/syscon-reboot.c          |  92 +++++++++
>>  drivers/serial/Kconfig                       |   2 +-
>>  images/Makefile                              |   8 +-
>>  images/Makefile.erizo                        |  12 ++
>>  include/dma.h                                |   1 +
>>  include/filetype.h                           |   1 +
>>  pbl/Kconfig                                  |   6 +-
>>  scripts/.gitignore                           |   1 +
>>  scripts/Makefile                             |   1 +
>>  scripts/Makefile.lib                         |  11 ++
>>  scripts/prelink-riscv.c                      | 122 ++++++++++++
>>  scripts/prelink-riscv.inc                    | 123 ++++++++++++
>>  75 files changed, 2285 insertions(+), 263 deletions(-)
>>  create mode 100644 arch/riscv/boards/Makefile
>>  create mode 100644 arch/riscv/boards/erizo/Makefile
>>  create mode 100644 arch/riscv/boards/erizo/lowlevel.c
>>  create mode 100644 arch/riscv/boot/board-dt-2nd-entry.S
>>  create mode 100644 arch/riscv/boot/board-dt-2nd.c
>>  delete mode 100644 arch/riscv/boot/dtb.c
>>  create mode 100644 arch/riscv/boot/entry.c
>>  create mode 100644 arch/riscv/boot/entry.h
>>  create mode 100644 arch/riscv/boot/entry_ll.S
>>  delete mode 100644 arch/riscv/boot/main_entry.c
>>  delete mode 100644 arch/riscv/boot/start.S
>>  create mode 100644 arch/riscv/boot/start.c
>>  create mode 100644 arch/riscv/boot/uncompress.c
>>  create mode 100644 arch/riscv/configs/virt32_defconfig
>>  create mode 100644 arch/riscv/configs/virt64_defconfig
>>  create mode 100644 arch/riscv/include/asm/barebox-riscv.h
>>  create mode 100644 arch/riscv/include/asm/dma.h
>>  create mode 100644 arch/riscv/include/asm/image.h
>>  create mode 100644 arch/riscv/lib/dtb.c
>>  create mode 100644 arch/riscv/lib/memcpy.S
>>  create mode 100644 arch/riscv/lib/memmove.S
>>  create mode 100644 arch/riscv/lib/memset.S
>>  create mode 100644 arch/riscv/lib/pbl.lds.S
>>  create mode 100644 arch/riscv/lib/reloc.c
>>  create mode 100644 arch/riscv/lib/runtime-offset.S
>>  create mode 100644 arch/riscv/lib/sections.c
>>  create mode 100644 arch/riscv/lib/setupc.S
>>  create mode 100644 arch/riscv/mach-virt/Makefile
>>  create mode 100644 arch/riscv/mach-virt/include/mach/debug_ll.h
>>  create mode 100644 drivers/clocksource/timer-clint.c
>>  create mode 100644 drivers/power/reset/syscon-poweroff.c
>>  create mode 100644 drivers/power/reset/syscon-reboot.c
>>  create mode 100644 images/Makefile.erizo
>>  create mode 100644 scripts/prelink-riscv.c
>>  create mode 100644 scripts/prelink-riscv.inc
>>
>> -- 
>> 2.29.2
>>
> 
> 

-- 
Pengutronix e.K.                           |                             |
Steuerwalder Str. 21                       | http://www.pengutronix.de/  |
31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox


      reply	other threads:[~2021-03-15 10:32 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-14 12:27 Ahmad Fatoum
2021-03-14 12:27 ` [PATCH 01/20] partitions: don't allocate dma capable memory Ahmad Fatoum
2021-03-14 12:27 ` [PATCH 02/20] images: make BOARD_ARM_GENERIC_DT available for other arches Ahmad Fatoum
2021-03-14 12:27 ` [PATCH 03/20] ARM: rename CONFIG_ARM_USE_COMPRESSED_DTB to CONFIG_USE_COMPRESSED_DTB Ahmad Fatoum
2021-03-14 12:27 ` [PATCH 04/20] ARM: aarch64: ommit unused label in assembly Ahmad Fatoum
2021-03-14 12:27 ` [PATCH 05/20] serial: virtio-console: depend on, but don't select VIRTIO Ahmad Fatoum
2021-03-14 12:27 ` [PATCH 06/20] filetype: detect RISC-V Linux kernel image Ahmad Fatoum
2021-03-14 12:27 ` [PATCH 07/20] asm: unaligned: don't do unaligned accesses Ahmad Fatoum
2021-03-14 12:27 ` [PATCH 08/20] RISC-V: debug_ll: ns16550: align C access size with assembly's Ahmad Fatoum
2021-03-14 12:27 ` [PATCH 09/20] RISC-V: drop duplicate or unneeded cflags Ahmad Fatoum
2021-03-14 12:27 ` [PATCH 10/20] RISC-V: add cacheless HAS_DMA support Ahmad Fatoum
2021-03-14 12:27 ` [PATCH 11/20] RISC-V: erizo: move to arch/riscv/boards/erizo Ahmad Fatoum
2021-03-14 12:27 ` [PATCH 12/20] RISC-V: import Linux' optimized string functions Ahmad Fatoum
2021-03-14 12:27 ` [PATCH 13/20] RISC-V: implement PBL and relocation support Ahmad Fatoum
2021-03-15  7:43   ` Ahmad Fatoum
2021-03-14 12:27 ` [PATCH 14/20] RISC-V: erizo: migrate to PBL Ahmad Fatoum
2021-03-15  8:43   ` MIPS RELOCATABLE: " Antony Pavlov
2021-03-15 11:45     ` Oleksij Rempel
2021-03-15 12:08       ` Antony Pavlov
2021-03-15 12:40         ` Ahmad Fatoum
2021-03-15 15:37           ` Antony Pavlov
2021-03-15 15:46             ` Ahmad Fatoum
2021-03-15 17:03               ` Oleksij Rempel
2021-03-14 12:27 ` [PATCH 15/20] RISC-V: support symbol names in barebox image Ahmad Fatoum
2021-03-14 12:28 ` [PATCH 16/20] RISC-V: add 64-bit support Ahmad Fatoum
2021-03-14 12:51   ` Rouven Czerwinski
2021-03-14 13:03   ` [PATCH 1/2] fixup! " Ahmad Fatoum
2021-03-14 13:03     ` [PATCH 2/2] " Ahmad Fatoum
2021-03-15  8:38       ` Antony Pavlov
2021-03-14 12:28 ` [PATCH 17/20] RISC-V: add generic DT image Ahmad Fatoum
2021-03-14 12:28 ` [PATCH 18/20] clocksource: add driver for RISC-V CLINT timer Ahmad Fatoum
2021-03-14 12:28 ` [PATCH 19/20] power: reset: add drivers for generic syscon reset and poweroff Ahmad Fatoum
2021-03-14 12:28 ` [PATCH 20/20] RISC-V: add Qemu virt support Ahmad Fatoum
2021-03-14 16:30   ` [PATCH] fixup! " Ahmad Fatoum
2021-03-15  8:22 ` [PATCH 00/20] RISC-V: rework for PBL, VIRT and 64-Bit support Antony Pavlov
2021-03-15 10:30   ` Ahmad Fatoum [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=16b8990f-1ab3-2222-aa40-cee4bc20998f@pengutronix.de \
    --to=a.fatoum@pengutronix.de \
    --cc=antonynpavlov@gmail.com \
    --cc=barebox@lists.infradead.org \
    --cc=rcz@pengutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox