|
@@ -854,65 +854,6 @@ static const struct dmi_system_id intel_no_lvds[] = {
|
|
|
{ } /* terminating entry */
|
|
|
};
|
|
|
|
|
|
-#ifdef CONFIG_ACPI
|
|
|
-/*
|
|
|
- * check_lid_device -- check whether @handle is an ACPI LID device.
|
|
|
- * @handle: ACPI device handle
|
|
|
- * @level : depth in the ACPI namespace tree
|
|
|
- * @context: the number of LID device when we find the device
|
|
|
- * @rv: a return value to fill if desired (Not use)
|
|
|
- */
|
|
|
-static acpi_status
|
|
|
-check_lid_device(acpi_handle handle, u32 level, void *context,
|
|
|
- void **return_value)
|
|
|
-{
|
|
|
- struct acpi_device *acpi_dev;
|
|
|
- int *lid_present = context;
|
|
|
-
|
|
|
- acpi_dev = NULL;
|
|
|
- /* Get the acpi device for device handle */
|
|
|
- if (acpi_bus_get_device(handle, &acpi_dev) || !acpi_dev) {
|
|
|
- /* If there is no ACPI device for handle, return */
|
|
|
- return AE_OK;
|
|
|
- }
|
|
|
-
|
|
|
- if (!strncmp(acpi_device_hid(acpi_dev), "PNP0C0D", 7))
|
|
|
- *lid_present = 1;
|
|
|
-
|
|
|
- return AE_OK;
|
|
|
-}
|
|
|
-
|
|
|
-/**
|
|
|
- * check whether there exists the ACPI LID device by enumerating the ACPI
|
|
|
- * device tree.
|
|
|
- */
|
|
|
-static int intel_lid_present(void)
|
|
|
-{
|
|
|
- int lid_present = 0;
|
|
|
-
|
|
|
- if (acpi_disabled) {
|
|
|
- /* If ACPI is disabled, there is no ACPI device tree to
|
|
|
- * check, so assume the LID device would have been present.
|
|
|
- */
|
|
|
- return 1;
|
|
|
- }
|
|
|
-
|
|
|
- acpi_walk_namespace(ACPI_TYPE_DEVICE, ACPI_ROOT_OBJECT,
|
|
|
- ACPI_UINT32_MAX,
|
|
|
- check_lid_device, NULL, &lid_present, NULL);
|
|
|
-
|
|
|
- return lid_present;
|
|
|
-}
|
|
|
-#else
|
|
|
-static int intel_lid_present(void)
|
|
|
-{
|
|
|
- /* In the absence of ACPI built in, assume that the LID device would
|
|
|
- * have been present.
|
|
|
- */
|
|
|
- return 1;
|
|
|
-}
|
|
|
-#endif
|
|
|
-
|
|
|
/**
|
|
|
* intel_find_lvds_downclock - find the reduced downclock for LVDS in EDID
|
|
|
* @dev: drm device
|
|
@@ -1031,12 +972,8 @@ void intel_lvds_init(struct drm_device *dev)
|
|
|
if (dmi_check_system(intel_no_lvds))
|
|
|
return;
|
|
|
|
|
|
- /*
|
|
|
- * Assume LVDS is present if there's an ACPI lid device or if the
|
|
|
- * device is present in the VBT.
|
|
|
- */
|
|
|
- if (!lvds_is_present_in_vbt(dev) && !intel_lid_present()) {
|
|
|
- DRM_DEBUG_KMS("LVDS is not present in VBT and no lid detected\n");
|
|
|
+ if (!lvds_is_present_in_vbt(dev)) {
|
|
|
+ DRM_DEBUG_KMS("LVDS is not present in VBT\n");
|
|
|
return;
|
|
|
}
|
|
|
|