mail archive of the barebox mailing list
 help / color / mirror / Atom feed
* [PATCH 0/3] Add CI for MIPS64
@ 2023-06-07  4:59 Denis Orlov
  2023-06-07  4:59 ` [PATCH 1/3] MIPS: add qemu-malta64el_defconfig Denis Orlov
                   ` (3 more replies)
  0 siblings, 4 replies; 16+ messages in thread
From: Denis Orlov @ 2023-06-07  4:59 UTC (permalink / raw)
  To: barebox; +Cc: Ahmad Fatoum, Denis Orlov

This adds a necessary defconfig and labgrid configuration file together
with the corresponding CI job for building and testing the MIPS image
with 64BIT option set.

I've decided against giving the defconfig a generic name such as
mips64_defconfig. For now, only Malta running in QEMU is really
supported, so naming it as that seems more fitting for me. And if
more MIPS64 boards will get support in the future, then this defconfig
might be renamed appropriately.

Denis Orlov (3):
  MIPS: add qemu-malta64el_defconfig
  test: mips: add QEMU Malta 64le labgrid config
  ci: add a job for testing 64BIT MIPS with labgrid

 .github/workflows/test-labgrid-pytest.yml  |  4 +
 arch/mips/configs/qemu-malta64el_defconfig | 87 ++++++++++++++++++++++
 test/mips/qemu-malta64el_defconfig.yaml    | 22 ++++++
 3 files changed, 113 insertions(+)
 create mode 100644 arch/mips/configs/qemu-malta64el_defconfig
 create mode 100644 test/mips/qemu-malta64el_defconfig.yaml

-- 
2.41.0




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

* [PATCH 1/3] MIPS: add qemu-malta64el_defconfig
  2023-06-07  4:59 [PATCH 0/3] Add CI for MIPS64 Denis Orlov
@ 2023-06-07  4:59 ` Denis Orlov
  2023-06-09  5:09   ` Antony Pavlov
  2023-06-09  6:35   ` Ahmad Fatoum
  2023-06-07  4:59 ` [PATCH 2/3] test: mips: add QEMU Malta 64le labgrid config Denis Orlov
                   ` (2 subsequent siblings)
  3 siblings, 2 replies; 16+ messages in thread
From: Denis Orlov @ 2023-06-07  4:59 UTC (permalink / raw)
  To: barebox; +Cc: Ahmad Fatoum, Denis Orlov

This defconfig will compile barebox for Malta board and MIPS64 5KEc/5KEf
CPUs, emulatable in QEMU. The analogous 32-bit defconfig uses big endian
CPU as the default one. So, for the sake of variety, and to improve the
coverage of options, set the CPU as little endian for this one.

Signed-off-by: Denis Orlov <denorl2009@gmail.com>
---
 arch/mips/configs/qemu-malta64el_defconfig | 87 ++++++++++++++++++++++
 1 file changed, 87 insertions(+)
 create mode 100644 arch/mips/configs/qemu-malta64el_defconfig

diff --git a/arch/mips/configs/qemu-malta64el_defconfig b/arch/mips/configs/qemu-malta64el_defconfig
new file mode 100644
index 0000000000..5fb090a646
--- /dev/null
+++ b/arch/mips/configs/qemu-malta64el_defconfig
@@ -0,0 +1,87 @@
+CONFIG_BOARD_QEMU_MALTA=y
+CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_CPU_MIPS64_R2=y
+CONFIG_64BIT=y
+CONFIG_IMAGE_COMPRESSION_XZKERN=y
+CONFIG_BAREBOX_MAX_IMAGE_SIZE=0x400000
+CONFIG_STACK_SIZE=0x7000
+CONFIG_EXPERIMENTAL=y
+CONFIG_BAUDRATE=38400
+CONFIG_HUSH_FANCY_PROMPT=y
+CONFIG_CMDLINE_EDITING=y
+CONFIG_AUTO_COMPLETE=y
+CONFIG_MENU=y
+CONFIG_BOOTM_SHOW_TYPE=y
+CONFIG_CONSOLE_ALLOW_COLOR=y
+CONFIG_PARTITION=y
+CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y
+CONFIG_CMD_DMESG=y
+CONFIG_LONGHELP=y
+CONFIG_CMD_IOMEM=y
+CONFIG_CMD_IMD=y
+CONFIG_CMD_MEMINFO=y
+CONFIG_CMD_GO=y
+CONFIG_CMD_LOADB=y
+CONFIG_CMD_LOADY=y
+CONFIG_CMD_RESET=y
+CONFIG_CMD_PARTITION=y
+CONFIG_CMD_EXPORT=y
+CONFIG_CMD_DEFAULTENV=y
+CONFIG_CMD_LOADENV=y
+CONFIG_CMD_PRINTENV=y
+CONFIG_CMD_SAVEENV=y
+CONFIG_CMD_MD5SUM=y
+CONFIG_CMD_SHA1SUM=y
+CONFIG_CMD_SHA256SUM=y
+CONFIG_CMD_UNCOMPRESS=y
+CONFIG_CMD_SLEEP=y
+CONFIG_CMD_DHCP=y
+CONFIG_CMD_MIITOOL=y
+CONFIG_CMD_PING=y
+CONFIG_CMD_TFTP=y
+CONFIG_CMD_ECHO_E=y
+CONFIG_CMD_EDIT=y
+CONFIG_CMD_LOGIN=y
+CONFIG_CMD_MENU=y
+CONFIG_CMD_MENU_MANAGEMENT=y
+CONFIG_CMD_PASSWD=y
+CONFIG_CMD_FBTEST=y
+CONFIG_CMD_READLINE=y
+CONFIG_CMD_TIMEOUT=y
+CONFIG_CMD_CRC=y
+CONFIG_CMD_CRC_CMP=y
+CONFIG_CMD_FLASH=y
+CONFIG_CMD_GPIO=y
+CONFIG_CMD_I2C=y
+CONFIG_CMD_OF_NODE=y
+CONFIG_CMD_OF_PROPERTY=y
+CONFIG_CMD_OFTREE=y
+CONFIG_CMD_TIME=y
+CONFIG_NET=y
+CONFIG_NET_NFS=y
+CONFIG_NET_NETCONSOLE=y
+CONFIG_OFDEVICE=y
+CONFIG_OF_BAREBOX_DRIVERS=y
+CONFIG_DRIVER_NET_RTL8139=y
+# CONFIG_SPI is not set
+CONFIG_I2C=y
+CONFIG_I2C_GPIO=y
+CONFIG_MTD=y
+CONFIG_DRIVER_CFI=y
+# CONFIG_DRIVER_CFI_AMD is not set
+# CONFIG_DRIVER_CFI_BANK_WIDTH_1 is not set
+# CONFIG_DRIVER_CFI_BANK_WIDTH_2 is not set
+CONFIG_CFI_BUFFER_WRITE=y
+CONFIG_VIDEO=y
+CONFIG_FRAMEBUFFER_CONSOLE=y
+CONFIG_DRIVER_VIDEO_BOCHS_PCI=y
+CONFIG_GPIO_MALTA_FPGA_I2C=y
+CONFIG_PCI=y
+CONFIG_PCI_DEBUG=y
+CONFIG_SYSCON_REBOOT_MODE=y
+CONFIG_POWER_RESET_SYSCON=y
+CONFIG_FS_CRAMFS=y
+CONFIG_FS_TFTP=y
+CONFIG_FS_FAT=y
+CONFIG_FS_FAT_WRITE=y
+CONFIG_FS_FAT_LFN=y
-- 
2.41.0




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

* [PATCH 2/3] test: mips: add QEMU Malta 64le labgrid config
  2023-06-07  4:59 [PATCH 0/3] Add CI for MIPS64 Denis Orlov
  2023-06-07  4:59 ` [PATCH 1/3] MIPS: add qemu-malta64el_defconfig Denis Orlov
@ 2023-06-07  4:59 ` Denis Orlov
  2023-06-09  6:36   ` Ahmad Fatoum
  2023-06-07  4:59 ` [PATCH 3/3] ci: add a job for testing 64BIT MIPS with labgrid Denis Orlov
  2023-06-12  6:39 ` [PATCH 0/3] Add CI for MIPS64 Sascha Hauer
  3 siblings, 1 reply; 16+ messages in thread
From: Denis Orlov @ 2023-06-07  4:59 UTC (permalink / raw)
  To: barebox; +Cc: Ahmad Fatoum, Denis Orlov

Signed-off-by: Denis Orlov <denorl2009@gmail.com>
---
 test/mips/qemu-malta64el_defconfig.yaml | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)
 create mode 100644 test/mips/qemu-malta64el_defconfig.yaml

diff --git a/test/mips/qemu-malta64el_defconfig.yaml b/test/mips/qemu-malta64el_defconfig.yaml
new file mode 100644
index 0000000000..22562d5b7a
--- /dev/null
+++ b/test/mips/qemu-malta64el_defconfig.yaml
@@ -0,0 +1,22 @@
+targets:
+  main:
+    drivers:
+      QEMUDriver:
+        qemu_bin: qemu
+        machine: malta
+        cpu: 5KEf
+        memory: 256M
+        bios: barebox-qemu-malta.img.swapped
+        extra_args: ''
+      BareboxDriver:
+        prompt: 'barebox@[^:]+:[^ ]+ '
+        bootstring: 'commandline:'
+      BareboxTestStrategy: {}
+    features:
+      - virtio-pci
+images:
+  barebox-qemu-malta.img.swapped: !template "$LG_BUILDDIR/images/barebox-qemu-malta.img.swapped"
+tools:
+  qemu: /usr/bin/qemu-system-mips64el
+imports:
+  -  ../strategy.py
-- 
2.41.0




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

* [PATCH 3/3] ci: add a job for testing 64BIT MIPS with labgrid
  2023-06-07  4:59 [PATCH 0/3] Add CI for MIPS64 Denis Orlov
  2023-06-07  4:59 ` [PATCH 1/3] MIPS: add qemu-malta64el_defconfig Denis Orlov
  2023-06-07  4:59 ` [PATCH 2/3] test: mips: add QEMU Malta 64le labgrid config Denis Orlov
@ 2023-06-07  4:59 ` Denis Orlov
  2023-06-09  6:38   ` Ahmad Fatoum
  2023-06-12  6:39 ` [PATCH 0/3] Add CI for MIPS64 Sascha Hauer
  3 siblings, 1 reply; 16+ messages in thread
From: Denis Orlov @ 2023-06-07  4:59 UTC (permalink / raw)
  To: barebox; +Cc: Ahmad Fatoum, Denis Orlov

Signed-off-by: Denis Orlov <denorl2009@gmail.com>
---
 .github/workflows/test-labgrid-pytest.yml | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/.github/workflows/test-labgrid-pytest.yml b/.github/workflows/test-labgrid-pytest.yml
index 2c74150066..674e4251d1 100644
--- a/.github/workflows/test-labgrid-pytest.yml
+++ b/.github/workflows/test-labgrid-pytest.yml
@@ -26,6 +26,10 @@ jobs:
             lgenv: test/mips/qemu-malta_defconfig.yaml
             defconfig: qemu-malta_defconfig
 
+          - ARCH: mips
+            lgenv: test/mips/qemu-malta64el_defconfig.yaml
+            defconfig: qemu-malta64el_defconfig
+
           - ARCH: x86
             lgenv: test/x86/efi_defconfig.yaml
             defconfig: efi_defconfig
-- 
2.41.0




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

* Re: [PATCH 1/3] MIPS: add qemu-malta64el_defconfig
  2023-06-07  4:59 ` [PATCH 1/3] MIPS: add qemu-malta64el_defconfig Denis Orlov
@ 2023-06-09  5:09   ` Antony Pavlov
  2023-06-09  6:35   ` Ahmad Fatoum
  1 sibling, 0 replies; 16+ messages in thread
From: Antony Pavlov @ 2023-06-09  5:09 UTC (permalink / raw)
  To: Denis Orlov; +Cc: barebox, Ahmad Fatoum

Hi Denis!

On Wed,  7 Jun 2023 07:59:38 +0300
Denis Orlov <denorl2009@gmail.com> wrote:

> This defconfig will compile barebox for Malta board and MIPS64 5KEc/5KEf
> CPUs, emulatable in QEMU. The analogous 32-bit defconfig uses big endian
> CPU as the default one. So, for the sake of variety, and to improve the
> coverage of options, set the CPU as little endian for this one.

One more reason to run MIPS 64-bit barebox in little endian mode:
there is the Debian MIPS64 little endian port but
there is no Debian MIPS64 big endian port.

Also please note that the Debian 32-bit MIPS big endian port was discontinued
after Debian 10 (Buster).

-- 
Best regards,
  Antony Pavlov



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

* Re: [PATCH 1/3] MIPS: add qemu-malta64el_defconfig
  2023-06-07  4:59 ` [PATCH 1/3] MIPS: add qemu-malta64el_defconfig Denis Orlov
  2023-06-09  5:09   ` Antony Pavlov
@ 2023-06-09  6:35   ` Ahmad Fatoum
  1 sibling, 0 replies; 16+ messages in thread
From: Ahmad Fatoum @ 2023-06-09  6:35 UTC (permalink / raw)
  To: Denis Orlov, barebox

On 07.06.23 06:59, Denis Orlov wrote:
> This defconfig will compile barebox for Malta board and MIPS64 5KEc/5KEf
> CPUs, emulatable in QEMU. The analogous 32-bit defconfig uses big endian
> CPU as the default one. So, for the sake of variety, and to improve the
> coverage of options, set the CPU as little endian for this one.
> 
> Signed-off-by: Denis Orlov <denorl2009@gmail.com>

Reviewed-by: Ahmad Fatoum <a.fatoum@pengutronix.de>

> ---
>  arch/mips/configs/qemu-malta64el_defconfig | 87 ++++++++++++++++++++++
>  1 file changed, 87 insertions(+)
>  create mode 100644 arch/mips/configs/qemu-malta64el_defconfig
> 
> diff --git a/arch/mips/configs/qemu-malta64el_defconfig b/arch/mips/configs/qemu-malta64el_defconfig
> new file mode 100644
> index 0000000000..5fb090a646
> --- /dev/null
> +++ b/arch/mips/configs/qemu-malta64el_defconfig
> @@ -0,0 +1,87 @@
> +CONFIG_BOARD_QEMU_MALTA=y
> +CONFIG_CPU_LITTLE_ENDIAN=y
> +CONFIG_CPU_MIPS64_R2=y
> +CONFIG_64BIT=y
> +CONFIG_IMAGE_COMPRESSION_XZKERN=y
> +CONFIG_BAREBOX_MAX_IMAGE_SIZE=0x400000
> +CONFIG_STACK_SIZE=0x7000
> +CONFIG_EXPERIMENTAL=y
> +CONFIG_BAUDRATE=38400
> +CONFIG_HUSH_FANCY_PROMPT=y
> +CONFIG_CMDLINE_EDITING=y
> +CONFIG_AUTO_COMPLETE=y
> +CONFIG_MENU=y
> +CONFIG_BOOTM_SHOW_TYPE=y
> +CONFIG_CONSOLE_ALLOW_COLOR=y
> +CONFIG_PARTITION=y
> +CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y
> +CONFIG_CMD_DMESG=y
> +CONFIG_LONGHELP=y
> +CONFIG_CMD_IOMEM=y
> +CONFIG_CMD_IMD=y
> +CONFIG_CMD_MEMINFO=y
> +CONFIG_CMD_GO=y
> +CONFIG_CMD_LOADB=y
> +CONFIG_CMD_LOADY=y
> +CONFIG_CMD_RESET=y
> +CONFIG_CMD_PARTITION=y
> +CONFIG_CMD_EXPORT=y
> +CONFIG_CMD_DEFAULTENV=y
> +CONFIG_CMD_LOADENV=y
> +CONFIG_CMD_PRINTENV=y
> +CONFIG_CMD_SAVEENV=y
> +CONFIG_CMD_MD5SUM=y
> +CONFIG_CMD_SHA1SUM=y
> +CONFIG_CMD_SHA256SUM=y
> +CONFIG_CMD_UNCOMPRESS=y
> +CONFIG_CMD_SLEEP=y
> +CONFIG_CMD_DHCP=y
> +CONFIG_CMD_MIITOOL=y
> +CONFIG_CMD_PING=y
> +CONFIG_CMD_TFTP=y
> +CONFIG_CMD_ECHO_E=y
> +CONFIG_CMD_EDIT=y
> +CONFIG_CMD_LOGIN=y
> +CONFIG_CMD_MENU=y
> +CONFIG_CMD_MENU_MANAGEMENT=y
> +CONFIG_CMD_PASSWD=y
> +CONFIG_CMD_FBTEST=y
> +CONFIG_CMD_READLINE=y
> +CONFIG_CMD_TIMEOUT=y
> +CONFIG_CMD_CRC=y
> +CONFIG_CMD_CRC_CMP=y
> +CONFIG_CMD_FLASH=y
> +CONFIG_CMD_GPIO=y
> +CONFIG_CMD_I2C=y
> +CONFIG_CMD_OF_NODE=y
> +CONFIG_CMD_OF_PROPERTY=y
> +CONFIG_CMD_OFTREE=y
> +CONFIG_CMD_TIME=y
> +CONFIG_NET=y
> +CONFIG_NET_NFS=y
> +CONFIG_NET_NETCONSOLE=y
> +CONFIG_OFDEVICE=y
> +CONFIG_OF_BAREBOX_DRIVERS=y
> +CONFIG_DRIVER_NET_RTL8139=y
> +# CONFIG_SPI is not set
> +CONFIG_I2C=y
> +CONFIG_I2C_GPIO=y
> +CONFIG_MTD=y
> +CONFIG_DRIVER_CFI=y
> +# CONFIG_DRIVER_CFI_AMD is not set
> +# CONFIG_DRIVER_CFI_BANK_WIDTH_1 is not set
> +# CONFIG_DRIVER_CFI_BANK_WIDTH_2 is not set
> +CONFIG_CFI_BUFFER_WRITE=y
> +CONFIG_VIDEO=y
> +CONFIG_FRAMEBUFFER_CONSOLE=y
> +CONFIG_DRIVER_VIDEO_BOCHS_PCI=y
> +CONFIG_GPIO_MALTA_FPGA_I2C=y
> +CONFIG_PCI=y
> +CONFIG_PCI_DEBUG=y
> +CONFIG_SYSCON_REBOOT_MODE=y
> +CONFIG_POWER_RESET_SYSCON=y
> +CONFIG_FS_CRAMFS=y
> +CONFIG_FS_TFTP=y
> +CONFIG_FS_FAT=y
> +CONFIG_FS_FAT_WRITE=y
> +CONFIG_FS_FAT_LFN=y

-- 
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 |




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

* Re: [PATCH 2/3] test: mips: add QEMU Malta 64le labgrid config
  2023-06-07  4:59 ` [PATCH 2/3] test: mips: add QEMU Malta 64le labgrid config Denis Orlov
@ 2023-06-09  6:36   ` Ahmad Fatoum
  2023-06-09  7:14     ` Denis Orlov
  0 siblings, 1 reply; 16+ messages in thread
From: Ahmad Fatoum @ 2023-06-09  6:36 UTC (permalink / raw)
  To: Denis Orlov, barebox

On 07.06.23 06:59, Denis Orlov wrote:
> Signed-off-by: Denis Orlov <denorl2009@gmail.com>
> ---
>  test/mips/qemu-malta64el_defconfig.yaml | 22 ++++++++++++++++++++++
>  1 file changed, 22 insertions(+)
>  create mode 100644 test/mips/qemu-malta64el_defconfig.yaml
> 
> diff --git a/test/mips/qemu-malta64el_defconfig.yaml b/test/mips/qemu-malta64el_defconfig.yaml
> new file mode 100644
> index 0000000000..22562d5b7a
> --- /dev/null
> +++ b/test/mips/qemu-malta64el_defconfig.yaml
> @@ -0,0 +1,22 @@
> +targets:
> +  main:
> +    drivers:
> +      QEMUDriver:
> +        qemu_bin: qemu
> +        machine: malta
> +        cpu: 5KEf
> +        memory: 256M
> +        bios: barebox-qemu-malta.img.swapped
> +        extra_args: ''
> +      BareboxDriver:
> +        prompt: 'barebox@[^:]+:[^ ]+ '
> +        bootstring: 'commandline:'
> +      BareboxTestStrategy: {}
> +    features:
> +      - virtio-pci

Did you test virtio PCI? I don't see it enabled in the defconfig.

> +images:
> +  barebox-qemu-malta.img.swapped: !template "$LG_BUILDDIR/images/barebox-qemu-malta.img.swapped"
> +tools:
> +  qemu: /usr/bin/qemu-system-mips64el
> +imports:
> +  -  ../strategy.py

-- 
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 |




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

* Re: [PATCH 3/3] ci: add a job for testing 64BIT MIPS with labgrid
  2023-06-07  4:59 ` [PATCH 3/3] ci: add a job for testing 64BIT MIPS with labgrid Denis Orlov
@ 2023-06-09  6:38   ` Ahmad Fatoum
  2023-06-09  7:58     ` Denis Orlov
  0 siblings, 1 reply; 16+ messages in thread
From: Ahmad Fatoum @ 2023-06-09  6:38 UTC (permalink / raw)
  To: Denis Orlov, barebox

On 07.06.23 06:59, Denis Orlov wrote:
> Signed-off-by: Denis Orlov <denorl2009@gmail.com>

https://mirrors.edge.kernel.org/pub/tools/crosstool/files/bin/x86_64/13.1.0/
has a dedicated mips64 toolchain. Given that you don't touch the Containerfile,
I assume this means that the normal toolchain can compile both 32- and 64-bit?

If so,

Reviewed-by: Ahmad Fatoum <a.fatoum@pengutronix.de>

> ---
>  .github/workflows/test-labgrid-pytest.yml | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/.github/workflows/test-labgrid-pytest.yml b/.github/workflows/test-labgrid-pytest.yml
> index 2c74150066..674e4251d1 100644
> --- a/.github/workflows/test-labgrid-pytest.yml
> +++ b/.github/workflows/test-labgrid-pytest.yml
> @@ -26,6 +26,10 @@ jobs:
>              lgenv: test/mips/qemu-malta_defconfig.yaml
>              defconfig: qemu-malta_defconfig
>  
> +          - ARCH: mips
> +            lgenv: test/mips/qemu-malta64el_defconfig.yaml
> +            defconfig: qemu-malta64el_defconfig
> +
>            - ARCH: x86
>              lgenv: test/x86/efi_defconfig.yaml
>              defconfig: efi_defconfig

-- 
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 |




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

* Re: [PATCH 2/3] test: mips: add QEMU Malta 64le labgrid config
  2023-06-09  6:36   ` Ahmad Fatoum
@ 2023-06-09  7:14     ` Denis Orlov
  2023-06-09  7:21       ` Ahmad Fatoum
  0 siblings, 1 reply; 16+ messages in thread
From: Denis Orlov @ 2023-06-09  7:14 UTC (permalink / raw)
  To: Ahmad Fatoum; +Cc: barebox

Hello Ahmad,

On Fri, 9 Jun 2023 at 09:36, Ahmad Fatoum <a.fatoum@pengutronix.de> wrote:
>
> On 07.06.23 06:59, Denis Orlov wrote:
> > Signed-off-by: Denis Orlov <denorl2009@gmail.com>
> > ---
> >  test/mips/qemu-malta64el_defconfig.yaml | 22 ++++++++++++++++++++++
> >  1 file changed, 22 insertions(+)
> >  create mode 100644 test/mips/qemu-malta64el_defconfig.yaml
> >
> > diff --git a/test/mips/qemu-malta64el_defconfig.yaml b/test/mips/qemu-malta64el_defconfig.yaml
> > new file mode 100644
> > index 0000000000..22562d5b7a
> > --- /dev/null
> > +++ b/test/mips/qemu-malta64el_defconfig.yaml
> > @@ -0,0 +1,22 @@
> > +targets:
> > +  main:
> > +    drivers:
> > +      QEMUDriver:
> > +        qemu_bin: qemu
> > +        machine: malta
> > +        cpu: 5KEf
> > +        memory: 256M
> > +        bios: barebox-qemu-malta.img.swapped
> > +        extra_args: ''
> > +      BareboxDriver:
> > +        prompt: 'barebox@[^:]+:[^ ]+ '
> > +        bootstring: 'commandline:'
> > +      BareboxTestStrategy: {}
> > +    features:
> > +      - virtio-pci
>
> Did you test virtio PCI? I don't see it enabled in the defconfig.

Nope, I didn't. I must have copied this from the 32-bit malta config
file. However, I see that its defconfig also lacks VIRTIO_PCI, so should
those be removed from both labgrid configs?

Besides, judging from the virtio PCI Kconfig option depends, there seem
to be some issues with virtio PCI on MIPS without CONFIG_MMU set. Is the
lack of VIRTIO_PCI option in 32-bit malta defconfig related to that?

Regards,
Denis

>
> > +images:
> > +  barebox-qemu-malta.img.swapped: !template "$LG_BUILDDIR/images/barebox-qemu-malta.img.swapped"
> > +tools:
> > +  qemu: /usr/bin/qemu-system-mips64el
> > +imports:
> > +  -  ../strategy.py
>
> --
> 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 |
>



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

* Re: [PATCH 2/3] test: mips: add QEMU Malta 64le labgrid config
  2023-06-09  7:14     ` Denis Orlov
@ 2023-06-09  7:21       ` Ahmad Fatoum
  2023-06-09  9:17         ` Denis Orlov
  0 siblings, 1 reply; 16+ messages in thread
From: Ahmad Fatoum @ 2023-06-09  7:21 UTC (permalink / raw)
  To: Denis Orlov; +Cc: barebox

On 09.06.23 09:14, Denis Orlov wrote:
> Hello Ahmad,
> 
> On Fri, 9 Jun 2023 at 09:36, Ahmad Fatoum <a.fatoum@pengutronix.de> wrote:
>>
>> On 07.06.23 06:59, Denis Orlov wrote:
>>> Signed-off-by: Denis Orlov <denorl2009@gmail.com>
>>> ---
>>>  test/mips/qemu-malta64el_defconfig.yaml | 22 ++++++++++++++++++++++
>>>  1 file changed, 22 insertions(+)
>>>  create mode 100644 test/mips/qemu-malta64el_defconfig.yaml
>>>
>>> diff --git a/test/mips/qemu-malta64el_defconfig.yaml b/test/mips/qemu-malta64el_defconfig.yaml
>>> new file mode 100644
>>> index 0000000000..22562d5b7a
>>> --- /dev/null
>>> +++ b/test/mips/qemu-malta64el_defconfig.yaml
>>> @@ -0,0 +1,22 @@
>>> +targets:
>>> +  main:
>>> +    drivers:
>>> +      QEMUDriver:
>>> +        qemu_bin: qemu
>>> +        machine: malta
>>> +        cpu: 5KEf
>>> +        memory: 256M
>>> +        bios: barebox-qemu-malta.img.swapped
>>> +        extra_args: ''
>>> +      BareboxDriver:
>>> +        prompt: 'barebox@[^:]+:[^ ]+ '
>>> +        bootstring: 'commandline:'
>>> +      BareboxTestStrategy: {}
>>> +    features:
>>> +      - virtio-pci
>>
>> Did you test virtio PCI? I don't see it enabled in the defconfig.
> 
> Nope, I didn't. I must have copied this from the 32-bit malta config
> file. However, I see that its defconfig also lacks VIRTIO_PCI, so should
> those be removed from both labgrid configs?
> 
> Besides, judging from the virtio PCI Kconfig option depends, there seem
> to be some issues with virtio PCI on MIPS without CONFIG_MMU set. Is the
> lack of VIRTIO_PCI option in 32-bit malta defconfig related to that?

Ah, right. test/emulate.pl reads virtio-pci feature to decide what Virt I/O
transport to use. Maybe the MMU incompatibility is fixed now with your
recent DMA rework or maybe we still have 1:1 mapping assumptions in the
virtio code itself. If you could give it a quick test with CONFIG_MMU=n
and see if it works, that would be great. Something like this should do it:

/usr/bin/qemu-system-mips64el -M malta -cpu 5KEf -m 256M \
   -bios barebox-qemu-malta.img.swapped -serial mon:stdio -trace file=/dev/null \
   -drive if=none,file=/src/barebox-rockchip/somealigned.img,format=raw,id=hd0 \
   -device virtio-blk-pci,disable-legacy=on,disable-modern=off,drive=hd0

(Above was generated by ./test/emulate.pl $config -n --blk=somealigned.img)

You should see a /dev/virtioblk* device if everything is enabled and working.

Cheers,
Ahmad

> 
> Regards,
> Denis
> 
>>
>>> +images:
>>> +  barebox-qemu-malta.img.swapped: !template "$LG_BUILDDIR/images/barebox-qemu-malta.img.swapped"
>>> +tools:
>>> +  qemu: /usr/bin/qemu-system-mips64el
>>> +imports:
>>> +  -  ../strategy.py
>>
>> --
>> 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 |
>>
> 

-- 
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 |




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

* Re: [PATCH 3/3] ci: add a job for testing 64BIT MIPS with labgrid
  2023-06-09  6:38   ` Ahmad Fatoum
@ 2023-06-09  7:58     ` Denis Orlov
  0 siblings, 0 replies; 16+ messages in thread
From: Denis Orlov @ 2023-06-09  7:58 UTC (permalink / raw)
  To: Ahmad Fatoum; +Cc: barebox

On Fri, 9 Jun 2023 at 09:38, Ahmad Fatoum <a.fatoum@pengutronix.de> wrote:
>
> On 07.06.23 06:59, Denis Orlov wrote:
> > Signed-off-by: Denis Orlov <denorl2009@gmail.com>
>
> https://mirrors.edge.kernel.org/pub/tools/crosstool/files/bin/x86_64/13.1.0/
> has a dedicated mips64 toolchain. Given that you don't touch the Containerfile,
> I assume this means that the normal toolchain can compile both 32- and 64-bit?

Well, it seems so, judging by the fact that I had run CI successfully on
my GitHub repo. I guess the main difference between mips and mips64
toolchains is the default compile configuration values. On debian there
are also many different MIPS compilers (mips-linux-gnu-, mipsel-linux-gnu-,
mips64-linux-gnuabi64-, mips64el-linux-gnuabi64-, and others) available,
however I am compiling barebox/Linux successfully with the mips-linux-gnu-
one when the correct target endianness/ABI options are being passed.
Maybe there are other differences, but I don't know of them.

Regards,
Denis

>
> If so,
>
> Reviewed-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
>
> > ---
> >  .github/workflows/test-labgrid-pytest.yml | 4 ++++
> >  1 file changed, 4 insertions(+)
> >
> > diff --git a/.github/workflows/test-labgrid-pytest.yml b/.github/workflows/test-labgrid-pytest.yml
> > index 2c74150066..674e4251d1 100644
> > --- a/.github/workflows/test-labgrid-pytest.yml
> > +++ b/.github/workflows/test-labgrid-pytest.yml
> > @@ -26,6 +26,10 @@ jobs:
> >              lgenv: test/mips/qemu-malta_defconfig.yaml
> >              defconfig: qemu-malta_defconfig
> >
> > +          - ARCH: mips
> > +            lgenv: test/mips/qemu-malta64el_defconfig.yaml
> > +            defconfig: qemu-malta64el_defconfig
> > +
> >            - ARCH: x86
> >              lgenv: test/x86/efi_defconfig.yaml
> >              defconfig: efi_defconfig
>
> --
> 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 |
>



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

* Re: [PATCH 2/3] test: mips: add QEMU Malta 64le labgrid config
  2023-06-09  7:21       ` Ahmad Fatoum
@ 2023-06-09  9:17         ` Denis Orlov
  2023-06-09  9:28           ` Ahmad Fatoum
  0 siblings, 1 reply; 16+ messages in thread
From: Denis Orlov @ 2023-06-09  9:17 UTC (permalink / raw)
  To: Ahmad Fatoum; +Cc: barebox

On Fri, 9 Jun 2023 at 10:21, Ahmad Fatoum <a.fatoum@pengutronix.de> wrote:
>
> On 09.06.23 09:14, Denis Orlov wrote:
> > Hello Ahmad,
> >
> > On Fri, 9 Jun 2023 at 09:36, Ahmad Fatoum <a.fatoum@pengutronix.de> wrote:
> >>
> >> On 07.06.23 06:59, Denis Orlov wrote:
> >>> Signed-off-by: Denis Orlov <denorl2009@gmail.com>
> >>> ---
> >>>  test/mips/qemu-malta64el_defconfig.yaml | 22 ++++++++++++++++++++++
> >>>  1 file changed, 22 insertions(+)
> >>>  create mode 100644 test/mips/qemu-malta64el_defconfig.yaml
> >>>
> >>> diff --git a/test/mips/qemu-malta64el_defconfig.yaml b/test/mips/qemu-malta64el_defconfig.yaml
> >>> new file mode 100644
> >>> index 0000000000..22562d5b7a
> >>> --- /dev/null
> >>> +++ b/test/mips/qemu-malta64el_defconfig.yaml
> >>> @@ -0,0 +1,22 @@
> >>> +targets:
> >>> +  main:
> >>> +    drivers:
> >>> +      QEMUDriver:
> >>> +        qemu_bin: qemu
> >>> +        machine: malta
> >>> +        cpu: 5KEf
> >>> +        memory: 256M
> >>> +        bios: barebox-qemu-malta.img.swapped
> >>> +        extra_args: ''
> >>> +      BareboxDriver:
> >>> +        prompt: 'barebox@[^:]+:[^ ]+ '
> >>> +        bootstring: 'commandline:'
> >>> +      BareboxTestStrategy: {}
> >>> +    features:
> >>> +      - virtio-pci
> >>
> >> Did you test virtio PCI? I don't see it enabled in the defconfig.
> >
> > Nope, I didn't. I must have copied this from the 32-bit malta config
> > file. However, I see that its defconfig also lacks VIRTIO_PCI, so should
> > those be removed from both labgrid configs?
> >
> > Besides, judging from the virtio PCI Kconfig option depends, there seem
> > to be some issues with virtio PCI on MIPS without CONFIG_MMU set. Is the
> > lack of VIRTIO_PCI option in 32-bit malta defconfig related to that?
>
> Ah, right. test/emulate.pl reads virtio-pci feature to decide what Virt I/O
> transport to use. Maybe the MMU incompatibility is fixed now with your
> recent DMA rework or maybe we still have 1:1 mapping assumptions in the
> virtio code itself. If you could give it a quick test with CONFIG_MMU=n
> and see if it works, that would be great. Something like this should do it:
>
> /usr/bin/qemu-system-mips64el -M malta -cpu 5KEf -m 256M \
>    -bios barebox-qemu-malta.img.swapped -serial mon:stdio -trace file=/dev/null \
>    -drive if=none,file=/src/barebox-rockchip/somealigned.img,format=raw,id=hd0 \
>    -device virtio-blk-pci,disable-legacy=on,disable-modern=off,drive=hd0
>
> (Above was generated by ./test/emulate.pl $config -n --blk=somealigned.img)
>
> You should see a /dev/virtioblk* device if everything is enabled and working.

Yeah, it seems that this works on both CONFIG_MMU=y and CONFIG_MMU=n now.
The drive mounts successfully and I am able to look at its contents with
"ls". So, does this mean that we should enable the VIRTIO_PCI option in
malta defconfigs?

>
> Cheers,
> Ahmad
>
> >
> > Regards,
> > Denis
> >
> >>
> >>> +images:
> >>> +  barebox-qemu-malta.img.swapped: !template "$LG_BUILDDIR/images/barebox-qemu-malta.img.swapped"
> >>> +tools:
> >>> +  qemu: /usr/bin/qemu-system-mips64el
> >>> +imports:
> >>> +  -  ../strategy.py
> >>
> >> --
> >> 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 |
> >>
> >
>
> --
> 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 |
>



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

* Re: [PATCH 2/3] test: mips: add QEMU Malta 64le labgrid config
  2023-06-09  9:17         ` Denis Orlov
@ 2023-06-09  9:28           ` Ahmad Fatoum
  2023-06-09  9:38             ` Denis Orlov
  0 siblings, 1 reply; 16+ messages in thread
From: Ahmad Fatoum @ 2023-06-09  9:28 UTC (permalink / raw)
  To: Denis Orlov; +Cc: barebox

On 09.06.23 11:17, Denis Orlov wrote:
> On Fri, 9 Jun 2023 at 10:21, Ahmad Fatoum <a.fatoum@pengutronix.de> wrote:
>>
>> On 09.06.23 09:14, Denis Orlov wrote:
>>> Hello Ahmad,
>>>
>>> On Fri, 9 Jun 2023 at 09:36, Ahmad Fatoum <a.fatoum@pengutronix.de> wrote:
>>>>
>>>> On 07.06.23 06:59, Denis Orlov wrote:
>>>>> Signed-off-by: Denis Orlov <denorl2009@gmail.com>
>>>>> ---
>>>>>  test/mips/qemu-malta64el_defconfig.yaml | 22 ++++++++++++++++++++++
>>>>>  1 file changed, 22 insertions(+)
>>>>>  create mode 100644 test/mips/qemu-malta64el_defconfig.yaml
>>>>>
>>>>> diff --git a/test/mips/qemu-malta64el_defconfig.yaml b/test/mips/qemu-malta64el_defconfig.yaml
>>>>> new file mode 100644
>>>>> index 0000000000..22562d5b7a
>>>>> --- /dev/null
>>>>> +++ b/test/mips/qemu-malta64el_defconfig.yaml
>>>>> @@ -0,0 +1,22 @@
>>>>> +targets:
>>>>> +  main:
>>>>> +    drivers:
>>>>> +      QEMUDriver:
>>>>> +        qemu_bin: qemu
>>>>> +        machine: malta
>>>>> +        cpu: 5KEf
>>>>> +        memory: 256M
>>>>> +        bios: barebox-qemu-malta.img.swapped
>>>>> +        extra_args: ''
>>>>> +      BareboxDriver:
>>>>> +        prompt: 'barebox@[^:]+:[^ ]+ '
>>>>> +        bootstring: 'commandline:'
>>>>> +      BareboxTestStrategy: {}
>>>>> +    features:
>>>>> +      - virtio-pci
>>>>
>>>> Did you test virtio PCI? I don't see it enabled in the defconfig.
>>>
>>> Nope, I didn't. I must have copied this from the 32-bit malta config
>>> file. However, I see that its defconfig also lacks VIRTIO_PCI, so should
>>> those be removed from both labgrid configs?
>>>
>>> Besides, judging from the virtio PCI Kconfig option depends, there seem
>>> to be some issues with virtio PCI on MIPS without CONFIG_MMU set. Is the
>>> lack of VIRTIO_PCI option in 32-bit malta defconfig related to that?
>>
>> Ah, right. test/emulate.pl reads virtio-pci feature to decide what Virt I/O
>> transport to use. Maybe the MMU incompatibility is fixed now with your
>> recent DMA rework or maybe we still have 1:1 mapping assumptions in the
>> virtio code itself. If you could give it a quick test with CONFIG_MMU=n
>> and see if it works, that would be great. Something like this should do it:
>>
>> /usr/bin/qemu-system-mips64el -M malta -cpu 5KEf -m 256M \
>>    -bios barebox-qemu-malta.img.swapped -serial mon:stdio -trace file=/dev/null \
>>    -drive if=none,file=/src/barebox-rockchip/somealigned.img,format=raw,id=hd0 \
>>    -device virtio-blk-pci,disable-legacy=on,disable-modern=off,drive=hd0
>>
>> (Above was generated by ./test/emulate.pl $config -n --blk=somealigned.img)
>>
>> You should see a /dev/virtioblk* device if everything is enabled and working.
> 
> Yeah, it seems that this works on both CONFIG_MMU=y and CONFIG_MMU=n now.
> The drive mounts successfully and I am able to look at its contents with
> "ls". So, does this mean that we should enable the VIRTIO_PCI option in
> malta defconfigs?

Even for 32-bit? Ye, then we can drop the depends line in VIRTIO_PCI and
enable it in the MIPS defconfigs.

Thanks for testing!
Ahmad 

> 
>>
>> Cheers,
>> Ahmad
>>
>>>
>>> Regards,
>>> Denis
>>>
>>>>
>>>>> +images:
>>>>> +  barebox-qemu-malta.img.swapped: !template "$LG_BUILDDIR/images/barebox-qemu-malta.img.swapped"
>>>>> +tools:
>>>>> +  qemu: /usr/bin/qemu-system-mips64el
>>>>> +imports:
>>>>> +  -  ../strategy.py
>>>>
>>>> --
>>>> 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 |
>>>>
>>>
>>
>> --
>> 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 |
>>
> 

-- 
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 |




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

* Re: [PATCH 2/3] test: mips: add QEMU Malta 64le labgrid config
  2023-06-09  9:28           ` Ahmad Fatoum
@ 2023-06-09  9:38             ` Denis Orlov
  2023-06-09  9:41               ` Ahmad Fatoum
  0 siblings, 1 reply; 16+ messages in thread
From: Denis Orlov @ 2023-06-09  9:38 UTC (permalink / raw)
  To: Ahmad Fatoum; +Cc: barebox

On Fri, 9 Jun 2023 at 12:28, Ahmad Fatoum <a.fatoum@pengutronix.de> wrote:
>
> On 09.06.23 11:17, Denis Orlov wrote:
> > On Fri, 9 Jun 2023 at 10:21, Ahmad Fatoum <a.fatoum@pengutronix.de> wrote:
> >>
> >> On 09.06.23 09:14, Denis Orlov wrote:
> >>> Hello Ahmad,
> >>>
> >>> On Fri, 9 Jun 2023 at 09:36, Ahmad Fatoum <a.fatoum@pengutronix.de> wrote:
> >>>>
> >>>> On 07.06.23 06:59, Denis Orlov wrote:
> >>>>> Signed-off-by: Denis Orlov <denorl2009@gmail.com>
> >>>>> ---
> >>>>>  test/mips/qemu-malta64el_defconfig.yaml | 22 ++++++++++++++++++++++
> >>>>>  1 file changed, 22 insertions(+)
> >>>>>  create mode 100644 test/mips/qemu-malta64el_defconfig.yaml
> >>>>>
> >>>>> diff --git a/test/mips/qemu-malta64el_defconfig.yaml b/test/mips/qemu-malta64el_defconfig.yaml
> >>>>> new file mode 100644
> >>>>> index 0000000000..22562d5b7a
> >>>>> --- /dev/null
> >>>>> +++ b/test/mips/qemu-malta64el_defconfig.yaml
> >>>>> @@ -0,0 +1,22 @@
> >>>>> +targets:
> >>>>> +  main:
> >>>>> +    drivers:
> >>>>> +      QEMUDriver:
> >>>>> +        qemu_bin: qemu
> >>>>> +        machine: malta
> >>>>> +        cpu: 5KEf
> >>>>> +        memory: 256M
> >>>>> +        bios: barebox-qemu-malta.img.swapped
> >>>>> +        extra_args: ''
> >>>>> +      BareboxDriver:
> >>>>> +        prompt: 'barebox@[^:]+:[^ ]+ '
> >>>>> +        bootstring: 'commandline:'
> >>>>> +      BareboxTestStrategy: {}
> >>>>> +    features:
> >>>>> +      - virtio-pci
> >>>>
> >>>> Did you test virtio PCI? I don't see it enabled in the defconfig.
> >>>
> >>> Nope, I didn't. I must have copied this from the 32-bit malta config
> >>> file. However, I see that its defconfig also lacks VIRTIO_PCI, so should
> >>> those be removed from both labgrid configs?
> >>>
> >>> Besides, judging from the virtio PCI Kconfig option depends, there seem
> >>> to be some issues with virtio PCI on MIPS without CONFIG_MMU set. Is the
> >>> lack of VIRTIO_PCI option in 32-bit malta defconfig related to that?
> >>
> >> Ah, right. test/emulate.pl reads virtio-pci feature to decide what Virt I/O
> >> transport to use. Maybe the MMU incompatibility is fixed now with your
> >> recent DMA rework or maybe we still have 1:1 mapping assumptions in the
> >> virtio code itself. If you could give it a quick test with CONFIG_MMU=n
> >> and see if it works, that would be great. Something like this should do it:
> >>
> >> /usr/bin/qemu-system-mips64el -M malta -cpu 5KEf -m 256M \
> >>    -bios barebox-qemu-malta.img.swapped -serial mon:stdio -trace file=/dev/null \
> >>    -drive if=none,file=/src/barebox-rockchip/somealigned.img,format=raw,id=hd0 \
> >>    -device virtio-blk-pci,disable-legacy=on,disable-modern=off,drive=hd0
> >>
> >> (Above was generated by ./test/emulate.pl $config -n --blk=somealigned.img)
> >>
> >> You should see a /dev/virtioblk* device if everything is enabled and working.
> >
> > Yeah, it seems that this works on both CONFIG_MMU=y and CONFIG_MMU=n now.
> > The drive mounts successfully and I am able to look at its contents with
> > "ls". So, does this mean that we should enable the VIRTIO_PCI option in
> > malta defconfigs?
>
> Even for 32-bit? Ye, then we can drop the depends line in VIRTIO_PCI and
> enable it in the MIPS defconfigs.

Yep, 32-bit with CONFIG_MMU=n works too. I will send a patch later today.
Should CONFIG_DISK and CONFIG_VIRTIO_BLK also be enabled in those
by default?

>
> Thanks for testing!
> Ahmad
>
> >
> >>
> >> Cheers,
> >> Ahmad
> >>
> >>>
> >>> Regards,
> >>> Denis
> >>>
> >>>>
> >>>>> +images:
> >>>>> +  barebox-qemu-malta.img.swapped: !template "$LG_BUILDDIR/images/barebox-qemu-malta.img.swapped"
> >>>>> +tools:
> >>>>> +  qemu: /usr/bin/qemu-system-mips64el
> >>>>> +imports:
> >>>>> +  -  ../strategy.py
> >>>>
> >>>> --
> >>>> 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 |
> >>>>
> >>>
> >>
> >> --
> >> 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 |
> >>
> >
>
> --
> 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 |
>



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

* Re: [PATCH 2/3] test: mips: add QEMU Malta 64le labgrid config
  2023-06-09  9:38             ` Denis Orlov
@ 2023-06-09  9:41               ` Ahmad Fatoum
  0 siblings, 0 replies; 16+ messages in thread
From: Ahmad Fatoum @ 2023-06-09  9:41 UTC (permalink / raw)
  To: Denis Orlov; +Cc: barebox

On 09.06.23 11:38, Denis Orlov wrote:
> On Fri, 9 Jun 2023 at 12:28, Ahmad Fatoum <a.fatoum@pengutronix.de> wrote:
>>
>> On 09.06.23 11:17, Denis Orlov wrote:
>>> On Fri, 9 Jun 2023 at 10:21, Ahmad Fatoum <a.fatoum@pengutronix.de> wrote:
>>>>
>>>> On 09.06.23 09:14, Denis Orlov wrote:
>>>>> Hello Ahmad,
>>>>>
>>>>> On Fri, 9 Jun 2023 at 09:36, Ahmad Fatoum <a.fatoum@pengutronix.de> wrote:
>>>>>>
>>>>>> On 07.06.23 06:59, Denis Orlov wrote:
>>>>>>> Signed-off-by: Denis Orlov <denorl2009@gmail.com>
>>>>>>> ---
>>>>>>>  test/mips/qemu-malta64el_defconfig.yaml | 22 ++++++++++++++++++++++
>>>>>>>  1 file changed, 22 insertions(+)
>>>>>>>  create mode 100644 test/mips/qemu-malta64el_defconfig.yaml
>>>>>>>
>>>>>>> diff --git a/test/mips/qemu-malta64el_defconfig.yaml b/test/mips/qemu-malta64el_defconfig.yaml
>>>>>>> new file mode 100644
>>>>>>> index 0000000000..22562d5b7a
>>>>>>> --- /dev/null
>>>>>>> +++ b/test/mips/qemu-malta64el_defconfig.yaml
>>>>>>> @@ -0,0 +1,22 @@
>>>>>>> +targets:
>>>>>>> +  main:
>>>>>>> +    drivers:
>>>>>>> +      QEMUDriver:
>>>>>>> +        qemu_bin: qemu
>>>>>>> +        machine: malta
>>>>>>> +        cpu: 5KEf
>>>>>>> +        memory: 256M
>>>>>>> +        bios: barebox-qemu-malta.img.swapped
>>>>>>> +        extra_args: ''
>>>>>>> +      BareboxDriver:
>>>>>>> +        prompt: 'barebox@[^:]+:[^ ]+ '
>>>>>>> +        bootstring: 'commandline:'
>>>>>>> +      BareboxTestStrategy: {}
>>>>>>> +    features:
>>>>>>> +      - virtio-pci
>>>>>>
>>>>>> Did you test virtio PCI? I don't see it enabled in the defconfig.
>>>>>
>>>>> Nope, I didn't. I must have copied this from the 32-bit malta config
>>>>> file. However, I see that its defconfig also lacks VIRTIO_PCI, so should
>>>>> those be removed from both labgrid configs?
>>>>>
>>>>> Besides, judging from the virtio PCI Kconfig option depends, there seem
>>>>> to be some issues with virtio PCI on MIPS without CONFIG_MMU set. Is the
>>>>> lack of VIRTIO_PCI option in 32-bit malta defconfig related to that?
>>>>
>>>> Ah, right. test/emulate.pl reads virtio-pci feature to decide what Virt I/O
>>>> transport to use. Maybe the MMU incompatibility is fixed now with your
>>>> recent DMA rework or maybe we still have 1:1 mapping assumptions in the
>>>> virtio code itself. If you could give it a quick test with CONFIG_MMU=n
>>>> and see if it works, that would be great. Something like this should do it:
>>>>
>>>> /usr/bin/qemu-system-mips64el -M malta -cpu 5KEf -m 256M \
>>>>    -bios barebox-qemu-malta.img.swapped -serial mon:stdio -trace file=/dev/null \
>>>>    -drive if=none,file=/src/barebox-rockchip/somealigned.img,format=raw,id=hd0 \
>>>>    -device virtio-blk-pci,disable-legacy=on,disable-modern=off,drive=hd0
>>>>
>>>> (Above was generated by ./test/emulate.pl $config -n --blk=somealigned.img)
>>>>
>>>> You should see a /dev/virtioblk* device if everything is enabled and working.
>>>
>>> Yeah, it seems that this works on both CONFIG_MMU=y and CONFIG_MMU=n now.
>>> The drive mounts successfully and I am able to look at its contents with
>>> "ls". So, does this mean that we should enable the VIRTIO_PCI option in
>>> malta defconfigs?
>>
>> Even for 32-bit? Ye, then we can drop the depends line in VIRTIO_PCI and
>> enable it in the MIPS defconfigs.
> 
> Yep, 32-bit with CONFIG_MMU=n works too. I will send a patch later today.
> Should CONFIG_DISK and CONFIG_VIRTIO_BLK also be enabled in those
> by default?

Given that size is not a constraint for malta, I'd suggest enabling everything
Virt I/O related:

  CONFIG_VIRTIO_MENU=y
  CONFIG_VIRTIO_PCI=y
  CONFIG_VIRTIO_CONSOLE=y
  CONFIG_VIRTIO_BLK=y
  CONFIG_HWRNG=y
  CONFIG_HW_RANDOM_VIRTIO=y
  CONFIG_VIRTIO_INPUT=y

and their dependencies.

Thanks for looking into this,
Ahmad

> 
>>
>> Thanks for testing!
>> Ahmad
>>
>>>
>>>>
>>>> Cheers,
>>>> Ahmad
>>>>
>>>>>
>>>>> Regards,
>>>>> Denis
>>>>>
>>>>>>
>>>>>>> +images:
>>>>>>> +  barebox-qemu-malta.img.swapped: !template "$LG_BUILDDIR/images/barebox-qemu-malta.img.swapped"
>>>>>>> +tools:
>>>>>>> +  qemu: /usr/bin/qemu-system-mips64el
>>>>>>> +imports:
>>>>>>> +  -  ../strategy.py
>>>>>>
>>>>>> --
>>>>>> 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 |
>>>>>>
>>>>>
>>>>
>>>> --
>>>> 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 |
>>>>
>>>
>>
>> --
>> 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 |
>>
> 

-- 
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 |




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

* Re: [PATCH 0/3] Add CI for MIPS64
  2023-06-07  4:59 [PATCH 0/3] Add CI for MIPS64 Denis Orlov
                   ` (2 preceding siblings ...)
  2023-06-07  4:59 ` [PATCH 3/3] ci: add a job for testing 64BIT MIPS with labgrid Denis Orlov
@ 2023-06-12  6:39 ` Sascha Hauer
  3 siblings, 0 replies; 16+ messages in thread
From: Sascha Hauer @ 2023-06-12  6:39 UTC (permalink / raw)
  To: Denis Orlov; +Cc: barebox, Ahmad Fatoum

On Wed, Jun 07, 2023 at 07:59:37AM +0300, Denis Orlov wrote:
> This adds a necessary defconfig and labgrid configuration file together
> with the corresponding CI job for building and testing the MIPS image
> with 64BIT option set.
> 
> I've decided against giving the defconfig a generic name such as
> mips64_defconfig. For now, only Malta running in QEMU is really
> supported, so naming it as that seems more fitting for me. And if
> more MIPS64 boards will get support in the future, then this defconfig
> might be renamed appropriately.
> 
> Denis Orlov (3):
>   MIPS: add qemu-malta64el_defconfig
>   test: mips: add QEMU Malta 64le labgrid config
>   ci: add a job for testing 64BIT MIPS with labgrid

Applied, thanks

Sascha

> 
>  .github/workflows/test-labgrid-pytest.yml  |  4 +
>  arch/mips/configs/qemu-malta64el_defconfig | 87 ++++++++++++++++++++++
>  test/mips/qemu-malta64el_defconfig.yaml    | 22 ++++++
>  3 files changed, 113 insertions(+)
>  create mode 100644 arch/mips/configs/qemu-malta64el_defconfig
>  create mode 100644 test/mips/qemu-malta64el_defconfig.yaml
> 
> -- 
> 2.41.0
> 
> 

-- 
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 |



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

end of thread, other threads:[~2023-06-12  6:40 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-06-07  4:59 [PATCH 0/3] Add CI for MIPS64 Denis Orlov
2023-06-07  4:59 ` [PATCH 1/3] MIPS: add qemu-malta64el_defconfig Denis Orlov
2023-06-09  5:09   ` Antony Pavlov
2023-06-09  6:35   ` Ahmad Fatoum
2023-06-07  4:59 ` [PATCH 2/3] test: mips: add QEMU Malta 64le labgrid config Denis Orlov
2023-06-09  6:36   ` Ahmad Fatoum
2023-06-09  7:14     ` Denis Orlov
2023-06-09  7:21       ` Ahmad Fatoum
2023-06-09  9:17         ` Denis Orlov
2023-06-09  9:28           ` Ahmad Fatoum
2023-06-09  9:38             ` Denis Orlov
2023-06-09  9:41               ` Ahmad Fatoum
2023-06-07  4:59 ` [PATCH 3/3] ci: add a job for testing 64BIT MIPS with labgrid Denis Orlov
2023-06-09  6:38   ` Ahmad Fatoum
2023-06-09  7:58     ` Denis Orlov
2023-06-12  6:39 ` [PATCH 0/3] Add CI for MIPS64 Sascha Hauer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox