• Grant Likely's avatar
    of/platform: Fix of_platform_device_destroy iteration of devices · 75f353b6
    Grant Likely authored
    of_platform_destroy does not work properly, since the tree
    population test was iterating on all devices having as its parent
    the given platform device.
    
    The check was intended to check whether any other platform or amba
    devices created by of_platform_populate were still populated, but
    instead checked for every kind of device. This is wrong, since platform
    devices typically create a subsystem regular device and set themselves
    as parents.
    
    Instead, go ahead and call the unregister functions for any devices
    created with of_platform_populate. The driver core will take care of
    unbinding drivers, and drivers are responsible for getting rid of any
    child devices that weren't created by of_platform_populate.
    Signed-off-by: default avatarGrant Likely <grant.likely@linaro.org>
    Signed-off-by: default avatarPantelis Antoniou <pantelis.antoniou@konsulko.com>
    75f353b6
of.h 22.9 KB