[PATCH v3 0/6] x86: Updates to SMBIOS

Simon Glass sjg at chromium.org
Thu Oct 22 05:08:21 CEST 2020


At present there are a few Kconfig options which allow SMBIOS fields to
be specified at build time.

Not all fields are supported. Also, defining these at build-time is
limiting since a factory system cannot insert values for particular boards
or models without rebuilding U-Boot.

This series adds a way to set SMBIOS properties using the devicetree.
With this approach, more fields are supported and it is easy to update
values in the devicetree in the factory.

Changes in v3:
- Use a different binding with subnodes for each table type
- Add onto the sysinfo binding

Changes in v2:
- Move dm.h header file to avoid build error on qemu-arm
- Deal with boards that don't use of-control

Simon Glass (6):
  board: Rename uclass to sysinfo
  doc: Add a binding for sysinfo
  x86: Pass an ofnode into each SMBIOS function
  smbios: Allow properties to come from the device tree
  smbios: Add more properties
  smbios: Add documentation and devicetree binding

 arch/powerpc/dts/gdsys/gazerbeam-uboot.dtsi   |   2 +-
 arch/sandbox/dts/test.dts                     |   8 +-
 board/gdsys/common/cmd_ioloop.c               |  12 +-
 board/gdsys/mpc8308/gazerbeam.c               |  47 +++---
 board/google/chromebook_coral/coral.c         |   2 +-
 common/spl/spl_fit.c                          |  15 +-
 configs/chromebook_coral_defconfig            |   2 +-
 configs/gazerbeam_defconfig                   |   4 +-
 configs/sandbox64_defconfig                   |   8 +-
 configs/sandbox_defconfig                     |   8 +-
 configs/sandbox_flattree_defconfig            |   4 +-
 configs/sandbox_spl_defconfig                 |   4 +-
 doc/arch/x86.rst                              |   8 +
 .../gdsys,sysinfo_gazerbeam.txt}              |   8 +-
 doc/device-tree-bindings/sysinfo/smbios.txt   |  77 ++++++++++
 doc/device-tree-bindings/sysinfo/sysinfo.txt  |  18 +++
 drivers/Kconfig                               |   4 +-
 drivers/Makefile                              |   2 +-
 drivers/board/board-uclass.c                  |  71 ---------
 drivers/{board => sysinfo}/Kconfig            |  16 +-
 drivers/{board => sysinfo}/Makefile           |   6 +-
 drivers/{board => sysinfo}/gazerbeam.c        |  74 ++++-----
 drivers/{board => sysinfo}/gazerbeam.h        |   0
 drivers/{board => sysinfo}/sandbox.c          |  50 +++----
 drivers/{board => sysinfo}/sandbox.h          |   0
 drivers/sysinfo/sysinfo-uclass.c              |  71 +++++++++
 drivers/timer/mpc83xx_timer.c                 |  10 +-
 include/dm/uclass-id.h                        |   2 +-
 include/smbios.h                              |   5 +-
 include/{board.h => sysinfo.h}                |  80 +++++-----
 lib/smbios.c                                  | 140 ++++++++++++++----
 test/dm/Makefile                              |   2 +-
 test/dm/board.c                               |  59 --------
 test/dm/sysinfo.c                             |  59 ++++++++
 34 files changed, 533 insertions(+), 345 deletions(-)
 rename doc/device-tree-bindings/{board/gdsys,board_gazerbeam.txt => sysinfo/gdsys,sysinfo_gazerbeam.txt} (90%)
 create mode 100644 doc/device-tree-bindings/sysinfo/smbios.txt
 create mode 100644 doc/device-tree-bindings/sysinfo/sysinfo.txt
 delete mode 100644 drivers/board/board-uclass.c
 rename drivers/{board => sysinfo}/Kconfig (65%)
 rename drivers/{board => sysinfo}/Makefile (50%)
 rename drivers/{board => sysinfo}/gazerbeam.c (69%)
 rename drivers/{board => sysinfo}/gazerbeam.h (100%)
 rename drivers/{board => sysinfo}/sandbox.c (50%)
 rename drivers/{board => sysinfo}/sandbox.h (100%)
 create mode 100644 drivers/sysinfo/sysinfo-uclass.c
 rename include/{board.h => sysinfo.h} (65%)
 delete mode 100644 test/dm/board.c
 create mode 100644 test/dm/sysinfo.c

-- 
2.29.0.rc1.297.gfa9743e501-goog



More information about the U-Boot mailing list