diff mbox series

[isar-cip-core,v2] Add support Plat'Home OpenBlocks IoT VX2

Message ID 20231010081034.3762306-1-nobuhiro1.iwamatsu@toshiba.co.jp (mailing list archive)
State Changes Requested
Headers show
Series [isar-cip-core,v2] Add support Plat'Home OpenBlocks IoT VX2 | expand

Commit Message

Nobuhiro Iwamatsu Oct. 10, 2023, 8:10 a.m. UTC
This adds configuration files to support Plat'Home OpenBlocks IoT VX2.

Signed-off-by: Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@toshiba.co.jp>
---

Note: This commit depends 'https://lore.kernel.org/cip-dev/20231010080305.3762206-1-nobuhiro1.iwamatsu@toshiba.co.jp/T/#u'
v2: Drop patch for wic/openblocks-iot-vx2.wks and use x86_64-generic.wks with WKS_FILE.

---

 Kconfig                              |  4 ++++
 conf/machine/openblocks-iot-vx2.conf | 16 ++++++++++++++++
 kas/board/openblocks-iot-vx2.yml     | 15 +++++++++++++++
 3 files changed, 35 insertions(+)
 create mode 100644 conf/machine/openblocks-iot-vx2.conf
 create mode 100644 kas/board/openblocks-iot-vx2.yml

Comments

Jan Kiszka Oct. 10, 2023, 8:32 a.m. UTC | #1
On 10.10.23 10:10, Nobuhiro Iwamatsu wrote:
> This adds configuration files to support Plat'Home OpenBlocks IoT VX2.
> 
> Signed-off-by: Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@toshiba.co.jp>
> ---
> 
> Note: This commit depends 'https://lore.kernel.org/cip-dev/20231010080305.3762206-1-nobuhiro1.iwamatsu@toshiba.co.jp/T/#u'
> v2: Drop patch for wic/openblocks-iot-vx2.wks and use x86_64-generic.wks with WKS_FILE.
> 
> ---
> 
>  Kconfig                              |  4 ++++
>  conf/machine/openblocks-iot-vx2.conf | 16 ++++++++++++++++
>  kas/board/openblocks-iot-vx2.yml     | 15 +++++++++++++++
>  3 files changed, 35 insertions(+)
>  create mode 100644 conf/machine/openblocks-iot-vx2.conf
>  create mode 100644 kas/board/openblocks-iot-vx2.yml
> 
> diff --git a/Kconfig b/Kconfig
> index f5ea5af..be8bbc2 100644
> --- a/Kconfig
> +++ b/Kconfig
> @@ -67,6 +67,9 @@ config TARGET_QEMU_RISCV64
>  	bool "QEMU RISC-V 64-bit (riscv64)"
>  	select ARCH_RISCV64
>  
> +config TARGET_OBS_IOT_VX2
> +	bool "Plat'Home OpenBlocks IoT VX2"
> +	select ARCH_AMD64
>  endchoice
>  
>  config KAS_INCLUDE_BOARD
> @@ -79,6 +82,7 @@ config KAS_INCLUDE_BOARD
>  	default "kas/board/bbb.yml" if TARGET_BBB
>  	default "kas/board/iwg20m.yml" if TARGET_IWG20D
>  	default "kas/board/qemu-riscv64.yml" if TARGET_QEMU_RISCV64
> +	default "kas/board/openblocks-iot-vx2.yml" if TARGET_OBS_IOT_VX2
>  
>  comment "Kernel options"
>  
> diff --git a/conf/machine/openblocks-iot-vx2.conf b/conf/machine/openblocks-iot-vx2.conf
> new file mode 100644
> index 0000000..5c144a3
> --- /dev/null
> +++ b/conf/machine/openblocks-iot-vx2.conf
> @@ -0,0 +1,16 @@
> +#
> +# CIP Core, generic profile
> +#
> +# Copyright (c) Siemens AG, 2019
> +# Copyright (c) TOSHIBA CORPORATION, 2023
> +#
> +# SPDX-License-Identifier: MIT
> +#
> +
> +DISTRO_ARCH = "amd64"
> +
> +IMAGE_FSTYPES ?= "wic"
> +WKS_FILE ?= "x86_64-generic.wks"
> +IMAGER_INSTALL += "${GRUB_BOOTLOADER_INSTALL}"
> +USE_CIP_KERNEL_CONFIG = "1"
> +KERNEL_DEFCONFIG = "cip-kernel-config/${KERNEL_DEFCONFIG_VERSION}/x86/plathome_obsvx2_defconfig"
> diff --git a/kas/board/openblocks-iot-vx2.yml b/kas/board/openblocks-iot-vx2.yml
> new file mode 100644
> index 0000000..6951e2e
> --- /dev/null
> +++ b/kas/board/openblocks-iot-vx2.yml
> @@ -0,0 +1,15 @@
> +#
> +# CIP Core, generic profile
> +#
> +# TOSHIBA CORPORATION, 2023
> +#
> +# Authors:
> +#  Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@toshiba.co.jp>
> +#
> +# SPDX-License-Identifier: MIT
> +#
> +
> +header:
> +  version: 12
> +
> +machine: openblocks-iot-vx2

That's still generating a separate image. Can't we consolidate the
differences, like you already did for the wks file? E.g. have a kernel
config super-set?

Jan
Nobuhiro Iwamatsu Oct. 10, 2023, 1:23 p.m. UTC | #2
Hi,

> On 10.10.23 10:10, Nobuhiro Iwamatsu wrote:
> > This adds configuration files to support Plat'Home OpenBlocks IoT VX2.
>

<snip>
 
> That's still generating a separate image. Can't we consolidate the differences,
> like you already did for the wks file? E.g. have a kernel config super-set?
> 

My understanding was that it only targets wks files.
You are proposing a generic **OS image** that will work with other x86_64 reference HWs.
Is this correct? If this is correct, we need to create a reference HWs common (super-set?) kernel config).

Best regards,
  Nobuhiro
Jan Kiszka Oct. 10, 2023, 1:25 p.m. UTC | #3
On 10.10.23 15:23, nobuhiro1.iwamatsu@toshiba.co.jp wrote:
> Hi,
> 
>> On 10.10.23 10:10, Nobuhiro Iwamatsu wrote:
>>> This adds configuration files to support Plat'Home OpenBlocks IoT VX2.
>>
> 
> <snip>
>  
>> That's still generating a separate image. Can't we consolidate the differences,
>> like you already did for the wks file? E.g. have a kernel config super-set?
>>
> 
> My understanding was that it only targets wks files.
> You are proposing a generic **OS image** that will work with other x86_64 reference HWs.
> Is this correct? If this is correct, we need to create a reference HWs common (super-set?) kernel config).
> 

Exactly. Just proposed that also in the TSC. Open to hear if there could
be any conflicts/blockers in that direction. But I think x86 should be
rather straightforward.

Jan
Nobuhiro Iwamatsu Oct. 11, 2023, 12:03 a.m. UTC | #4
Hi,

> On 10.10.23 15:23, nobuhiro1.iwamatsu@toshiba.co.jp wrote:
> > My understanding was that it only targets wks files.
> > You are proposing a generic **OS image** that will work with other x86_64
> reference HWs.
> > Is this correct? If this is correct, we need to create a reference HWs common
> (super-set?) kernel config).
> >
> 
> Exactly. Just proposed that also in the TSC. Open to hear if there could be any
> conflicts/blockers in that direction. But I think x86 should be rather
> straightforward.

Got it.
For example, I think we need to align our thinking on how reference hardware providers handle things 
like test images and test results.
Provider kernel images of CIP kernels would like to share them when running tests, etc. However, reference
HW providers may wish to test with kernel images optimized for reference HW. In this case, I think we will
need to configure the reference HW as before.

BTW, I created a kernel image by merging the kernel configurations of VX2 and IPC227e, and checked that it boots.
There doesn't seem to be any problem.

VX2: https://lava.ciplatform.org/scheduler/job/1019349
IPC227e: https://lava.ciplatform.org/scheduler/job/1019328

Best regards,
  Nobuhiro
Jan Kiszka Oct. 13, 2023, 8:34 a.m. UTC | #5
On 11.10.23 02:03, nobuhiro1.iwamatsu@toshiba.co.jp wrote:
> Hi,
> 
>> On 10.10.23 15:23, nobuhiro1.iwamatsu@toshiba.co.jp wrote:
>>> My understanding was that it only targets wks files.
>>> You are proposing a generic **OS image** that will work with other x86_64
>> reference HWs.
>>> Is this correct? If this is correct, we need to create a reference HWs common
>> (super-set?) kernel config).
>>>
>>
>> Exactly. Just proposed that also in the TSC. Open to hear if there could be any
>> conflicts/blockers in that direction. But I think x86 should be rather
>> straightforward.
> 
> Got it.
> For example, I think we need to align our thinking on how reference hardware providers handle things 
> like test images and test results.
> Provider kernel images of CIP kernels would like to share them when running tests, etc. However, reference
> HW providers may wish to test with kernel images optimized for reference HW. In this case, I think we will
> need to configure the reference HW as before.
> 
> BTW, I created a kernel image by merging the kernel configurations of VX2 and IPC227e, and checked that it boots.
> There doesn't seem to be any problem.
> 
> VX2: https://lava.ciplatform.org/scheduler/job/1019349
> IPC227e: https://lava.ciplatform.org/scheduler/job/1019328
> 
> Best regards,
>   Nobuhiro

So, what to do for the upcoming isar-cip-core release? I would not mind
too much merging this for now and consolidating later, after this
release, if this feature is time-critical. CI will not grow with this
patch as well for now.

Jan
diff mbox series

Patch

diff --git a/Kconfig b/Kconfig
index f5ea5af..be8bbc2 100644
--- a/Kconfig
+++ b/Kconfig
@@ -67,6 +67,9 @@  config TARGET_QEMU_RISCV64
 	bool "QEMU RISC-V 64-bit (riscv64)"
 	select ARCH_RISCV64
 
+config TARGET_OBS_IOT_VX2
+	bool "Plat'Home OpenBlocks IoT VX2"
+	select ARCH_AMD64
 endchoice
 
 config KAS_INCLUDE_BOARD
@@ -79,6 +82,7 @@  config KAS_INCLUDE_BOARD
 	default "kas/board/bbb.yml" if TARGET_BBB
 	default "kas/board/iwg20m.yml" if TARGET_IWG20D
 	default "kas/board/qemu-riscv64.yml" if TARGET_QEMU_RISCV64
+	default "kas/board/openblocks-iot-vx2.yml" if TARGET_OBS_IOT_VX2
 
 comment "Kernel options"
 
diff --git a/conf/machine/openblocks-iot-vx2.conf b/conf/machine/openblocks-iot-vx2.conf
new file mode 100644
index 0000000..5c144a3
--- /dev/null
+++ b/conf/machine/openblocks-iot-vx2.conf
@@ -0,0 +1,16 @@ 
+#
+# CIP Core, generic profile
+#
+# Copyright (c) Siemens AG, 2019
+# Copyright (c) TOSHIBA CORPORATION, 2023
+#
+# SPDX-License-Identifier: MIT
+#
+
+DISTRO_ARCH = "amd64"
+
+IMAGE_FSTYPES ?= "wic"
+WKS_FILE ?= "x86_64-generic.wks"
+IMAGER_INSTALL += "${GRUB_BOOTLOADER_INSTALL}"
+USE_CIP_KERNEL_CONFIG = "1"
+KERNEL_DEFCONFIG = "cip-kernel-config/${KERNEL_DEFCONFIG_VERSION}/x86/plathome_obsvx2_defconfig"
diff --git a/kas/board/openblocks-iot-vx2.yml b/kas/board/openblocks-iot-vx2.yml
new file mode 100644
index 0000000..6951e2e
--- /dev/null
+++ b/kas/board/openblocks-iot-vx2.yml
@@ -0,0 +1,15 @@ 
+#
+# CIP Core, generic profile
+#
+# TOSHIBA CORPORATION, 2023
+#
+# Authors:
+#  Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@toshiba.co.jp>
+#
+# SPDX-License-Identifier: MIT
+#
+
+header:
+  version: 12
+
+machine: openblocks-iot-vx2