All of lore.kernel.org
 help / color / mirror / Atom feed
From: Simon Glass <sjg@chromium.org>
To: u-boot@lists.denx.de
Subject: [PATCH v4 00/31] dm: Add programmatic generation of ACPI tables (part A)
Date: Tue,  7 Apr 2020 21:00:36 -0600	[thread overview]
Message-ID: <20200408030107.168474-1-sjg@chromium.org> (raw)

This is split from the original series in an attempt to get things applied
in chunks.

The first 20 or so patches here have been reviewed and the changes here
incorporate those comments.

Changes in v4:
- Add a new patch with some string tests
- Add a new patch to convert a string to upper case
- Fix indentation of unused
- Calculate the padding
- Put 'interrupts-extended' property on one line
- Rename acpi-probed to linux,probed
- Note that linux,probed is an out-of-tree feature
- Move ACPI makefile line outside the ifdef CONFIG_SPL_BUILD
- Add a comment about the MADT table version
- Add SPCR
- Update comment to include tables defined or reserved by ACPI
- Separate out the log newline
- Update comment in acpi_inc_align() to show the alignment
- Put back cast on table_compute_checksum()
- Rename list_fact() to list_fadt()
- Add a comment to dump_hdr()

Changes in v3:
Drop acpi,name in example
- Fix indenting error mentioned by Andy Shevchenko
- Fix stray #endif
- Drop 'Intel' from 'Intel ACPI'
- Reword commit message to drop the bit about ACPI being complicated
- Compute ACPI_NAME_MAX from ACPI_NAME_LEN
- Rename acpi_return_name() to acpi_copy_name()
- Use strncpy() instead of strcpy() in acpi_copy_name()
- Split out hid-over-i2c into its own patch
- Drop mention of PRIC
- Rename acpi,desc to acpi,ddn
- Correct description of acpi,probed
- Drop hid-descr-addr
- Just add the device.txt binding file in this patch
- Change the example to ELAN
- Add a pointer to information about acpi,compatible
- Add new patch to move acpi_s3.h to include/acpi/
- Update commit message to say that we move most of its contents
- Move acpi_table.h to include/acpi
- Add forward declarations for the functions
- Fix file comment for acpi_table.c
- Fix a few typos
- Make use of BIT()
- Fix DMA_ typo
- Add missing error check in acpi_create_dmar()
- Drop duplicate assert
- Drop ASL_REVISION
- Add new patch to add hexdump.h to the unit test header
- Rename acpi_align_large() to acpi_align64()
- Fix 'RSDP' typo
- Fix 'XDST' typo
- Move acpi_align_large() out of dm_test_acpi_setup_base_tables()
- Beef up the comment explaining how the unaligned address is used

Changes in v2:
- Don't bracket the definitions with DM_SPI
- Add trailing commas to enum
- Drop the other comment change since it is already applied
- Drop the Chrome OS pieces
- Rename the 'coreboot' console to 'U-Boot'
- Move LOGC_ACPI definition to this patch
- Fix definition of HID
- Infer hid-over-i2c CID value
- Add the hid-over-i2c binding document
- Add in the acpi_table.h header file to this patch
- Move the sandbox acpi_table.h header file to an earlier patch
- Use #defines for MADT and MCFG version numbers
- Drop two unnecessary __packed
- Move __packed to after struct
- Drop definition of ACPI_TABLE_CREATOR
- Make _acpi_write_dev_tables() static and switch argument order
- Generalise the ACPI function recursion with acpi_recurse_method()

Simon Glass (31):
  test: Add the beginnings of some string tests
  lib: Add a function to convert a string to upper case
  cpu: Support querying the address width
  spi: Add SPI mode enums
  tpm: cr50: Release locality on exit
  tpm: cr50: Add a comment for cr50_priv
  tpm: cr50: Use the correct GPIO binding
  tpm: Don't cleanup unless an error happens
  dm: pci: Allow disabling auto-config for a device
  x86: Correct wording of coreboot source code
  x86: apl: Move p2sb ofdata reading to the correct method
  pci: Adjust dm_pci_read_bar32() to return errors correctly
  x86: apl: Add Global NVS table header
  dm: core: Add basic ACPI support
  dts: Add a binding for hid-over-i2c
  acpi: Add a binding for ACPI settings in the device tree
  acpi: Add a simple sandbox test
  x86: Move acpi_s3.h to include/acpi/
  x86: Move acpi_table header to main include/ directory
  acpi: Add an __ACPI__ preprocessor symbol
  acpi: Add a central location for table version numbers
  acpi: Add support for DMAR
  test: Add hexdump.h to the unit test header
  acpi: Add a method to write tables for a device
  acpi: Convert part of acpi_table to use acpi_ctx
  x86: Allow devices to write ACPI tables
  acpi: Drop code for missing XSDT from acpi_write_rsdp()
  acpi: Move acpi_add_table() to generic code
  acpi: Put table-setup code in its own function
  acpi: Move the xsdt pointer to acpi_ctx
  acpi: Add an acpi command

 arch/sandbox/dts/test.dts                     |   8 +
 arch/sandbox/include/asm/acpi_table.h         |   9 +
 arch/sandbox/include/asm/global_data.h        |   1 +
 arch/x86/cpu/apollolake/cpu_spl.c             |   2 +-
 arch/x86/cpu/apollolake/fsp_s.c               |   2 +-
 arch/x86/cpu/apollolake/pmc.c                 |   2 +-
 arch/x86/cpu/baytrail/acpi.c                  |   6 +-
 arch/x86/cpu/coreboot/timestamp.c             |   4 +-
 arch/x86/cpu/cpu.c                            |   4 +-
 arch/x86/cpu/intel_common/p2sb.c              |  33 +-
 arch/x86/cpu/quark/acpi.c                     |   2 +-
 arch/x86/cpu/tangier/acpi.c                   |   4 +-
 arch/x86/cpu/wakeup.S                         |   2 +-
 arch/x86/dts/chromebook_coral.dts             |   2 +-
 arch/x86/include/asm/acpi_table.h             | 381 +-----------
 .../include/asm/arch-apollolake/global_nvs.h  |  36 ++
 .../x86/include/asm/arch-coreboot/timestamp.h |   4 +-
 arch/x86/include/asm/global_data.h            |   1 +
 arch/x86/include/asm/intel_pinctrl_defs.h     |   2 -
 arch/x86/lib/acpi.c                           |   2 +-
 arch/x86/lib/acpi_s3.c                        |   4 +-
 arch/x86/lib/acpi_table.c                     | 241 ++------
 arch/x86/lib/coreboot_table.c                 |   2 +-
 arch/x86/lib/fsp/fsp_common.c                 |   2 +-
 arch/x86/lib/fsp1/fsp_common.c                |   2 +-
 arch/x86/lib/fsp2/fsp_dram.c                  |   2 +-
 arch/x86/lib/tables.c                         |   2 +-
 arch/x86/lib/zimage.c                         |   2 +-
 cmd/Kconfig                                   |  14 +
 cmd/Makefile                                  |   1 +
 cmd/acpi.c                                    | 186 ++++++
 doc/device-tree-bindings/device.txt           |  36 ++
 .../gpio/intel,apl-gpio.txt                   |   2 +-
 .../input/hid-over-i2c.txt                    |  44 ++
 .../interrupt-controller/intel,acpi-gpe.txt   |   2 +-
 doc/device-tree-bindings/pci/x86-pci.txt      |  23 +
 drivers/core/Kconfig                          |   9 +
 drivers/core/Makefile                         |   1 +
 drivers/core/acpi.c                           |  95 +++
 drivers/cpu/cpu_sandbox.c                     |   1 +
 drivers/pci/pci-uclass.c                      |  11 +-
 drivers/pci/pci_rom.c                         |   4 +-
 drivers/power/acpi_pmc/acpi-pmc-uclass.c      |   2 +-
 drivers/sysreset/sysreset_x86.c               |   2 +-
 drivers/tpm/cr50_i2c.c                        |  24 +-
 drivers/tpm/tpm-uclass.c                      |  13 +-
 fs/fat/fat_write.c                            |  13 +-
 include/{ => acpi}/acpi_s3.h                  |   0
 include/acpi/acpi_table.h                     | 579 ++++++++++++++++++
 include/cpu.h                                 |   2 +
 include/dm/acpi.h                             | 114 ++++
 include/dm/device.h                           |   5 +
 include/dm/uclass-id.h                        |   1 +
 include/log.h                                 |   2 +
 include/spi.h                                 |  33 +
 include/test/suites.h                         |   1 +
 include/test/ut.h                             |   1 +
 include/vsprintf.h                            |  12 +
 lib/Makefile                                  |   1 +
 lib/acpi/Makefile                             |   4 +
 lib/acpi/acpi_table.c                         | 259 ++++++++
 lib/efi_loader/efi_acpi.c                     |   2 +-
 lib/strto.c                                   |   8 +
 scripts/Makefile.lib                          |   4 +-
 test/Makefile                                 |   1 +
 test/cmd_ut.c                                 |   5 +
 test/dm/Makefile                              |   1 +
 test/dm/acpi.c                                | 317 ++++++++++
 test/dm/cpu.c                                 |   1 +
 test/str_ut.c                                 | 105 ++++
 70 files changed, 2056 insertions(+), 649 deletions(-)
 create mode 100644 arch/sandbox/include/asm/acpi_table.h
 create mode 100644 arch/x86/include/asm/arch-apollolake/global_nvs.h
 create mode 100644 cmd/acpi.c
 create mode 100644 doc/device-tree-bindings/device.txt
 create mode 100644 doc/device-tree-bindings/input/hid-over-i2c.txt
 create mode 100644 drivers/core/acpi.c
 rename include/{ => acpi}/acpi_s3.h (100%)
 create mode 100644 include/acpi/acpi_table.h
 create mode 100644 include/dm/acpi.h
 create mode 100644 lib/acpi/Makefile
 create mode 100644 lib/acpi/acpi_table.c
 create mode 100644 test/dm/acpi.c
 create mode 100644 test/str_ut.c

-- 
2.26.0.292.g33ef6b2f38-goog

             reply	other threads:[~2020-04-08  3:00 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-08  3:00 Simon Glass [this message]
2020-04-08  3:00 ` [PATCH v4 01/31] test: Add the beginnings of some string tests Simon Glass
2020-04-08  3:00 ` [PATCH v4 02/31] lib: Add a function to convert a string to upper case Simon Glass
2020-04-08  4:18   ` Heinrich Schuchardt
2020-04-08  4:28     ` Heinrich Schuchardt
2020-04-08 14:20       ` Simon Glass
2020-04-09  5:32         ` Heinrich Schuchardt
2020-04-08  3:00 ` [PATCH v4 03/31] cpu: Support querying the address width Simon Glass
2020-04-08  3:00 ` [PATCH v4 04/31] spi: Add SPI mode enums Simon Glass
2020-04-08  3:00 ` [PATCH v4 05/31] tpm: cr50: Release locality on exit Simon Glass
2020-04-08  3:00 ` [PATCH v4 06/31] tpm: cr50: Add a comment for cr50_priv Simon Glass
2020-04-08  3:00 ` [PATCH v4 07/31] tpm: cr50: Use the correct GPIO binding Simon Glass
2020-04-08  3:00 ` [PATCH v4 08/31] tpm: Don't cleanup unless an error happens Simon Glass
2020-04-08  3:00 ` [PATCH v4 09/31] dm: pci: Allow disabling auto-config for a device Simon Glass
2020-04-08  3:00 ` [PATCH v4 10/31] x86: Correct wording of coreboot source code Simon Glass
2020-04-08  3:00 ` [PATCH v4 11/31] x86: apl: Move p2sb ofdata reading to the correct method Simon Glass
2020-04-08  3:00 ` [PATCH v4 12/31] pci: Adjust dm_pci_read_bar32() to return errors correctly Simon Glass
2020-04-08  3:00 ` [PATCH v4 13/31] x86: apl: Add Global NVS table header Simon Glass
2020-04-08 17:14   ` Andy Shevchenko
2020-04-08  3:00 ` [PATCH v4 14/31] dm: core: Add basic ACPI support Simon Glass
2020-04-08  3:00 ` [PATCH v4 15/31] dts: Add a binding for hid-over-i2c Simon Glass
2020-04-08  3:00 ` [PATCH v4 16/31] acpi: Add a binding for ACPI settings in the device tree Simon Glass
2020-04-08  3:00 ` [PATCH v4 17/31] acpi: Add a simple sandbox test Simon Glass
2020-04-08  3:00 ` [PATCH v4 18/31] x86: Move acpi_s3.h to include/acpi/ Simon Glass
2020-04-08  3:00 ` [PATCH v4 19/31] x86: Move acpi_table header to main include/ directory Simon Glass
2020-04-08  3:00 ` [PATCH v4 20/31] acpi: Add an __ACPI__ preprocessor symbol Simon Glass
2020-04-08  3:00 ` [PATCH v4 21/31] acpi: Add a central location for table version numbers Simon Glass
2020-04-08 17:20   ` Andy Shevchenko
2020-04-08 19:32     ` Simon Glass
2020-04-08  3:00 ` [PATCH v4 22/31] acpi: Add support for DMAR Simon Glass
2020-04-08  3:00 ` [PATCH v4 23/31] test: Add hexdump.h to the unit test header Simon Glass
2020-04-08  3:01 ` [PATCH v4 24/31] acpi: Add a method to write tables for a device Simon Glass
2020-04-08  3:01 ` [PATCH v4 25/31] acpi: Convert part of acpi_table to use acpi_ctx Simon Glass
2020-04-08  3:01 ` [PATCH v4 26/31] x86: Allow devices to write ACPI tables Simon Glass
2020-04-08  3:01 ` [PATCH v4 27/31] acpi: Drop code for missing XSDT from acpi_write_rsdp() Simon Glass
2020-04-08  3:01 ` [PATCH v4 28/31] acpi: Move acpi_add_table() to generic code Simon Glass
2020-04-08  3:01 ` [PATCH v4 29/31] acpi: Put table-setup code in its own function Simon Glass
2020-04-08  3:01 ` [PATCH v4 30/31] acpi: Move the xsdt pointer to acpi_ctx Simon Glass
2020-04-08  3:01 ` [PATCH v4 31/31] acpi: Add an acpi command Simon Glass
2020-04-08 17:02 ` [PATCH v4 00/31] dm: Add programmatic generation of ACPI tables (part A) Andy Shevchenko
2020-04-08 22:22   ` Simon Glass

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=20200408030107.168474-1-sjg@chromium.org \
    --to=sjg@chromium.org \
    --cc=u-boot@lists.denx.de \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.