Skip to content

Commit

Permalink
Merge tag 'tag-chrome-platform-firmware-for-v6.10' of git:https://git.kerne…
Browse files Browse the repository at this point in the history
…l.org/pub/scm/linux/kernel/git/chrome-platform/linux

Pull chrome platform firmware updates from Tzung-Bi Shih:

 - Set driver owner in the core registration so that coreboot drivers
   don't need to set it individually

* tag 'tag-chrome-platform-firmware-for-v6.10' of git:https://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux:
  firmware: google: cbmem: drop driver owner initialization
  firmware: coreboot: store owner from modules with coreboot_driver_register()
  • Loading branch information
torvalds committed May 13, 2024
2 parents 59729c8 + 7f20f21 commit a7c840b
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 4 deletions.
1 change: 0 additions & 1 deletion drivers/firmware/google/cbmem.c
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,6 @@ static struct coreboot_driver cbmem_entry_driver = {
.probe = cbmem_entry_probe,
.drv = {
.name = "cbmem",
.owner = THIS_MODULE,
.dev_groups = dev_groups,
},
.id_table = cbmem_ids,
Expand Down
6 changes: 4 additions & 2 deletions drivers/firmware/google/coreboot_table.c
Original file line number Diff line number Diff line change
Expand Up @@ -85,13 +85,15 @@ static void coreboot_device_release(struct device *dev)
kfree(device);
}

int coreboot_driver_register(struct coreboot_driver *driver)
int __coreboot_driver_register(struct coreboot_driver *driver,
struct module *owner)
{
driver->drv.bus = &coreboot_bus_type;
driver->drv.owner = owner;

return driver_register(&driver->drv);
}
EXPORT_SYMBOL(coreboot_driver_register);
EXPORT_SYMBOL(__coreboot_driver_register);

void coreboot_driver_unregister(struct coreboot_driver *driver)
{
Expand Down
6 changes: 5 additions & 1 deletion drivers/firmware/google/coreboot_table.h
Original file line number Diff line number Diff line change
Expand Up @@ -97,8 +97,12 @@ struct coreboot_driver {
const struct coreboot_device_id *id_table;
};

/* use a macro to avoid include chaining to get THIS_MODULE */
#define coreboot_driver_register(driver) \
__coreboot_driver_register(driver, THIS_MODULE)
/* Register a driver that uses the data from a coreboot table. */
int coreboot_driver_register(struct coreboot_driver *driver);
int __coreboot_driver_register(struct coreboot_driver *driver,
struct module *owner);

/* Unregister a driver that uses the data from a coreboot table. */
void coreboot_driver_unregister(struct coreboot_driver *driver);
Expand Down

0 comments on commit a7c840b

Please sign in to comment.