mbox series

[RFC,00/12] platform/x86: intel_cht_int33fe: Real DisplayPort reference

Message ID 20190315165800.5058-1-heikki.krogerus@linux.intel.com (mailing list archive)
Headers show
Series platform/x86: intel_cht_int33fe: Real DisplayPort reference | expand

Message

Heikki Krogerus March 15, 2019, 4:57 p.m. UTC
Hi Hans,

This is RFC, so not CCing everybody who should be CCd yet.

I spend a bit of time on thinking how could we use real fwnode
references instead of that string you proposed in order to hook up the
USB Type-C connector with the DisplayPort connector. This is what I
came up with. I was planning on introducing the references to software
nodes in any case like I mentioned before.

I'm not yet adding any sub-nodes for the DP alt mode. I'm just
assigning references to all the relevant components (nodes) for the
USB Type-C connector node. I think that the reference to the
DisplayPort should be assigned to the USB Type-C connector and not
to the alt mode sub-node.

Using these you should be able to add that notifier, and in it just
get the reference to the correct DisplayPort node from the USB Type-C
connector, and then you can simply walk through the drm_connectors and
match using the fwnode.


thanks,


Heikki Krogerus (12):
  software node: Prevent potential NULL Pointer Dereference
  software node: Increment parent node's ref count
  software node: Add support for references
  software node: Implement .get_reference_args fwnode operation
  ACPI / property: Don't limit named child node matching to data nodes
  device connection: Find connections also by checking the references
  platform/x86: intel_cht_int33fe: Provide software node for all
    components
  platform/x86: intel_cht_int33fe: Provide fwnode for the USB connector
  platform/x86: intel_cht_int33fe: Link with external dependencies using
    fwnodes
  platform/x86: intel_cht_int33fe: Replacing the old connections with
    references
  drm: Add fwnode member to the struct drm_connector
  drm/i915: Associate the ACPI connector nodes with connector entries

 drivers/acpi/property.c                  |  26 +-
 drivers/base/devcon.c                    |  28 ++
 drivers/base/swnode.c                    | 165 ++++++++++-
 drivers/gpu/drm/drm_sysfs.c              |  49 +++-
 drivers/gpu/drm/i915/intel_display.c     |  41 +++
 drivers/platform/x86/intel_cht_int33fe.c | 349 ++++++++++++++++++++---
 include/drm/drm_connector.h              |   2 +
 include/linux/property.h                 |   8 +
 8 files changed, 599 insertions(+), 69 deletions(-)