• Rob Herring's avatar
    media: Revert "[media] v4l: async: make v4l2 coexist with devicetree nodes in a dt overlay" · 12f92866
    Rob Herring authored
    This reverts commit d2180e0c.
    
    The commit was flawed in that if the device_node pointers are different,
    then in fact a different device is present and the device node could be
    different in ways other than full_name.
    
    As Frank Rowand explained:
    
    "When an overlay (1) is removed, all uses and references to the nodes and
    properties in that overlay are no longer valid.  Any driver that uses any
    information from the overlay _must_ stop using any data from the overlay.
    Any driver that is bound to a new node in the overlay _must_ unbind.  Any
    driver that became bound to a pre-existing node that was modified by the
    overlay (became bound after the overlay was applied) _must_ adjust itself
    to account for any changes to that node when the overlay is removed.  One
    way to do this is to unbind when notified that the overlay is about to
    be removed, then to re-bind after the overlay is completely removed.
    
    If an overlay (2) is subsequently applied, a node with the same
    full_name as from overlay (1) may exist.  There is no guarantee
    that overlay (1) and overlay (2) are the same overlay, even if
    that node has the same full_name in both cases."
    
    Also, there's not sufficient overlay support in mainline to actually
    remove and re-apply an overlay to hit this condition as overlays can
    only be applied from in kernel APIs.
    
    Fixes: d2180e0c ("[media] v4l: async: make v4l2 coexist with devicetree nodes in a dt overlay")
    
    Cc: Javier Martinez Canillas <javier@osg.samsung.com>
    Cc: Sylwester Nawrocki <s.nawrocki@samsung.com>
    Cc: Frank Rowand <frowand.list@gmail.com>
    Signed-off-by: default avatarRob Herring <robh@kernel.org>
    Acked-by: default avatarJavi Merino <javi.merino@kernel.org>
    Signed-off-by: default avatarSakari Ailus <sakari.ailus@linux.intel.com>
    Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
    12f92866
v4l2-async.c 7.45 KB