chrome platform firmware changes for 6.10

* Improvements
 
   - Set driver owner in the core registration so that coreboot drivers
     don't need to set it individually.
 -----BEGIN PGP SIGNATURE-----
 
 iIkEABYIADEWIQS0yQeDP3cjLyifNRUrxTEGBto89AUCZj2VQBMcdHp1bmdiaUBr
 ZXJuZWwub3JnAAoJECvFMQYG2jz0CO8A/iD11kx8c54DChTRZ1x/1kpVkp8GOxTp
 guS584xIy29CAQDeHTATY5YVEfff3pH3sggQE+60+gLgtRD6pW5CUE6SAg==
 =3GxW
 -----END PGP SIGNATURE-----

Merge tag 'tag-chrome-platform-firmware-for-v6.10' of git://git.kernel.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://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()
This commit is contained in:
Linus Torvalds 2024-05-13 16:48:15 -07:00
commit a7c840ba5f
3 changed files with 9 additions and 4 deletions

View File

@ -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,

View File

@ -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)
{

View File

@ -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);