Displaying 4 results from an estimated 4 matches for "num_dod_entries".
2020 Jul 27
0
[PATCH 1/4] drm: retrieve EDID via ACPI _DDC method
...SS(status))
+ ret = edid->buffer.pointer;
+
+ kfree(edid);
+
+ if (ret)
+ break;
+ }
+
+ return ret;
+}
+
+static struct edid *first_edid_from_acpi_ddc(struct pci_dev *pdev)
+{
+ acpi_handle handle;
+ acpi_status status;
+ struct acpi_device *device = NULL;
+ struct edid *ret = NULL;
+ int num_dod_entries;
+ u64 *dod_entries = NULL;
+ struct list_head *node, *next;
+
+ handle = ACPI_HANDLE(&pdev->dev);
+ if (handle == NULL)
+ return NULL;
+
+ dod_entries = get_dod_entries(handle, &num_dod_entries);
+ if (dod_entries == NULL || num_dod_entries == 0)
+ goto done;
+
+ status = acpi_bus_get...
2020 Jul 27
6
[PATCH 0/4] drm: add support for retrieving EDID via ACPI _DDC
Some notebook systems provide the EDID for the internal panel via the
_DDC method in ACPI, instead of or in addition to providing the EDID via
DDC on LVDS/eDP. Add a DRM helper to search for an ACP _DDC method under
the ACPI namespace for each VGA/3D controller, and return the first EDID
successfully retrieved via _DDC. Update the i915, nouveau, and radeon
DRM-KMS drivers to fall back to
2020 Aug 08
2
[PATCH 1/4] drm: retrieve EDID via ACPI _DDC method
...f (ret)".
> + list_for_each_safe(node, next, &device->children) {
No, that's not safe because the ACPI namespace may change concurrently,
e.g. because a DSDT patch is applied by the user via sysfs.
Use acpi_walk_namespace() with a depth of 1 instead.
> + for (i = 0; i < num_dod_entries; i++) {
> + if (adr == dod_entries[i]) {
> + ret = do_acpi_ddc(child->handle);
> +
> + if (ret != NULL)
> + goto done;
I guess ideally we'd want to correlate the display objects with
drm_connectors or at least constrain the search to Display Type
"Internal/In...
2020 Aug 12
0
[PATCH 1/4] drm: retrieve EDID via ACPI _DDC method
...d your feedback into my local tree, but
will wait for additional feedback from the individual DRM driver
maintainers before sending out a series v2.
On 8/8/20 5:11 PM, Lukas Wunner wrote:
> On Mon, Jul 27, 2020 at 03:53:54PM -0500, Daniel Dadap wrote:
>> + for (i = 0; i < num_dod_entries; i++) {
>> + if (adr == dod_entries[i]) {
>> + ret = do_acpi_ddc(child->handle);
>> +
>> + if (ret != NULL)
>> + goto done;
> I guess ideally we'd...