03 Jul, 2014

1 commit

  • Add support for generating a set of component matches at master probe
    time, and submitting them to the component layer. This allows the
    component layer to perform the matches internally without needing to
    call into the master driver, and allows for further restructuring of
    the component helper.

    Acked-by: Laurent Pinchart
    Signed-off-by: Russell King

    Russell King
     

11 Jan, 2014

1 commit

  • Subsystems such as ALSA, DRM and others require a single card-level
    device structure to represent a subsystem. However, firmware tends to
    describe the individual devices and the connections between them.

    Therefore, we need a way to gather up the individual component devices
    together, and indicate when we have all the component devices.

    We do this in DT by providing a "superdevice" node which specifies
    the components, eg:

    imx-drm {
    compatible = "fsl,drm";
    crtcs = ;
    connectors = ;
    };

    The superdevice is declared into the component support, along with the
    subcomponents. The superdevice receives callbacks to locate the
    subcomponents, and identify when all components are present. At this
    point, we bind the superdevice, which causes the appropriate subsystem
    to be initialised in the conventional way.

    When any of the components or superdevice are removed from the system,
    we unbind the superdevice, thereby taking the subsystem down.

    Signed-off-by: Russell King
    Signed-off-by: Greg Kroah-Hartman

    Russell King