1
0
Fork 0

Driver core fixes for 5.5-rc2

Here are two small driver core fixes to resolve some reported issues
 
 The first is to handle the much-reported (by the build systems) problem
 that superH does not boot anymore.
 
 The second handles an issue in the new platform logic that a number of
 people ran into with the automated tests in kbuild
 
 Both of these have been in linux-next with no reported issues.
 
 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 -----BEGIN PGP SIGNATURE-----
 
 iG0EABECAC0WIQT0tgzFv3jCIUoxPcsxR9QN2y37KQUCXfT93A8cZ3JlZ0Brcm9h
 aC5jb20ACgkQMUfUDdst+ynmZQCg1UcGXaZKmLfiGCvNMqt2kelW0qwAnjTAtaLv
 jj8vb4R+ogOFhEcGE5g/
 =BbbT
 -----END PGP SIGNATURE-----

Merge tag 'driver-core-5.5-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core

Pull driver core fixes from Greg KH:
 "Here are two small driver core fixes to resolve some reported issues

  The first is to handle the much-reported (by the build systems)
  problem that superH does not boot anymore.

  The second handles an issue in the new platform logic that a number of
  people ran into with the automated tests in kbuild

  Both of these have been in linux-next with no reported issues"

* tag 'driver-core-5.5-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
  drivers: Fix boot problem on SuperH
  of/platform: Unconditionally pause/resume sync state during kernel init
alistair/sunxi64-5.5-dsi
Linus Torvalds 2019-12-14 12:45:36 -08:00
commit 894554c1ca
2 changed files with 6 additions and 9 deletions

View File

@ -325,9 +325,9 @@ int __init sh_early_platform_driver_probe(char *class_str,
}
/**
* sh_early_platform_cleanup - clean up early platform code
* early_platform_cleanup - clean up early platform code
*/
static int __init sh_early_platform_cleanup(void)
void __init early_platform_cleanup(void)
{
struct platform_device *pd, *pd2;
@ -337,11 +337,4 @@ static int __init sh_early_platform_cleanup(void)
list_del(&pd->dev.devres_head);
memset(&pd->dev.devres_head, 0, sizeof(pd->dev.devres_head));
}
return 0;
}
/*
* This must happen once after all early devices are probed but before probing
* real platform devices.
*/
subsys_initcall(sh_early_platform_cleanup);

View File

@ -1325,10 +1325,14 @@ struct device *platform_find_device_by_driver(struct device *start,
}
EXPORT_SYMBOL_GPL(platform_find_device_by_driver);
void __weak __init early_platform_cleanup(void) { }
int __init platform_bus_init(void)
{
int error;
early_platform_cleanup();
error = device_register(&platform_bus);
if (error) {
put_device(&platform_bus);