[PATCH 3/5] include: Add loongarch_pic_common header file

Bibo Mao posted 5 patches 2 months, 1 week ago
[PATCH 3/5] include: Add loongarch_pic_common header file
Posted by Bibo Mao 2 months, 1 week ago
From: bibo mao <maobibo@loongson.cn>

For header file hw/intc/loongarch_pch_pic.h, add common file
hw/intc/loongarch_pic_common.h and remove duplicated macro definition
in file loongarch_pch_pic.h

Signed-off-by: Bibo Mao <maobibo@loongson.cn>
---
 include/hw/intc/loongarch_pch_pic.h | 36 +++++------------------------
 1 file changed, 6 insertions(+), 30 deletions(-)

diff --git a/include/hw/intc/loongarch_pch_pic.h b/include/hw/intc/loongarch_pch_pic.h
index d5437e88f2..c71ee59de2 100644
--- a/include/hw/intc/loongarch_pch_pic.h
+++ b/include/hw/intc/loongarch_pch_pic.h
@@ -5,42 +5,16 @@
  * Copyright (c) 2021 Loongson Technology Corporation Limited
  */
 
+#ifndef HW_LOONGARCH_PCH_PIC_H
+#define HW_LOONGARCH_PCH_PIC_H
+
 #include "hw/sysbus.h"
+#include "hw/intc/loongarch_pic_common.h"
 
 #define TYPE_LOONGARCH_PCH_PIC "loongarch_pch_pic"
 #define PCH_PIC_NAME(name) TYPE_LOONGARCH_PCH_PIC#name
 OBJECT_DECLARE_SIMPLE_TYPE(LoongArchPCHPIC, LOONGARCH_PCH_PIC)
 
-#define PCH_PIC_INT_ID_VAL              0x7000000UL
-#define PCH_PIC_INT_ID_VER              0x1UL
-
-#define PCH_PIC_INT_ID_LO               0x00
-#define PCH_PIC_INT_ID_HI               0x04
-#define PCH_PIC_INT_MASK_LO             0x20
-#define PCH_PIC_INT_MASK_HI             0x24
-#define PCH_PIC_HTMSI_EN_LO             0x40
-#define PCH_PIC_HTMSI_EN_HI             0x44
-#define PCH_PIC_INT_EDGE_LO             0x60
-#define PCH_PIC_INT_EDGE_HI             0x64
-#define PCH_PIC_INT_CLEAR_LO            0x80
-#define PCH_PIC_INT_CLEAR_HI            0x84
-#define PCH_PIC_AUTO_CTRL0_LO           0xc0
-#define PCH_PIC_AUTO_CTRL0_HI           0xc4
-#define PCH_PIC_AUTO_CTRL1_LO           0xe0
-#define PCH_PIC_AUTO_CTRL1_HI           0xe4
-#define PCH_PIC_ROUTE_ENTRY_OFFSET      0x100
-#define PCH_PIC_ROUTE_ENTRY_END         0x13f
-#define PCH_PIC_HTMSI_VEC_OFFSET        0x200
-#define PCH_PIC_HTMSI_VEC_END           0x23f
-#define PCH_PIC_INT_STATUS_LO           0x3a0
-#define PCH_PIC_INT_STATUS_HI           0x3a4
-#define PCH_PIC_INT_POL_LO              0x3e0
-#define PCH_PIC_INT_POL_HI              0x3e4
-
-#define STATUS_LO_START                 0
-#define STATUS_HI_START                 0x4
-#define POL_LO_START                    0x40
-#define POL_HI_START                    0x44
 struct LoongArchPCHPIC {
     SysBusDevice parent_obj;
     qemu_irq parent_irq[64];
@@ -67,3 +41,5 @@ struct LoongArchPCHPIC {
     MemoryRegion iomem8;
     unsigned int irq_num;
 };
+
+#endif /* HW_LOONGARCH_PCH_PIC_H */
-- 
2.39.3
Re: [PATCH 3/5] include: Add loongarch_pic_common header file
Posted by Philippe Mathieu-Daudé 2 months, 1 week ago
On 12/9/24 04:35, Bibo Mao wrote:
> From: bibo mao <maobibo@loongson.cn>
> 
> For header file hw/intc/loongarch_pch_pic.h, add common file
> hw/intc/loongarch_pic_common.h and remove duplicated macro definition
> in file loongarch_pch_pic.h
> 
> Signed-off-by: Bibo Mao <maobibo@loongson.cn>
> ---
>   include/hw/intc/loongarch_pch_pic.h | 36 +++++------------------------
>   1 file changed, 6 insertions(+), 30 deletions(-)

Maybe easier to review if moved as first patch, moving definitions
to the new include/hw/intc/loongarch_pic_common.h

> diff --git a/include/hw/intc/loongarch_pch_pic.h b/include/hw/intc/loongarch_pch_pic.h
> index d5437e88f2..c71ee59de2 100644
> --- a/include/hw/intc/loongarch_pch_pic.h
> +++ b/include/hw/intc/loongarch_pch_pic.h
> @@ -5,42 +5,16 @@
>    * Copyright (c) 2021 Loongson Technology Corporation Limited
>    */
>   
> +#ifndef HW_LOONGARCH_PCH_PIC_H
> +#define HW_LOONGARCH_PCH_PIC_H
> +
>   #include "hw/sysbus.h"
> +#include "hw/intc/loongarch_pic_common.h"
>   
>   #define TYPE_LOONGARCH_PCH_PIC "loongarch_pch_pic"
>   #define PCH_PIC_NAME(name) TYPE_LOONGARCH_PCH_PIC#name
>   OBJECT_DECLARE_SIMPLE_TYPE(LoongArchPCHPIC, LOONGARCH_PCH_PIC)
>   
> -#define PCH_PIC_INT_ID_VAL              0x7000000UL
> -#define PCH_PIC_INT_ID_VER              0x1UL
> -
> -#define PCH_PIC_INT_ID_LO               0x00
> -#define PCH_PIC_INT_ID_HI               0x04
> -#define PCH_PIC_INT_MASK_LO             0x20
> -#define PCH_PIC_INT_MASK_HI             0x24
> -#define PCH_PIC_HTMSI_EN_LO             0x40
> -#define PCH_PIC_HTMSI_EN_HI             0x44
> -#define PCH_PIC_INT_EDGE_LO             0x60
> -#define PCH_PIC_INT_EDGE_HI             0x64
> -#define PCH_PIC_INT_CLEAR_LO            0x80
> -#define PCH_PIC_INT_CLEAR_HI            0x84
> -#define PCH_PIC_AUTO_CTRL0_LO           0xc0
> -#define PCH_PIC_AUTO_CTRL0_HI           0xc4
> -#define PCH_PIC_AUTO_CTRL1_LO           0xe0
> -#define PCH_PIC_AUTO_CTRL1_HI           0xe4
> -#define PCH_PIC_ROUTE_ENTRY_OFFSET      0x100
> -#define PCH_PIC_ROUTE_ENTRY_END         0x13f
> -#define PCH_PIC_HTMSI_VEC_OFFSET        0x200
> -#define PCH_PIC_HTMSI_VEC_END           0x23f
> -#define PCH_PIC_INT_STATUS_LO           0x3a0
> -#define PCH_PIC_INT_STATUS_HI           0x3a4
> -#define PCH_PIC_INT_POL_LO              0x3e0
> -#define PCH_PIC_INT_POL_HI              0x3e4
> -
> -#define STATUS_LO_START                 0
> -#define STATUS_HI_START                 0x4
> -#define POL_LO_START                    0x40
> -#define POL_HI_START                    0x44
>   struct LoongArchPCHPIC {
>       SysBusDevice parent_obj;
>       qemu_irq parent_irq[64];
> @@ -67,3 +41,5 @@ struct LoongArchPCHPIC {
>       MemoryRegion iomem8;
>       unsigned int irq_num;
>   };
> +
> +#endif /* HW_LOONGARCH_PCH_PIC_H */
Re: [PATCH 3/5] include: Add loongarch_pic_common header file
Posted by maobibo 2 months, 1 week ago

On 2024/9/14 上午1:19, Philippe Mathieu-Daudé wrote:
> On 12/9/24 04:35, Bibo Mao wrote:
>> From: bibo mao <maobibo@loongson.cn>
>>
>> For header file hw/intc/loongarch_pch_pic.h, add common file
>> hw/intc/loongarch_pic_common.h and remove duplicated macro definition
>> in file loongarch_pch_pic.h
>>
>> Signed-off-by: Bibo Mao <maobibo@loongson.cn>
>> ---
>>   include/hw/intc/loongarch_pch_pic.h | 36 +++++------------------------
>>   1 file changed, 6 insertions(+), 30 deletions(-)
> 
> Maybe easier to review if moved as first patch, moving definitions
> to the new include/hw/intc/loongarch_pic_common.h
Good suggestion, will do in this way.
And thanks for you advice.

Regards
Bibo Mao
> 
>> diff --git a/include/hw/intc/loongarch_pch_pic.h 
>> b/include/hw/intc/loongarch_pch_pic.h
>> index d5437e88f2..c71ee59de2 100644
>> --- a/include/hw/intc/loongarch_pch_pic.h
>> +++ b/include/hw/intc/loongarch_pch_pic.h
>> @@ -5,42 +5,16 @@
>>    * Copyright (c) 2021 Loongson Technology Corporation Limited
>>    */
>> +#ifndef HW_LOONGARCH_PCH_PIC_H
>> +#define HW_LOONGARCH_PCH_PIC_H
>> +
>>   #include "hw/sysbus.h"
>> +#include "hw/intc/loongarch_pic_common.h"
>>   #define TYPE_LOONGARCH_PCH_PIC "loongarch_pch_pic"
>>   #define PCH_PIC_NAME(name) TYPE_LOONGARCH_PCH_PIC#name
>>   OBJECT_DECLARE_SIMPLE_TYPE(LoongArchPCHPIC, LOONGARCH_PCH_PIC)
>> -#define PCH_PIC_INT_ID_VAL              0x7000000UL
>> -#define PCH_PIC_INT_ID_VER              0x1UL
>> -
>> -#define PCH_PIC_INT_ID_LO               0x00
>> -#define PCH_PIC_INT_ID_HI               0x04
>> -#define PCH_PIC_INT_MASK_LO             0x20
>> -#define PCH_PIC_INT_MASK_HI             0x24
>> -#define PCH_PIC_HTMSI_EN_LO             0x40
>> -#define PCH_PIC_HTMSI_EN_HI             0x44
>> -#define PCH_PIC_INT_EDGE_LO             0x60
>> -#define PCH_PIC_INT_EDGE_HI             0x64
>> -#define PCH_PIC_INT_CLEAR_LO            0x80
>> -#define PCH_PIC_INT_CLEAR_HI            0x84
>> -#define PCH_PIC_AUTO_CTRL0_LO           0xc0
>> -#define PCH_PIC_AUTO_CTRL0_HI           0xc4
>> -#define PCH_PIC_AUTO_CTRL1_LO           0xe0
>> -#define PCH_PIC_AUTO_CTRL1_HI           0xe4
>> -#define PCH_PIC_ROUTE_ENTRY_OFFSET      0x100
>> -#define PCH_PIC_ROUTE_ENTRY_END         0x13f
>> -#define PCH_PIC_HTMSI_VEC_OFFSET        0x200
>> -#define PCH_PIC_HTMSI_VEC_END           0x23f
>> -#define PCH_PIC_INT_STATUS_LO           0x3a0
>> -#define PCH_PIC_INT_STATUS_HI           0x3a4
>> -#define PCH_PIC_INT_POL_LO              0x3e0
>> -#define PCH_PIC_INT_POL_HI              0x3e4
>> -
>> -#define STATUS_LO_START                 0
>> -#define STATUS_HI_START                 0x4
>> -#define POL_LO_START                    0x40
>> -#define POL_HI_START                    0x44
>>   struct LoongArchPCHPIC {
>>       SysBusDevice parent_obj;
>>       qemu_irq parent_irq[64];
>> @@ -67,3 +41,5 @@ struct LoongArchPCHPIC {
>>       MemoryRegion iomem8;
>>       unsigned int irq_num;
>>   };
>> +
>> +#endif /* HW_LOONGARCH_PCH_PIC_H */