mbox

[PULL,0/1] loongarch-to-apply queue

Message ID 20240221091154.3024118-1-gaosong@loongson.cn (mailing list archive)
State New, archived
Headers show

Pull-request

https://gitlab.com/gaosong/qemu.git tags/pull-loongarch-20240221

Message

gaosong Feb. 21, 2024, 9:11 a.m. UTC
The following changes since commit 760b4dcdddba4a40b9fa0eb78fdfc7eda7cb83d0:

  Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging (2024-02-20 10:11:08 +0000)

are available in the Git repository at:

  https://gitlab.com/gaosong/qemu.git tags/pull-loongarch-20240221

for you to fetch changes up to be57fd1e526e70fd55f1e87b0b70fab3c6baf089:

  loongarch: Change the UEFI loading mode to loongarch (2024-02-21 17:06:23 +0800)

----------------------------------------------------------------
pull-loongarch-20240221

----------------------------------------------------------------
Xianglai Li (1):
      loongarch: Change the UEFI loading mode to loongarch

 hw/loongarch/acpi-build.c   |  29 +++++++++++--
 hw/loongarch/virt.c         | 101 ++++++++++++++++++++++++++++++++------------
 include/hw/loongarch/virt.h |  10 +++--
 3 files changed, 107 insertions(+), 33 deletions(-)

Comments

Peter Maydell Feb. 22, 2024, 12:42 p.m. UTC | #1
On Wed, 21 Feb 2024 at 09:11, Song Gao <gaosong@loongson.cn> wrote:
>
> The following changes since commit 760b4dcdddba4a40b9fa0eb78fdfc7eda7cb83d0:
>
>   Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging (2024-02-20 10:11:08 +0000)
>
> are available in the Git repository at:
>
>   https://gitlab.com/gaosong/qemu.git tags/pull-loongarch-20240221
>
> for you to fetch changes up to be57fd1e526e70fd55f1e87b0b70fab3c6baf089:
>
>   loongarch: Change the UEFI loading mode to loongarch (2024-02-21 17:06:23 +0800)
>
> ----------------------------------------------------------------
> pull-loongarch-20240221
>
> ----------------------------------------------------------------
> Xianglai Li (1):
>       loongarch: Change the UEFI loading mode to loongarch

Hi; this fails to build for mipsel:
https://gitlab.com/qemu-project/qemu/-/jobs/6232698129

../hw/loongarch/acpi-build.c: In function ‘build_flash_aml’:
../hw/loongarch/acpi-build.c:327:19: error: incompatible types when
assigning to type ‘hwaddr’ {aka ‘long long unsigned int’} from type
‘Int128’
327 | flash0_size = flash_mem->size;
| ^~~~~~~~~
../hw/loongarch/acpi-build.c:331:19: error: incompatible types when
assigning to type ‘hwaddr’ {aka ‘long long unsigned int’} from type
‘Int128’
331 | flash1_size = flash_mem->size;
| ^~~~~~~~~


../hw/loongarch/virt.c: In function ‘fdt_add_flash_node’:
../hw/loongarch/virt.c:131:19: error: incompatible types when
assigning to type ‘hwaddr’ {aka ‘long long unsigned int’} from type
‘Int128’
131 | flash0_size = flash_mem->size;
| ^~~~~~~~~
../hw/loongarch/virt.c:135:19: error: incompatible types when
assigning to type ‘hwaddr’ {aka ‘long long unsigned int’} from type
‘Int128’
135 | flash1_size = flash_mem->size;
| ^~~~~~~~~


The value you get back from pflash_cfi01_get_memory() is a
MemoryRegion -- this should be an opaque struct to you, not
something you can reach in and get the 'size' field from.
(The 'size' field is an Int128, which is not necessarily an
integer type known to the compiler -- on some platforms it is
a struct -- which is why this doesn't compile here.)

Your board code created these memory regions so typically it
should already know how big they are.  If you really
do need to get the size of a MemoryRegion, the function
to use is memory_region_size().

thanks
-- PMM
gaosong Feb. 23, 2024, 1:31 a.m. UTC | #2
在 2024/2/22 下午8:42, Peter Maydell 写道:
> On Wed, 21 Feb 2024 at 09:11, Song Gao <gaosong@loongson.cn> wrote:
>> The following changes since commit 760b4dcdddba4a40b9fa0eb78fdfc7eda7cb83d0:
>>
>>    Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging (2024-02-20 10:11:08 +0000)
>>
>> are available in the Git repository at:
>>
>>    https://gitlab.com/gaosong/qemu.git tags/pull-loongarch-20240221
>>
>> for you to fetch changes up to be57fd1e526e70fd55f1e87b0b70fab3c6baf089:
>>
>>    loongarch: Change the UEFI loading mode to loongarch (2024-02-21 17:06:23 +0800)
>>
>> ----------------------------------------------------------------
>> pull-loongarch-20240221
>>
>> ----------------------------------------------------------------
>> Xianglai Li (1):
>>        loongarch: Change the UEFI loading mode to loongarch
> Hi; this fails to build for mipsel:
> https://gitlab.com/qemu-project/qemu/-/jobs/6232698129
>
> ../hw/loongarch/acpi-build.c: In function ‘build_flash_aml’:
> ../hw/loongarch/acpi-build.c:327:19: error: incompatible types when
> assigning to type ‘hwaddr’ {aka ‘long long unsigned int’} from type
> ‘Int128’
> 327 | flash0_size = flash_mem->size;
> | ^~~~~~~~~
> ../hw/loongarch/acpi-build.c:331:19: error: incompatible types when
> assigning to type ‘hwaddr’ {aka ‘long long unsigned int’} from type
> ‘Int128’
> 331 | flash1_size = flash_mem->size;
> | ^~~~~~~~~
>
>
> ../hw/loongarch/virt.c: In function ‘fdt_add_flash_node’:
> ../hw/loongarch/virt.c:131:19: error: incompatible types when
> assigning to type ‘hwaddr’ {aka ‘long long unsigned int’} from type
> ‘Int128’
> 131 | flash0_size = flash_mem->size;
> | ^~~~~~~~~
> ../hw/loongarch/virt.c:135:19: error: incompatible types when
> assigning to type ‘hwaddr’ {aka ‘long long unsigned int’} from type
> ‘Int128’
> 135 | flash1_size = flash_mem->size;
> | ^~~~~~~~~
>
>
> The value you get back from pflash_cfi01_get_memory() is a
> MemoryRegion -- this should be an opaque struct to you, not
> something you can reach in and get the 'size' field from.
> (The 'size' field is an Int128, which is not necessarily an
> integer type known to the compiler -- on some platforms it is
> a struct -- which is why this doesn't compile here.)
>
> Your board code created these memory regions so typically it
> should already know how big they are.  If you really
> do need to get the size of a MemoryRegion, the function
> to use is memory_region_size(
Got it ,  I will correct it.

Thanks.
Song Gao
> thanks
> -- PMM