[v4,0/4] Allow coreboot modules to autoload and enable cbmem in the arm64 defconfig

Message ID 20240212-coreboot-mod-defconfig-v4-0-d14172676f6d@collabora.com
Headers
Series Allow coreboot modules to autoload and enable cbmem in the arm64 defconfig |

Message

Nícolas F. R. A. Prado Feb. 12, 2024, 2:50 p.m. UTC
  This series adds the missing pieces to the coreboot bus and the module
alias generation to allow coreboot modules to be automatically loaded
when matching devices are detected.

The configs for cbmem coreboot entries are then enabled in the arm64
defconfig, as modules, to allow reading logs from coreboot on arm64
Chromebooks, which is useful for debugging the boot process.

Changes in v4:
- Added driver_data to device_id struct
- Link to v3: https://lore.kernel.org/r/20240117-coreboot-mod-defconfig-v3-0-049565a27bba@collabora.com

Changes in v3:
- Merged all "add to module device table" commits into a single commit
  which also changes the coreboot_driver struct to contain an id table
  and avoid unused variable warnings for the id tables.

Changes in v2:
- Added commits for vpd, memconsole and framebuffer drivers to add them
  to the module device table

---
Nícolas F. R. A. Prado (4):
      firmware: coreboot: Generate modalias uevent for devices
      firmware: coreboot: Generate aliases for coreboot modules
      firmware: coreboot: Replace tag with id table in driver struct
      arm64: defconfig: Enable support for cbmem entries in the coreboot table

 arch/arm64/configs/defconfig                   |  3 +++
 drivers/firmware/google/cbmem.c                |  8 +++++++-
 drivers/firmware/google/coreboot_table.c       | 20 +++++++++++++++++++-
 drivers/firmware/google/coreboot_table.h       |  3 ++-
 drivers/firmware/google/framebuffer-coreboot.c |  8 +++++++-
 drivers/firmware/google/memconsole-coreboot.c  |  8 +++++++-
 drivers/firmware/google/vpd.c                  |  8 +++++++-
 include/linux/mod_devicetable.h                | 10 ++++++++++
 scripts/mod/devicetable-offsets.c              |  3 +++
 scripts/mod/file2alias.c                       | 10 ++++++++++
 10 files changed, 75 insertions(+), 6 deletions(-)
---
base-commit: 0f067394dd3b2af3263339cf7183bdb6ee0ac1f8
change-id: 20240117-coreboot-mod-defconfig-826b01e242d9

Best regards,
  

Comments

Tzung-Bi Shih Feb. 15, 2024, 3:37 a.m. UTC | #1
On Mon, Feb 12, 2024 at 09:50:04AM -0500, Nícolas F. R. A. Prado wrote:
> This series adds the missing pieces to the coreboot bus and the module
> alias generation to allow coreboot modules to be automatically loaded
> when matching devices are detected.
> 
> The configs for cbmem coreboot entries are then enabled in the arm64
> defconfig, as modules, to allow reading logs from coreboot on arm64
> Chromebooks, which is useful for debugging the boot process.
> 
> [...]
> 
> ---
> Nícolas F. R. A. Prado (4):
>       firmware: coreboot: Generate modalias uevent for devices
>       firmware: coreboot: Generate aliases for coreboot modules
>       firmware: coreboot: Replace tag with id table in driver struct
>       arm64: defconfig: Enable support for cbmem entries in the coreboot table
> 
>  arch/arm64/configs/defconfig                   |  3 +++

Hi Catalin and Will,

Is it OK to you if I pick the 4th patch (which touches the above files) to
chrome-platform-firmware tree for the next merge window?

>  include/linux/mod_devicetable.h                | 10 ++++++++++
>  scripts/mod/devicetable-offsets.c              |  3 +++
>  scripts/mod/file2alias.c                       | 10 ++++++++++

Hi Masahiro,

Is it OK to you if I pick the 2nd patch (which touches the above files) to
chrome-platform-firmware tree for the next merge window?
  
Masahiro Yamada Feb. 15, 2024, 5:52 a.m. UTC | #2
On Thu, Feb 15, 2024 at 12:37 PM Tzung-Bi Shih <tzungbi@kernel.org> wrote:
>
> On Mon, Feb 12, 2024 at 09:50:04AM -0500, Nícolas F. R. A. Prado wrote:
> > This series adds the missing pieces to the coreboot bus and the module
> > alias generation to allow coreboot modules to be automatically loaded
> > when matching devices are detected.
> >
> > The configs for cbmem coreboot entries are then enabled in the arm64
> > defconfig, as modules, to allow reading logs from coreboot on arm64
> > Chromebooks, which is useful for debugging the boot process.
> >
> > [...]
> >
> > ---
> > Nícolas F. R. A. Prado (4):
> >       firmware: coreboot: Generate modalias uevent for devices
> >       firmware: coreboot: Generate aliases for coreboot modules
> >       firmware: coreboot: Replace tag with id table in driver struct
> >       arm64: defconfig: Enable support for cbmem entries in the coreboot table
> >
> >  arch/arm64/configs/defconfig                   |  3 +++
>
> Hi Catalin and Will,
>
> Is it OK to you if I pick the 4th patch (which touches the above files) to
> chrome-platform-firmware tree for the next merge window?
>
> >  include/linux/mod_devicetable.h                | 10 ++++++++++
> >  scripts/mod/devicetable-offsets.c              |  3 +++
> >  scripts/mod/file2alias.c                       | 10 ++++++++++
>
> Hi Masahiro,
>
> Is it OK to you if I pick the 2nd patch (which touches the above files) to
> chrome-platform-firmware tree for the next merge window?


Yes.


I gave Acked-by to 2/4 so it makes your life easier.
  
Tzung-Bi Shih Feb. 17, 2024, 12:58 a.m. UTC | #3
On Mon, Feb 12, 2024 at 09:50:04AM -0500, Nícolas F. R. A. Prado wrote:
> This series adds the missing pieces to the coreboot bus and the module
> alias generation to allow coreboot modules to be automatically loaded
> when matching devices are detected.
> 
> The configs for cbmem coreboot entries are then enabled in the arm64
> defconfig, as modules, to allow reading logs from coreboot on arm64
> Chromebooks, which is useful for debugging the boot process.
> 
> [...]

Applied, thanks!

[1/4] firmware: coreboot: Generate modalias uevent for devices
      commit: c2b28f6806d2a26a8d46c0f02d4852bf9904929d
[2/4] firmware: coreboot: Generate aliases for coreboot modules
      commit: f1cebae1dbf85f9de65c13a2d9f5cc3be7e51dc4
[3/4] firmware: coreboot: Replace tag with id table in driver struct
      commit: 8a0a62941a042612f7487f6c4ff291f9054ff214
  
Nícolas F. R. A. Prado March 4, 2024, 1:56 p.m. UTC | #4
On Mon, Feb 12, 2024 at 09:50:04AM -0500, Nícolas F. R. A. Prado wrote:
> This series adds the missing pieces to the coreboot bus and the module
> alias generation to allow coreboot modules to be automatically loaded
> when matching devices are detected.
> 
> The configs for cbmem coreboot entries are then enabled in the arm64
> defconfig, as modules, to allow reading logs from coreboot on arm64
> Chromebooks, which is useful for debugging the boot process.
> 
> Changes in v4:
> - Added driver_data to device_id struct
> - Link to v3: https://lore.kernel.org/r/20240117-coreboot-mod-defconfig-v3-0-049565a27bba@collabora.com
> 
> Changes in v3:
> - Merged all "add to module device table" commits into a single commit
>   which also changes the coreboot_driver struct to contain an id table
>   and avoid unused variable warnings for the id tables.
> 
> Changes in v2:
> - Added commits for vpd, memconsole and framebuffer drivers to add them
>   to the module device table
> 
> ---
> Nícolas F. R. A. Prado (4):
>       firmware: coreboot: Generate modalias uevent for devices
>       firmware: coreboot: Generate aliases for coreboot modules
>       firmware: coreboot: Replace tag with id table in driver struct
>       arm64: defconfig: Enable support for cbmem entries in the coreboot table

Hi Arnd,

is it ok for Tzung-Bi to merge this last patch for the defconfig through the
chrome-platform-firmware tree?

Thanks,
Nícolas

> 
>  arch/arm64/configs/defconfig                   |  3 +++
>  drivers/firmware/google/cbmem.c                |  8 +++++++-
>  drivers/firmware/google/coreboot_table.c       | 20 +++++++++++++++++++-
>  drivers/firmware/google/coreboot_table.h       |  3 ++-
>  drivers/firmware/google/framebuffer-coreboot.c |  8 +++++++-
>  drivers/firmware/google/memconsole-coreboot.c  |  8 +++++++-
>  drivers/firmware/google/vpd.c                  |  8 +++++++-
>  include/linux/mod_devicetable.h                | 10 ++++++++++
>  scripts/mod/devicetable-offsets.c              |  3 +++
>  scripts/mod/file2alias.c                       | 10 ++++++++++
>  10 files changed, 75 insertions(+), 6 deletions(-)
> ---
> base-commit: 0f067394dd3b2af3263339cf7183bdb6ee0ac1f8
> change-id: 20240117-coreboot-mod-defconfig-826b01e242d9
> 
> Best regards,
> -- 
> Nícolas F. R. A. Prado <nfraprado@collabora.com>
>
  
Arnd Bergmann March 4, 2024, 2:02 p.m. UTC | #5
On Mon, Mar 4, 2024, at 14:56, Nícolas F. R. A. Prado wrote:
> On Mon, Feb 12, 2024 at 09:50:04AM -0500, Nícolas F. R. A. Prado wrote:
>> Nícolas F. R. A. Prado (4):
>>       firmware: coreboot: Generate modalias uevent for devices
>>       firmware: coreboot: Generate aliases for coreboot modules
>>       firmware: coreboot: Replace tag with id table in driver struct
>>       arm64: defconfig: Enable support for cbmem entries in the coreboot table
>
> is it ok for Tzung-Bi to merge this last patch for the defconfig through the
> chrome-platform-firmware tree?

I would much prefer to see this patch get sent to soc@kernel.org
so I can pick it up through the soc tree. I'm usually not worried
about bisection issues with defconfig changes since most users
have their own .config anyway, and in this case I don't see
any strict dependency and would just merge the patch directly.

     Arnd