From: Shaoqin Huang <shahuang@redhat.com>
To: Nikos Nikoleris <nikos.nikoleris@arm.com>,
kvm@vger.kernel.org, kvmarm@lists.linux.dev,
andrew.jones@linux.dev
Cc: pbonzini@redhat.com, alexandru.elisei@arm.com, ricarkol@google.com
Subject: Re: [PATCH v4 04/30] lib: Apply Lindent to acpi.{c,h}
Date: Thu, 9 Mar 2023 15:11:56 +0800 [thread overview]
Message-ID: <5a8887b2-a276-b087-964e-fa3f98826185@redhat.com> (raw)
In-Reply-To: <20230213101759.2577077-5-nikos.nikoleris@arm.com>
Hi Nikos,
On 2/13/23 18:17, Nikos Nikoleris wrote:
> The change was done by modifying Linux's scripts/Lindent to use 100
> columns instead of 80.
>
> Signed-off-by: Nikos Nikoleris <nikos.nikoleris@arm.com>
> ---
> lib/acpi.c | 70 ++++++++++++------------
> lib/acpi.h | 157 ++++++++++++++++++++++++++---------------------------
> 2 files changed, 111 insertions(+), 116 deletions(-)
>
> diff --git a/lib/acpi.c b/lib/acpi.c
> index de275caf..836156a1 100644
> --- a/lib/acpi.c
> +++ b/lib/acpi.c
> @@ -36,47 +36,45 @@ static struct rsdp_descriptor *get_rsdp(void)
> }
> #endif /* CONFIG_EFI */
>
> -void* find_acpi_table_addr(u32 sig)
> +void *find_acpi_table_addr(u32 sig)
> {
> - struct rsdp_descriptor *rsdp;
> - struct rsdt_descriptor_rev1 *rsdt;
> - void *end;
> - int i;
> + struct rsdp_descriptor *rsdp;
> + struct rsdt_descriptor_rev1 *rsdt;
> + void *end;
> + int i;
>
> - /* FACS is special... */
> - if (sig == FACS_SIGNATURE) {
> - struct fadt_descriptor_rev1 *fadt;
> - fadt = find_acpi_table_addr(FACP_SIGNATURE);
> - if (!fadt) {
> - return NULL;
> - }
> - return (void*)(ulong)fadt->firmware_ctrl;
> - }
> + /* FACS is special... */
> + if (sig == FACS_SIGNATURE) {
> + struct fadt_descriptor_rev1 *fadt;
> + fadt = find_acpi_table_addr(FACP_SIGNATURE);
> + if (!fadt)
> + return NULL;
>
> - rsdp = get_rsdp();
> - if (rsdp == NULL) {
> - printf("Can't find RSDP\n");
> - return 0;
> - }
> + return (void *)(ulong) fadt->firmware_ctrl;
> + }
>
> - if (sig == RSDP_SIGNATURE) {
> - return rsdp;
> - }
> + rsdp = get_rsdp();
> + if (rsdp == NULL) {
> + printf("Can't find RSDP\n");
> + return NULL;
> + }
>
> - rsdt = (void*)(ulong)rsdp->rsdt_physical_address;
> - if (!rsdt || rsdt->signature != RSDT_SIGNATURE)
> - return 0;
> + if (sig == RSDP_SIGNATURE)
> + return rsdp;
>
> - if (sig == RSDT_SIGNATURE) {
> - return rsdt;
> - }
> + rsdt = (void *)(ulong) rsdp->rsdt_physical_address;
> + if (!rsdt || rsdt->signature != RSDT_SIGNATURE)
> + return NULL;
> +
> + if (sig == RSDT_SIGNATURE)
> + return rsdt;
>
> - end = (void*)rsdt + rsdt->length;
> - for (i=0; (void*)&rsdt->table_offset_entry[i] < end; i++) {
> - struct acpi_table *t = (void*)(ulong)rsdt->table_offset_entry[i];
> - if (t && t->signature == sig) {
> - return t;
> - }
> - }
> - return NULL;
> + end = (void *)rsdt + rsdt->length;
> + for (i = 0; (void *)&rsdt->table_offset_entry[i] < end; i++) {
> + struct acpi_table *t = (void *)(ulong) rsdt->table_offset_entry[i];
> + if (t && t->signature == sig) {
> + return t;
> + }
> + }
> + return NULL;
> }
> diff --git a/lib/acpi.h b/lib/acpi.h
> index 1e89840c..b67bbe19 100644
> --- a/lib/acpi.h
> +++ b/lib/acpi.h
> @@ -3,7 +3,7 @@
>
> #include "libcflat.h"
>
> -#define ACPI_SIGNATURE(c1, c2, c3, c4) \
> +#define ACPI_SIGNATURE(c1, c2, c3, c4) \
> ((c1) | ((c2) << 8) | ((c3) << 16) | ((c4) << 24))
>
> #define RSDP_SIGNATURE ACPI_SIGNATURE('R','S','D','P')
> @@ -11,102 +11,99 @@
> #define FACP_SIGNATURE ACPI_SIGNATURE('F','A','C','P')
> #define FACS_SIGNATURE ACPI_SIGNATURE('F','A','C','S')
>
> -
> -#define ACPI_SIGNATURE_8BYTE(c1, c2, c3, c4, c5, c6, c7, c8) \
> - ((uint64_t)(ACPI_SIGNATURE(c1, c2, c3, c4))) | \
> +#define ACPI_SIGNATURE_8BYTE(c1, c2, c3, c4, c5, c6, c7, c8) \
> + ((uint64_t)(ACPI_SIGNATURE(c1, c2, c3, c4))) | \
> ((uint64_t)(ACPI_SIGNATURE(c5, c6, c7, c8)) << 32)
>
> #define RSDP_SIGNATURE_8BYTE (ACPI_SIGNATURE_8BYTE('R', 'S', 'D', ' ', 'P', 'T', 'R', ' '))
>
> -struct rsdp_descriptor { /* Root System Descriptor Pointer */
> - u64 signature; /* ACPI signature, contains "RSD PTR " */
> - u8 checksum; /* To make sum of struct == 0 */
> - u8 oem_id [6]; /* OEM identification */
> - u8 revision; /* Must be 0 for 1.0, 2 for 2.0 */
> - u32 rsdt_physical_address; /* 32-bit physical address of RSDT */
> - u32 length; /* XSDT Length in bytes including hdr */
> - u64 xsdt_physical_address; /* 64-bit physical address of XSDT */
> - u8 extended_checksum; /* Checksum of entire table */
> - u8 reserved [3]; /* Reserved field must be 0 */
> +struct rsdp_descriptor { /* Root System Descriptor Pointer */
> + u64 signature; /* ACPI signature, contains "RSD PTR " */
> + u8 checksum; /* To make sum of struct == 0 */
> + u8 oem_id[6]; /* OEM identification */
> + u8 revision; /* Must be 0 for 1.0, 2 for 2.0 */
> + u32 rsdt_physical_address; /* 32-bit physical address of RSDT */
> + u32 length; /* XSDT Length in bytes including hdr */
> + u64 xsdt_physical_address; /* 64-bit physical address of XSDT */
> + u8 extended_checksum; /* Checksum of entire table */
> + u8 reserved[3]; /* Reserved field must be 0 */
> };
>
> -#define ACPI_TABLE_HEADER_DEF /* ACPI common table header */ \
> - u32 signature; /* ACPI signature (4 ASCII characters) */ \
> - u32 length; /* Length of table, in bytes, including header */ \
> - u8 revision; /* ACPI Specification minor version # */ \
> - u8 checksum; /* To make sum of entire table == 0 */ \
> - u8 oem_id [6]; /* OEM identification */ \
> - u8 oem_table_id [8]; /* OEM table identification */ \
> - u32 oem_revision; /* OEM revision number */ \
> - u8 asl_compiler_id [4]; /* ASL compiler vendor ID */ \
> - u32 asl_compiler_revision; /* ASL compiler revision number */
> +#define ACPI_TABLE_HEADER_DEF /* ACPI common table header */ \
> + u32 signature; /* ACPI signature (4 ASCII characters) */ \
> + u32 length; /* Length of table, in bytes, including header */ \
> + u8 revision; /* ACPI Specification minor version # */ \
> + u8 checksum; /* To make sum of entire table == 0 */ \
> + u8 oem_id [6]; /* OEM identification */ \
^
> + u8 oem_table_id [8]; /* OEM table identification */ \
^
> + u32 oem_revision; /* OEM revision number */ \
> + u8 asl_compiler_id [4]; /* ASL compiler vendor ID */ \
^
nit: These space should also be deleted.
Thanks,
Shaoqin
> + u32 asl_compiler_revision; /* ASL compiler revision number */
>
> struct acpi_table {
> - ACPI_TABLE_HEADER_DEF
> - char data[0];
> + ACPI_TABLE_HEADER_DEF
> + char data[0];
> };
>
> struct rsdt_descriptor_rev1 {
> - ACPI_TABLE_HEADER_DEF
> - u32 table_offset_entry[0];
> + ACPI_TABLE_HEADER_DEF
> + u32 table_offset_entry[1];
> };
>
> -struct fadt_descriptor_rev1
> -{
> - ACPI_TABLE_HEADER_DEF /* ACPI common table header */
> - u32 firmware_ctrl; /* Physical address of FACS */
> - u32 dsdt; /* Physical address of DSDT */
> - u8 model; /* System Interrupt Model */
> - u8 reserved1; /* Reserved */
> - u16 sci_int; /* System vector of SCI interrupt */
> - u32 smi_cmd; /* Port address of SMI command port */
> - u8 acpi_enable; /* Value to write to smi_cmd to enable ACPI */
> - u8 acpi_disable; /* Value to write to smi_cmd to disable ACPI */
> - u8 S4bios_req; /* Value to write to SMI CMD to enter S4BIOS state */
> - u8 reserved2; /* Reserved - must be zero */
> - u32 pm1a_evt_blk; /* Port address of Power Mgt 1a acpi_event Reg Blk */
> - u32 pm1b_evt_blk; /* Port address of Power Mgt 1b acpi_event Reg Blk */
> - u32 pm1a_cnt_blk; /* Port address of Power Mgt 1a Control Reg Blk */
> - u32 pm1b_cnt_blk; /* Port address of Power Mgt 1b Control Reg Blk */
> - u32 pm2_cnt_blk; /* Port address of Power Mgt 2 Control Reg Blk */
> - u32 pm_tmr_blk; /* Port address of Power Mgt Timer Ctrl Reg Blk */
> - u32 gpe0_blk; /* Port addr of General Purpose acpi_event 0 Reg Blk */
> - u32 gpe1_blk; /* Port addr of General Purpose acpi_event 1 Reg Blk */
> - u8 pm1_evt_len; /* Byte length of ports at pm1_x_evt_blk */
> - u8 pm1_cnt_len; /* Byte length of ports at pm1_x_cnt_blk */
> - u8 pm2_cnt_len; /* Byte Length of ports at pm2_cnt_blk */
> - u8 pm_tmr_len; /* Byte Length of ports at pm_tm_blk */
> - u8 gpe0_blk_len; /* Byte Length of ports at gpe0_blk */
> - u8 gpe1_blk_len; /* Byte Length of ports at gpe1_blk */
> - u8 gpe1_base; /* Offset in gpe model where gpe1 events start */
> - u8 reserved3; /* Reserved */
> - u16 plvl2_lat; /* Worst case HW latency to enter/exit C2 state */
> - u16 plvl3_lat; /* Worst case HW latency to enter/exit C3 state */
> - u16 flush_size; /* Size of area read to flush caches */
> - u16 flush_stride; /* Stride used in flushing caches */
> - u8 duty_offset; /* Bit location of duty cycle field in p_cnt reg */
> - u8 duty_width; /* Bit width of duty cycle field in p_cnt reg */
> - u8 day_alrm; /* Index to day-of-month alarm in RTC CMOS RAM */
> - u8 mon_alrm; /* Index to month-of-year alarm in RTC CMOS RAM */
> - u8 century; /* Index to century in RTC CMOS RAM */
> - u8 reserved4; /* Reserved */
> - u8 reserved4a; /* Reserved */
> - u8 reserved4b; /* Reserved */
> +struct fadt_descriptor_rev1 {
> + ACPI_TABLE_HEADER_DEF /* ACPI common table header */
> + u32 firmware_ctrl; /* Physical address of FACS */
> + u32 dsdt; /* Physical address of DSDT */
> + u8 model; /* System Interrupt Model */
> + u8 reserved1; /* Reserved */
> + u16 sci_int; /* System vector of SCI interrupt */
> + u32 smi_cmd; /* Port address of SMI command port */
> + u8 acpi_enable; /* Value to write to smi_cmd to enable ACPI */
> + u8 acpi_disable; /* Value to write to smi_cmd to disable ACPI */
> + u8 S4bios_req; /* Value to write to SMI CMD to enter S4BIOS state */
> + u8 reserved2; /* Reserved - must be zero */
> + u32 pm1a_evt_blk; /* Port address of Power Mgt 1a acpi_event Reg Blk */
> + u32 pm1b_evt_blk; /* Port address of Power Mgt 1b acpi_event Reg Blk */
> + u32 pm1a_cnt_blk; /* Port address of Power Mgt 1a Control Reg Blk */
> + u32 pm1b_cnt_blk; /* Port address of Power Mgt 1b Control Reg Blk */
> + u32 pm2_cnt_blk; /* Port address of Power Mgt 2 Control Reg Blk */
> + u32 pm_tmr_blk; /* Port address of Power Mgt Timer Ctrl Reg Blk */
> + u32 gpe0_blk; /* Port addr of General Purpose acpi_event 0 Reg Blk */
> + u32 gpe1_blk; /* Port addr of General Purpose acpi_event 1 Reg Blk */
> + u8 pm1_evt_len; /* Byte length of ports at pm1_x_evt_blk */
> + u8 pm1_cnt_len; /* Byte length of ports at pm1_x_cnt_blk */
> + u8 pm2_cnt_len; /* Byte Length of ports at pm2_cnt_blk */
> + u8 pm_tmr_len; /* Byte Length of ports at pm_tm_blk */
> + u8 gpe0_blk_len; /* Byte Length of ports at gpe0_blk */
> + u8 gpe1_blk_len; /* Byte Length of ports at gpe1_blk */
> + u8 gpe1_base; /* Offset in gpe model where gpe1 events start */
> + u8 reserved3; /* Reserved */
> + u16 plvl2_lat; /* Worst case HW latency to enter/exit C2 state */
> + u16 plvl3_lat; /* Worst case HW latency to enter/exit C3 state */
> + u16 flush_size; /* Size of area read to flush caches */
> + u16 flush_stride; /* Stride used in flushing caches */
> + u8 duty_offset; /* Bit location of duty cycle field in p_cnt reg */
> + u8 duty_width; /* Bit width of duty cycle field in p_cnt reg */
> + u8 day_alrm; /* Index to day-of-month alarm in RTC CMOS RAM */
> + u8 mon_alrm; /* Index to month-of-year alarm in RTC CMOS RAM */
> + u8 century; /* Index to century in RTC CMOS RAM */
> + u8 reserved4; /* Reserved */
> + u8 reserved4a; /* Reserved */
> + u8 reserved4b; /* Reserved */
> };
>
> -struct facs_descriptor_rev1
> -{
> - u32 signature; /* ACPI Signature */
> - u32 length; /* Length of structure, in bytes */
> - u32 hardware_signature; /* Hardware configuration signature */
> - u32 firmware_waking_vector; /* ACPI OS waking vector */
> - u32 global_lock; /* Global Lock */
> - u32 S4bios_f : 1; /* Indicates if S4BIOS support is present */
> - u32 reserved1 : 31; /* Must be 0 */
> - u8 reserved3 [40]; /* Reserved - must be zero */
> +struct facs_descriptor_rev1 {
> + u32 signature; /* ACPI Signature */
> + u32 length; /* Length of structure, in bytes */
> + u32 hardware_signature; /* Hardware configuration signature */
> + u32 firmware_waking_vector; /* ACPI OS waking vector */
> + u32 global_lock; /* Global Lock */
> + u32 S4bios_f:1; /* Indicates if S4BIOS support is present */
> + u32 reserved1:31; /* Must be 0 */
> + u8 reserved3[40]; /* Reserved - must be zero */
> };
>
> void set_efi_rsdp(struct rsdp_descriptor *rsdp);
> -void* find_acpi_table_addr(u32 sig);
> +void *find_acpi_table_addr(u32 sig);
>
> #endif
next prev parent reply other threads:[~2023-03-09 7:13 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-13 10:17 [PATCH v4 00/30] EFI and ACPI support for arm64 Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 01/30] lib: Move acpi header and implementation to lib Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 02/30] x86: Move x86_64-specific EFI CFLAGS to x86_64 Makefile Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 03/30] arm/Makefile.common: Compile lib/acpi.c if CONFIG_EFI=y Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 04/30] lib: Apply Lindent to acpi.{c,h} Nikos Nikoleris
2023-03-09 7:11 ` Shaoqin Huang [this message]
2023-03-21 17:32 ` Andrew Jones
2023-03-22 10:05 ` Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 05/30] lib: Fix style for acpi.{c,h} Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 06/30] lib/acpi: Convert table names to Linux style Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 07/30] x86: Avoid references to fields of ACPI tables Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 08/30] lib/acpi: Ensure all struct definition for ACPI tables are packed Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 09/30] lib/acpi: Add support for the XSDT table Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 10/30] lib/acpi: Extend the definition of the FADT table Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 11/30] devicetree: Check that fdt is not NULL in dt_available() Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 12/30] arm64: Add support for setting up the PSCI conduit through ACPI Nikos Nikoleris
2023-03-21 17:31 ` Andrew Jones
2023-02-13 10:17 ` [PATCH v4 13/30] arm64: Add support for discovering the UART " Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 14/30] arm64: Add support for timer initialization " Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 15/30] arm64: Add support for cpu " Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 16/30] arm64: Add support for gic " Nikos Nikoleris
2023-03-30 6:46 ` Shaoqin Huang
2023-02-13 10:17 ` [PATCH v4 17/30] lib/printf: Support for precision modifier in printf Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 18/30] lib/printf: Add support for printing wide strings Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 19/30] lib/efi: Add support for getting the cmdline Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 20/30] arm/arm64: Rename etext to _etext Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 21/30] lib: Avoid ms_abi for calls related to EFI on arm64 Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 22/30] arm64: Add a new type of memory type flag MR_F_RESERVED Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 23/30] arm64: Add a setup sequence for systems that boot through EFI Nikos Nikoleris
2023-04-25 7:04 ` Shaoqin Huang
2023-04-25 9:09 ` Nikos Nikoleris
2023-04-25 18:31 ` Andrew Jones
2023-02-13 10:17 ` [PATCH v4 24/30] arm64: Copy code from GNU-EFI Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 25/30] arm64: Change GNU-EFI imported code to use defined types Nikos Nikoleris
2023-03-30 6:49 ` Shaoqin Huang
2023-02-13 10:17 ` [PATCH v4 26/30] arm64: Use code from the gnu-efi when booting with EFI Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 27/30] lib: Avoid external dependency in libelf Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 28/30] arm64: Add support for efi in Makefile Nikos Nikoleris
2023-03-21 18:21 ` Andrew Jones
2023-02-13 10:17 ` [PATCH v4 29/30] lib: arm: Print test exit status Nikos Nikoleris
2023-02-13 10:17 ` [PATCH v4 30/30] arm64: Add an efi/run script Nikos Nikoleris
2023-03-21 18:41 ` Andrew Jones
2023-03-22 10:02 ` Nikos Nikoleris
2023-03-22 11:24 ` Andrew Jones
2023-03-22 11:57 ` Nikos Nikoleris
2023-03-22 12:32 ` Andrew Jones
2023-03-22 19:09 ` Nikos Nikoleris
2023-03-23 17:52 ` Andrew Jones
2023-03-28 9:03 ` Alexandru Elisei
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=5a8887b2-a276-b087-964e-fa3f98826185@redhat.com \
--to=shahuang@redhat.com \
--cc=alexandru.elisei@arm.com \
--cc=andrew.jones@linux.dev \
--cc=kvm@vger.kernel.org \
--cc=kvmarm@lists.linux.dev \
--cc=nikos.nikoleris@arm.com \
--cc=pbonzini@redhat.com \
--cc=ricarkol@google.com \
/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;
as well as URLs for NNTP newsgroup(s).