Message ID | 168565502116.1098279.131831312990693128.stgit@djiang5-mobl3 |
---|---|
Headers | show |
Series | acpi: Add CDAT parsing support to ACPI tables code | expand |
On Thu, Jun 1, 2023 at 11:31 PM Dave Jiang <dave.jiang@intel.com> wrote: > > v3: > - Move common code to lib/fw_table.c > v2: > - Split out with CONFIG_ACPI_TABLES_LIB to be independent > - Fixed 0-day issues > - Change CDAT releveant names to prefix with cdat/CDAT instead of > acpi/ACPI. (Jonathan) > - Make table_header a union with cdat table header instead of > 'acpi_table_header'. (Jonathan) > - Removed ACPI_SIG_CDAT, already defined. > > Hi Rafael, > Please consider ack these patches. Dan can take these through the CXL tree. After > attempting to rename the cxl_ prefixes of functions and non ACPICA data structures > to something more common, it seems that significant amount of ACPI code would be > touched for the rename. For this series I left it alone in order to have the minimal > changes to ACPI code. > > I've broken out the "cxl: Add support for QTG ID retrieval for CXL subsystem" [1] > series in order to make it more manageable. Here's the first part of the ACPI > changes. These changes are added to allow reuse of ACPI tables code to parse > the CDAT tables. While CDAT is not part of ACPI, the table structures are similar > to ACPI layouts that the code can be reused with some small modifications. > > However, in order to be properly utilized by CXL users, the tables code needs > to be refactored out to be independent of ACPI. For example, a PPC BE host may > have CXL and does not have ACPI support. But it will have CDAT to read from > devices and switches. I have created CONFIG_ACPI_TABLES_LIB in order to allow > the common code to be independent. 0-day seems to be happy now for all the > different configs and archs. > > 1/4: Split out the common code from drivers/acpi/tables.c to lib/fw_table.c > 2/4: Add CDAT support > 3,4/4: These two are minor patches that has ACPICA impact. Has been merged into > the ACPICA git repo [3]. > > The whole series is at [2] for convenience. > > [1]: https://lore.kernel.org/linux-cxl/168193556660.1178687.15477509915255912089.stgit@djiang5-mobl3/T/#t > [2]: https://git.kernel.org/pub/scm/linux/kernel/git/djiang/linux.git/log/?h=cxl-qtg > [3]: https://github.com/acpica/acpica/pull/874 > > --- > > Dave Jiang (4): > acpi: Move common tables helper functions to common lib > lib/firmware_table: tables: Add CDAT table parsing support > acpi: fix misnamed define for CDAT DSMAS > acpi: Add defines for CDAT SSLBIS > > > drivers/acpi/Kconfig | 1 + > drivers/acpi/tables.c | 178 +---------------------------- > include/acpi/actbl1.h | 5 +- > include/linux/acpi.h | 22 +--- > include/linux/fw_table.h | 52 +++++++++ > lib/Kconfig | 3 + > lib/Makefile | 2 + > lib/fw_table.c | 236 +++++++++++++++++++++++++++++++++++++++ > 8 files changed, 302 insertions(+), 197 deletions(-) > create mode 100644 include/linux/fw_table.h > create mode 100644 lib/fw_table.c > > -- I think that this series can go in via the CXL tree and I'm expecting ACPICA to make a new release including the counterparts of patches [3-4/4] shortly. Please feel free to add Acled-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> to the series. Thanks!
On 2023/6/2 5:31, Dave Jiang wrote: > v3: > - Move common code to lib/fw_table.c > v2: > - Split out with CONFIG_ACPI_TABLES_LIB to be independent > - Fixed 0-day issues > - Change CDAT releveant names to prefix with cdat/CDAT instead of > acpi/ACPI. (Jonathan) > - Make table_header a union with cdat table header instead of > 'acpi_table_header'. (Jonathan) > - Removed ACPI_SIG_CDAT, already defined. > > Hi Rafael, > Please consider ack these patches. Dan can take these through the CXL tree. After > attempting to rename the cxl_ prefixes of functions and non ACPICA data structures > to something more common, it seems that significant amount of ACPI code would be > touched for the rename. For this series I left it alone in order to have the minimal > changes to ACPI code. > > I've broken out the "cxl: Add support for QTG ID retrieval for CXL subsystem" [1] > series in order to make it more manageable. Here's the first part of the ACPI > changes. These changes are added to allow reuse of ACPI tables code to parse > the CDAT tables. While CDAT is not part of ACPI, the table structures are similar > to ACPI layouts that the code can be reused with some small modifications. > > However, in order to be properly utilized by CXL users, the tables code needs > to be refactored out to be independent of ACPI. For example, a PPC BE host may > have CXL and does not have ACPI support. But it will have CDAT to read from > devices and switches. I have created CONFIG_ACPI_TABLES_LIB in order to allow > the common code to be independent. 0-day seems to be happy now for all the > different configs and archs. > > 1/4: Split out the common code from drivers/acpi/tables.c to lib/fw_table.c > 2/4: Add CDAT support > 3,4/4: These two are minor patches that has ACPICA impact. Has been merged into > the ACPICA git repo [3]. > > The whole series is at [2] for convenience. > > [1]: https://lore.kernel.org/linux-cxl/168193556660.1178687.15477509915255912089.stgit@djiang5-mobl3/T/#t > [2]: https://git.kernel.org/pub/scm/linux/kernel/git/djiang/linux.git/log/?h=cxl-qtg > [3]: https://github.com/acpica/acpica/pull/874 > > --- > > Dave Jiang (4): > acpi: Move common tables helper functions to common lib > lib/firmware_table: tables: Add CDAT table parsing support > acpi: fix misnamed define for CDAT DSMAS > acpi: Add defines for CDAT SSLBIS > > > drivers/acpi/Kconfig | 1 + > drivers/acpi/tables.c | 178 +---------------------------- > include/acpi/actbl1.h | 5 +- > include/linux/acpi.h | 22 +--- > include/linux/fw_table.h | 52 +++++++++ > lib/Kconfig | 3 + > lib/Makefile | 2 + > lib/fw_table.c | 236 +++++++++++++++++++++++++++++++++++++++ Who will maintain this file? since it's the core function of parsing ACPI tables, I would like the update of this file in the future will Cc ACPI mailing list. Thanks Hanjun
On 6/4/23 09:09, Rafael J. Wysocki wrote: > On Thu, Jun 1, 2023 at 11:31 PM Dave Jiang <dave.jiang@intel.com> wrote: >> v3: >> - Move common code to lib/fw_table.c >> v2: >> - Split out with CONFIG_ACPI_TABLES_LIB to be independent >> - Fixed 0-day issues >> - Change CDAT releveant names to prefix with cdat/CDAT instead of >> acpi/ACPI. (Jonathan) >> - Make table_header a union with cdat table header instead of >> 'acpi_table_header'. (Jonathan) >> - Removed ACPI_SIG_CDAT, already defined. >> >> Hi Rafael, >> Please consider ack these patches. Dan can take these through the CXL tree. After >> attempting to rename the cxl_ prefixes of functions and non ACPICA data structures >> to something more common, it seems that significant amount of ACPI code would be >> touched for the rename. For this series I left it alone in order to have the minimal >> changes to ACPI code. >> >> I've broken out the "cxl: Add support for QTG ID retrieval for CXL subsystem" [1] >> series in order to make it more manageable. Here's the first part of the ACPI >> changes. These changes are added to allow reuse of ACPI tables code to parse >> the CDAT tables. While CDAT is not part of ACPI, the table structures are similar >> to ACPI layouts that the code can be reused with some small modifications. >> >> However, in order to be properly utilized by CXL users, the tables code needs >> to be refactored out to be independent of ACPI. For example, a PPC BE host may >> have CXL and does not have ACPI support. But it will have CDAT to read from >> devices and switches. I have created CONFIG_ACPI_TABLES_LIB in order to allow >> the common code to be independent. 0-day seems to be happy now for all the >> different configs and archs. >> >> 1/4: Split out the common code from drivers/acpi/tables.c to lib/fw_table.c >> 2/4: Add CDAT support >> 3,4/4: These two are minor patches that has ACPICA impact. Has been merged into >> the ACPICA git repo [3]. >> >> The whole series is at [2] for convenience. >> >> [1]: https://lore.kernel.org/linux-cxl/168193556660.1178687.15477509915255912089.stgit@djiang5-mobl3/T/#t >> [2]: https://git.kernel.org/pub/scm/linux/kernel/git/djiang/linux.git/log/?h=cxl-qtg >> [3]: https://github.com/acpica/acpica/pull/874 >> >> --- >> >> Dave Jiang (4): >> acpi: Move common tables helper functions to common lib >> lib/firmware_table: tables: Add CDAT table parsing support >> acpi: fix misnamed define for CDAT DSMAS >> acpi: Add defines for CDAT SSLBIS >> >> >> drivers/acpi/Kconfig | 1 + >> drivers/acpi/tables.c | 178 +---------------------------- >> include/acpi/actbl1.h | 5 +- >> include/linux/acpi.h | 22 +--- >> include/linux/fw_table.h | 52 +++++++++ >> lib/Kconfig | 3 + >> lib/Makefile | 2 + >> lib/fw_table.c | 236 +++++++++++++++++++++++++++++++++++++++ >> 8 files changed, 302 insertions(+), 197 deletions(-) >> create mode 100644 include/linux/fw_table.h >> create mode 100644 lib/fw_table.c >> >> -- > I think that this series can go in via the CXL tree and I'm expecting > ACPICA to make a new release including the counterparts of patches > [3-4/4] shortly. > > Please feel free to add > > Acled-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> > > to the series. Thank you Rafael! > Thanks!
On 6/5/23 18:36, Hanjun Guo wrote: > On 2023/6/2 5:31, Dave Jiang wrote: >> v3: >> - Move common code to lib/fw_table.c >> v2: >> - Split out with CONFIG_ACPI_TABLES_LIB to be independent >> - Fixed 0-day issues >> - Change CDAT releveant names to prefix with cdat/CDAT instead of >> acpi/ACPI. (Jonathan) >> - Make table_header a union with cdat table header instead of >> 'acpi_table_header'. (Jonathan) >> - Removed ACPI_SIG_CDAT, already defined. >> >> Hi Rafael, >> Please consider ack these patches. Dan can take these through the CXL >> tree. After >> attempting to rename the cxl_ prefixes of functions and non ACPICA >> data structures >> to something more common, it seems that significant amount of ACPI >> code would be >> touched for the rename. For this series I left it alone in order to >> have the minimal >> changes to ACPI code. >> >> I've broken out the "cxl: Add support for QTG ID retrieval for CXL >> subsystem" [1] >> series in order to make it more manageable. Here's the first part of >> the ACPI >> changes. These changes are added to allow reuse of ACPI tables code >> to parse >> the CDAT tables. While CDAT is not part of ACPI, the table structures >> are similar >> to ACPI layouts that the code can be reused with some small >> modifications. >> >> However, in order to be properly utilized by CXL users, the tables >> code needs >> to be refactored out to be independent of ACPI. For example, a PPC BE >> host may >> have CXL and does not have ACPI support. But it will have CDAT to >> read from >> devices and switches. I have created CONFIG_ACPI_TABLES_LIB in order >> to allow >> the common code to be independent. 0-day seems to be happy now for >> all the >> different configs and archs. >> >> 1/4: Split out the common code from drivers/acpi/tables.c to >> lib/fw_table.c >> 2/4: Add CDAT support >> 3,4/4: These two are minor patches that has ACPICA impact. Has been >> merged into >> the ACPICA git repo [3]. >> >> The whole series is at [2] for convenience. >> >> [1]: >> https://lore.kernel.org/linux-cxl/168193556660.1178687.15477509915255912089.stgit@djiang5-mobl3/T/#t >> [2]: >> https://git.kernel.org/pub/scm/linux/kernel/git/djiang/linux.git/log/?h=cxl-qtg >> [3]: https://github.com/acpica/acpica/pull/874 >> >> --- >> >> Dave Jiang (4): >> acpi: Move common tables helper functions to common lib >> lib/firmware_table: tables: Add CDAT table parsing support >> acpi: fix misnamed define for CDAT DSMAS >> acpi: Add defines for CDAT SSLBIS >> >> >> drivers/acpi/Kconfig | 1 + >> drivers/acpi/tables.c | 178 +---------------------------- >> include/acpi/actbl1.h | 5 +- >> include/linux/acpi.h | 22 +--- >> include/linux/fw_table.h | 52 +++++++++ >> lib/Kconfig | 3 + >> lib/Makefile | 2 + >> lib/fw_table.c | 236 +++++++++++++++++++++++++++++++++++++++ > > Who will maintain this file? since it's the core function of parsing > ACPI tables, I would like the update of this file in the future will > Cc ACPI mailing list. I can add a MAINTAINERS entry. Since the original code is from ACPI, it can be maintained by ACPI subsystem. > > Thanks > Hanjun