mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 04:18:39 +08:00
Merge branches 'acpi-bus', 'acpi-video' and 'acpi-misc'
Merge ACPI bus type driver changes, ACPI backlight driver updates and a series of cleanups related to of.h for 6.4-rc1: - Ensure that ACPI notify handlers are not running after removal and clean up code in acpi_sb_notify() (Rafael Wysocki). - Remove register_backlight_delay module option and code and remove quirks for false-positive backlight control support advertised on desktop boards (Hans de Goede). - Replace irqdomain.h include with struct declarations in ACPI headers and update several pieces of code previously including of.h implicitly through those headers (Rob Herring). * acpi-bus: ACPI: bus: Ensure that notify handlers are not running after removal ACPI: bus: Add missing braces to acpi_sb_notify() * acpi-video: ACPI: video: Remove desktops without backlight DMI quirks ACPI: video: Remove register_backlight_delay module option and code * acpi-misc: ACPI: Replace irqdomain.h include with struct declarations fpga: lattice-sysconfig-spi: Add explicit include for of.h tpm: atmel: Add explicit include for of.h virtio-mmio: Add explicit include for of.h pata: ixp4xx: Add explicit include for of.h ata: pata_macio: Add explicit include of irqdomain.h serial: 8250_tegra: Add explicit include for of.h net: rfkill-gpio: Add explicit include for of.h staging: iio: resolver: ad2s1210: Add explicit include for of.h iio: adc: ad7292: Add explicit include for of.h
This commit is contained in:
commit
21fc506cf5
@ -70,12 +70,6 @@ module_param(device_id_scheme, bool, 0444);
|
||||
static int only_lcd = -1;
|
||||
module_param(only_lcd, int, 0444);
|
||||
|
||||
static int register_backlight_delay;
|
||||
module_param(register_backlight_delay, int, 0444);
|
||||
MODULE_PARM_DESC(register_backlight_delay,
|
||||
"Delay in seconds before doing fallback (non GPU driver triggered) "
|
||||
"backlight registration, set to 0 to disable.");
|
||||
|
||||
static bool may_report_brightness_keys;
|
||||
static int register_count;
|
||||
static DEFINE_MUTEX(register_count_mutex);
|
||||
@ -84,9 +78,6 @@ static LIST_HEAD(video_bus_head);
|
||||
static int acpi_video_bus_add(struct acpi_device *device);
|
||||
static void acpi_video_bus_remove(struct acpi_device *device);
|
||||
static void acpi_video_bus_notify(struct acpi_device *device, u32 event);
|
||||
static void acpi_video_bus_register_backlight_work(struct work_struct *ignored);
|
||||
static DECLARE_DELAYED_WORK(video_bus_register_backlight_work,
|
||||
acpi_video_bus_register_backlight_work);
|
||||
|
||||
/*
|
||||
* Indices in the _BCL method response: the first two items are special,
|
||||
@ -2096,11 +2087,6 @@ static void acpi_video_bus_remove(struct acpi_device *device)
|
||||
kfree(video);
|
||||
}
|
||||
|
||||
static void acpi_video_bus_register_backlight_work(struct work_struct *ignored)
|
||||
{
|
||||
acpi_video_register_backlight();
|
||||
}
|
||||
|
||||
static int __init is_i740(struct pci_dev *dev)
|
||||
{
|
||||
if (dev->device == 0x00D1)
|
||||
@ -2183,17 +2169,6 @@ static bool should_check_lcd_flag(void)
|
||||
return false;
|
||||
}
|
||||
|
||||
/*
|
||||
* At least one graphics driver has reported that no LCD is connected
|
||||
* via the native interface. cancel the registration for fallback acpi_video0.
|
||||
* If another driver still deems this necessary, it can explicitly register it.
|
||||
*/
|
||||
void acpi_video_report_nolcd(void)
|
||||
{
|
||||
cancel_delayed_work(&video_bus_register_backlight_work);
|
||||
}
|
||||
EXPORT_SYMBOL(acpi_video_report_nolcd);
|
||||
|
||||
int acpi_video_register(void)
|
||||
{
|
||||
int ret = 0;
|
||||
@ -2222,18 +2197,6 @@ int acpi_video_register(void)
|
||||
*/
|
||||
register_count = 1;
|
||||
|
||||
/*
|
||||
* acpi_video_bus_add() skips registering the userspace visible
|
||||
* backlight_device. The intend is for this to be registered by the
|
||||
* drm/kms driver calling acpi_video_register_backlight() *after* it is
|
||||
* done setting up its own native backlight device. The delayed work
|
||||
* ensures that acpi_video_register_backlight() always gets called
|
||||
* eventually, in case there is no drm/kms driver or it is disabled.
|
||||
*/
|
||||
if (register_backlight_delay)
|
||||
schedule_delayed_work(&video_bus_register_backlight_work,
|
||||
register_backlight_delay * HZ);
|
||||
|
||||
leave:
|
||||
mutex_unlock(®ister_count_mutex);
|
||||
return ret;
|
||||
@ -2244,7 +2207,6 @@ void acpi_video_unregister(void)
|
||||
{
|
||||
mutex_lock(®ister_count_mutex);
|
||||
if (register_count) {
|
||||
cancel_delayed_work_sync(&video_bus_register_backlight_work);
|
||||
acpi_bus_unregister_driver(&acpi_video_bus);
|
||||
register_count = 0;
|
||||
may_report_brightness_keys = false;
|
||||
|
@ -589,6 +589,7 @@ static void acpi_device_remove_notify_handler(struct acpi_device *device,
|
||||
acpi_remove_notify_handler(device->handle, type,
|
||||
acpi_notify_device);
|
||||
}
|
||||
acpi_os_wait_events_complete();
|
||||
}
|
||||
|
||||
/* Handle events targeting \_SB device (at present only graceful shutdown) */
|
||||
@ -623,8 +624,9 @@ static void acpi_sb_notify(acpi_handle handle, u32 event, void *data)
|
||||
if (event == ACPI_SB_NOTIFY_SHUTDOWN_REQUEST) {
|
||||
if (!work_busy(&acpi_sb_work))
|
||||
schedule_work(&acpi_sb_work);
|
||||
} else
|
||||
} else {
|
||||
pr_warn("event %x is not supported by \\_SB device\n", event);
|
||||
}
|
||||
}
|
||||
|
||||
static int __init acpi_setup_sb_notify_handler(void)
|
||||
|
@ -130,12 +130,6 @@ static int video_detect_force_native(const struct dmi_system_id *d)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int video_detect_force_none(const struct dmi_system_id *d)
|
||||
{
|
||||
acpi_backlight_dmi = acpi_backlight_none;
|
||||
return 0;
|
||||
}
|
||||
|
||||
static const struct dmi_system_id video_detect_dmi_table[] = {
|
||||
/*
|
||||
* Models which should use the vendor backlight interface,
|
||||
@ -768,35 +762,6 @@ static const struct dmi_system_id video_detect_dmi_table[] = {
|
||||
DMI_MATCH(DMI_PRODUCT_NAME, "Vostro 15 3535"),
|
||||
},
|
||||
},
|
||||
|
||||
/*
|
||||
* Desktops which falsely report a backlight and which our heuristics
|
||||
* for this do not catch.
|
||||
*/
|
||||
{
|
||||
.callback = video_detect_force_none,
|
||||
/* Dell OptiPlex 9020M */
|
||||
.matches = {
|
||||
DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
|
||||
DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 9020M"),
|
||||
},
|
||||
},
|
||||
{
|
||||
.callback = video_detect_force_none,
|
||||
/* GIGABYTE GB-BXBT-2807 */
|
||||
.matches = {
|
||||
DMI_MATCH(DMI_SYS_VENDOR, "GIGABYTE"),
|
||||
DMI_MATCH(DMI_PRODUCT_NAME, "GB-BXBT-2807"),
|
||||
},
|
||||
},
|
||||
{
|
||||
.callback = video_detect_force_none,
|
||||
/* MSI MS-7721 */
|
||||
.matches = {
|
||||
DMI_MATCH(DMI_SYS_VENDOR, "MSI"),
|
||||
DMI_MATCH(DMI_PRODUCT_NAME, "MS-7721"),
|
||||
},
|
||||
},
|
||||
{ },
|
||||
};
|
||||
|
||||
|
@ -17,6 +17,7 @@
|
||||
#include <linux/module.h>
|
||||
#include <linux/libata.h>
|
||||
#include <linux/irq.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/regmap.h>
|
||||
#include <scsi/scsi_host.h>
|
||||
|
@ -21,6 +21,7 @@
|
||||
#include <linux/adb.h>
|
||||
#include <linux/pmu.h>
|
||||
#include <linux/scatterlist.h>
|
||||
#include <linux/irqdomain.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/gfp.h>
|
||||
#include <linux/pci.h>
|
||||
|
@ -26,7 +26,7 @@ struct tpm_atmel_priv {
|
||||
|
||||
#ifdef CONFIG_PPC64
|
||||
|
||||
#include <asm/prom.h>
|
||||
#include <linux/of.h>
|
||||
|
||||
#define atmel_getb(priv, offset) readb(priv->iobase + offset)
|
||||
#define atmel_putb(val, priv, offset) writeb(val, priv->iobase + offset)
|
||||
|
@ -3,6 +3,7 @@
|
||||
* Lattice FPGA programming over slave SPI sysCONFIG interface.
|
||||
*/
|
||||
|
||||
#include <linux/of.h>
|
||||
#include <linux/spi/spi.h>
|
||||
|
||||
#include "lattice-sysconfig.h"
|
||||
|
@ -4445,10 +4445,6 @@ static int amdgpu_dm_initialize_drm_device(struct amdgpu_device *adev)
|
||||
amdgpu_set_panel_orientation(&aconnector->base);
|
||||
}
|
||||
|
||||
/* If we didn't find a panel, notify the acpi video detection */
|
||||
if (dm->adev->flags & AMD_IS_APU && dm->num_of_edps == 0)
|
||||
acpi_video_report_nolcd();
|
||||
|
||||
/* Software is initialized. Now we can register interrupt handlers. */
|
||||
switch (adev->asic_type) {
|
||||
#if defined(CONFIG_DRM_AMD_DC_SI)
|
||||
|
@ -8,6 +8,7 @@
|
||||
#include <linux/bitfield.h>
|
||||
#include <linux/device.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/regulator/consumer.h>
|
||||
#include <linux/spi/spi.h>
|
||||
|
||||
|
@ -7,6 +7,7 @@
|
||||
#include <linux/types.h>
|
||||
#include <linux/mutex.h>
|
||||
#include <linux/device.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/spi/spi.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/sysfs.h>
|
||||
|
@ -11,6 +11,7 @@
|
||||
#include <linux/delay.h>
|
||||
#include <linux/io.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/reset.h>
|
||||
#include <linux/slab.h>
|
||||
|
||||
|
@ -61,6 +61,7 @@
|
||||
#include <linux/io.h>
|
||||
#include <linux/list.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/pm.h>
|
||||
#include <linux/slab.h>
|
||||
|
@ -53,7 +53,6 @@ enum acpi_backlight_type {
|
||||
};
|
||||
|
||||
#if IS_ENABLED(CONFIG_ACPI_VIDEO)
|
||||
extern void acpi_video_report_nolcd(void);
|
||||
extern int acpi_video_register(void);
|
||||
extern void acpi_video_unregister(void);
|
||||
extern void acpi_video_register_backlight(void);
|
||||
@ -81,7 +80,6 @@ static inline bool acpi_video_backlight_use_native(void)
|
||||
return __acpi_video_get_backlight_type(true, NULL) == acpi_backlight_native;
|
||||
}
|
||||
#else
|
||||
static inline void acpi_video_report_nolcd(void) { return; };
|
||||
static inline int acpi_video_register(void) { return -ENODEV; }
|
||||
static inline void acpi_video_unregister(void) { return; }
|
||||
static inline void acpi_video_register_backlight(void) { return; }
|
||||
|
@ -10,12 +10,15 @@
|
||||
|
||||
#include <linux/errno.h>
|
||||
#include <linux/ioport.h> /* for struct resource */
|
||||
#include <linux/irqdomain.h>
|
||||
#include <linux/resource_ext.h>
|
||||
#include <linux/device.h>
|
||||
#include <linux/mod_devicetable.h>
|
||||
#include <linux/property.h>
|
||||
#include <linux/uuid.h>
|
||||
|
||||
struct irq_domain;
|
||||
struct irq_domain_ops;
|
||||
|
||||
#ifndef _LINUX
|
||||
#define _LINUX
|
||||
#endif
|
||||
@ -24,7 +27,6 @@
|
||||
#ifdef CONFIG_ACPI
|
||||
|
||||
#include <linux/list.h>
|
||||
#include <linux/mod_devicetable.h>
|
||||
#include <linux/dynamic_debug.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/mutex.h>
|
||||
|
@ -8,6 +8,7 @@
|
||||
#include <linux/module.h>
|
||||
#include <linux/mod_devicetable.h>
|
||||
#include <linux/rfkill.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/clk.h>
|
||||
#include <linux/slab.h>
|
||||
|
Loading…
Reference in New Issue
Block a user