aboutsummaryrefslogtreecommitdiffstats
path: root/meta-r1000/recipes-kernel/linux/linux-yocto-4.14.71/4670-drm-amdgpu-Make-struct-amdgpu_atif-private-to-amdgpu.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-r1000/recipes-kernel/linux/linux-yocto-4.14.71/4670-drm-amdgpu-Make-struct-amdgpu_atif-private-to-amdgpu.patch')
-rw-r--r--meta-r1000/recipes-kernel/linux/linux-yocto-4.14.71/4670-drm-amdgpu-Make-struct-amdgpu_atif-private-to-amdgpu.patch194
1 files changed, 0 insertions, 194 deletions
diff --git a/meta-r1000/recipes-kernel/linux/linux-yocto-4.14.71/4670-drm-amdgpu-Make-struct-amdgpu_atif-private-to-amdgpu.patch b/meta-r1000/recipes-kernel/linux/linux-yocto-4.14.71/4670-drm-amdgpu-Make-struct-amdgpu_atif-private-to-amdgpu.patch
deleted file mode 100644
index 0fbc3999..00000000
--- a/meta-r1000/recipes-kernel/linux/linux-yocto-4.14.71/4670-drm-amdgpu-Make-struct-amdgpu_atif-private-to-amdgpu.patch
+++ /dev/null
@@ -1,194 +0,0 @@
-From d25afa620bfe37623b8a9c12b95f0e06381bc4ef Mon Sep 17 00:00:00 2001
-From: Lyude Paul <lyude@redhat.com>
-Date: Mon, 25 Jun 2018 21:09:04 -0400
-Subject: [PATCH 4670/5725] drm/amdgpu: Make struct amdgpu_atif private to
- amdgpu_acpi.c
-
-Currently, there is nothing in amdgpu that actually uses these structs
-other than amdgpu_acpi.c. Additionally, since we're about to start
-saving the correct ACPI handle to use for calling ATIF in this struct
-this saves us from having to handle making sure that the acpi_handle
-(and by proxy, the type definition for acpi_handle and all of the other
-acpi headers) doesn't need to be included within the amdgpu_drv struct
-itself. This follows the example set by amdgpu_atpx_handler.c.
-
-Change-Id: I921f6d54341ded383c5d587137124bdfb969a800
-Signed-off-by: Lyude Paul <lyude@redhat.com>
-Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-Signed-off-by: Kalyan Alle <kalyan.alle@amd.com>
----
- drivers/gpu/drm/amd/amdgpu/amdgpu.h | 40 ++---------------------
- drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c | 54 ++++++++++++++++++++++++++++++--
- 2 files changed, 53 insertions(+), 41 deletions(-)
-
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
-index dbd7a8c..c76a95c 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
-@@ -193,6 +193,7 @@ struct amdgpu_irq_src;
- struct amdgpu_fpriv;
- struct amdgpu_bo_va_mapping;
- struct kfd_vm_fault_info;
-+struct amdgpu_atif;
-
- enum amdgpu_cp_irq {
- AMDGPU_CP_IRQ_GFX_EOP = 0,
-@@ -1307,43 +1308,6 @@ struct amdgpu_vram_scratch {
- /*
- * ACPI
- */
--struct amdgpu_atif_notification_cfg {
-- bool enabled;
-- int command_code;
--};
--
--struct amdgpu_atif_notifications {
-- bool display_switch;
-- bool expansion_mode_change;
-- bool thermal_state;
-- bool forced_power_state;
-- bool system_power_state;
-- bool display_conf_change;
-- bool px_gfx_switch;
-- bool brightness_change;
-- bool dgpu_display_event;
--};
--
--struct amdgpu_atif_functions {
-- bool system_params;
-- bool sbios_requests;
-- bool select_active_disp;
-- bool lid_state;
-- bool get_tv_standard;
-- bool set_tv_standard;
-- bool get_panel_expansion_mode;
-- bool set_panel_expansion_mode;
-- bool temperature_change;
-- bool graphics_device_types;
--};
--
--struct amdgpu_atif {
-- struct amdgpu_atif_notifications notifications;
-- struct amdgpu_atif_functions functions;
-- struct amdgpu_atif_notification_cfg notification_cfg;
-- struct amdgpu_encoder *encoder_for_bl;
--};
--
- struct amdgpu_atcs_functions {
- bool get_ext_state;
- bool pcie_perf_req;
-@@ -1526,7 +1490,7 @@ struct amdgpu_device {
- #if defined(CONFIG_DEBUG_FS)
- struct dentry *debugfs_regs[AMDGPU_DEBUGFS_MAX_COMPONENTS];
- #endif
-- struct amdgpu_atif atif;
-+ struct amdgpu_atif *atif;
- struct amdgpu_atcs atcs;
- struct mutex srbm_mutex;
- /* GRBM index mutex. Protects concurrent access to GRBM index */
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c
-index 8fa850a..22c7e8e 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c
-@@ -34,6 +34,43 @@
- #include "amd_acpi.h"
- #include "atom.h"
-
-+struct amdgpu_atif_notification_cfg {
-+ bool enabled;
-+ int command_code;
-+};
-+
-+struct amdgpu_atif_notifications {
-+ bool display_switch;
-+ bool expansion_mode_change;
-+ bool thermal_state;
-+ bool forced_power_state;
-+ bool system_power_state;
-+ bool display_conf_change;
-+ bool px_gfx_switch;
-+ bool brightness_change;
-+ bool dgpu_display_event;
-+};
-+
-+struct amdgpu_atif_functions {
-+ bool system_params;
-+ bool sbios_requests;
-+ bool select_active_disp;
-+ bool lid_state;
-+ bool get_tv_standard;
-+ bool set_tv_standard;
-+ bool get_panel_expansion_mode;
-+ bool set_panel_expansion_mode;
-+ bool temperature_change;
-+ bool graphics_device_types;
-+};
-+
-+struct amdgpu_atif {
-+ struct amdgpu_atif_notifications notifications;
-+ struct amdgpu_atif_functions functions;
-+ struct amdgpu_atif_notification_cfg notification_cfg;
-+ struct amdgpu_encoder *encoder_for_bl;
-+};
-+
- /* Call the ATIF method
- */
- /**
-@@ -292,7 +329,7 @@ static int amdgpu_atif_get_sbios_requests(acpi_handle handle,
- static int amdgpu_atif_handler(struct amdgpu_device *adev,
- struct acpi_bus_event *event)
- {
-- struct amdgpu_atif *atif = &adev->atif;
-+ struct amdgpu_atif *atif = adev->atif;
- struct atif_sbios_requests req;
- acpi_handle handle;
- int count;
-@@ -303,7 +340,8 @@ static int amdgpu_atif_handler(struct amdgpu_device *adev,
- if (strcmp(event->device_class, ACPI_VIDEO_CLASS) != 0)
- return NOTIFY_DONE;
-
-- if (!atif->notification_cfg.enabled ||
-+ if (!atif ||
-+ !atif->notification_cfg.enabled ||
- event->type != atif->notification_cfg.command_code)
- /* Not our event */
- return NOTIFY_DONE;
-@@ -642,7 +680,7 @@ static int amdgpu_acpi_event(struct notifier_block *nb,
- int amdgpu_acpi_init(struct amdgpu_device *adev)
- {
- acpi_handle handle;
-- struct amdgpu_atif *atif = &adev->atif;
-+ struct amdgpu_atif *atif;
- struct amdgpu_atcs *atcs = &adev->atcs;
- int ret;
-
-@@ -659,11 +697,19 @@ int amdgpu_acpi_init(struct amdgpu_device *adev)
- }
-
- /* Call the ATIF method */
-+ atif = kzalloc(sizeof(*atif), GFP_KERNEL);
-+ if (!atif) {
-+ DRM_WARN("Not enough memory to initialize ATIF\n");
-+ goto out;
-+ }
-+
- ret = amdgpu_atif_verify_interface(handle, atif);
- if (ret) {
- DRM_DEBUG_DRIVER("Call to ATIF verify_interface failed: %d\n", ret);
-+ kfree(atif);
- goto out;
- }
-+ adev->atif = atif;
-
- if (atif->notifications.brightness_change) {
- struct drm_encoder *tmp;
-@@ -720,4 +766,6 @@ int amdgpu_acpi_init(struct amdgpu_device *adev)
- void amdgpu_acpi_fini(struct amdgpu_device *adev)
- {
- unregister_acpi_notifier(&adev->acpi_nb);
-+ if (adev->atif)
-+ kfree(adev->atif);
- }
---
-2.7.4
-