drm/amdgpu: fix initial connector audio value
authorhongao <hongao@uniontech.com>
Tue, 20 Sep 2022 09:24:53 +0000 (17:24 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 26 Oct 2022 10:35:41 +0000 (12:35 +0200)
[ Upstream commit 4bb71fce58f30df3f251118291d6b0187ce531e6 ]

This got lost somewhere along the way, This fixes
audio not working until set_property was called.

Signed-off-by: hongao <hongao@uniontech.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c

index a09876bb7ec8b9a38be9d062f9e578eb2f085c05..4b1d62ebf8ddcdf4b89ed864d8296626a22a299b 100644 (file)
@@ -1671,10 +1671,12 @@ amdgpu_connector_add(struct amdgpu_device *adev,
                                                   adev->mode_info.dither_property,
                                                   AMDGPU_FMT_DITHER_DISABLE);
 
-                       if (amdgpu_audio != 0)
+                       if (amdgpu_audio != 0) {
                                drm_object_attach_property(&amdgpu_connector->base.base,
                                                           adev->mode_info.audio_property,
                                                           AMDGPU_AUDIO_AUTO);
+                               amdgpu_connector->audio = AMDGPU_AUDIO_AUTO;
+                       }
 
                        subpixel_order = SubPixelHorizontalRGB;
                        connector->interlace_allowed = true;
@@ -1796,6 +1798,7 @@ amdgpu_connector_add(struct amdgpu_device *adev,
                                drm_object_attach_property(&amdgpu_connector->base.base,
                                                           adev->mode_info.audio_property,
                                                           AMDGPU_AUDIO_AUTO);
+                               amdgpu_connector->audio = AMDGPU_AUDIO_AUTO;
                        }
                        drm_object_attach_property(&amdgpu_connector->base.base,
                                                   adev->mode_info.dither_property,
@@ -1849,6 +1852,7 @@ amdgpu_connector_add(struct amdgpu_device *adev,
                                drm_object_attach_property(&amdgpu_connector->base.base,
                                                           adev->mode_info.audio_property,
                                                           AMDGPU_AUDIO_AUTO);
+                               amdgpu_connector->audio = AMDGPU_AUDIO_AUTO;
                        }
                        drm_object_attach_property(&amdgpu_connector->base.base,
                                                   adev->mode_info.dither_property,
@@ -1899,6 +1903,7 @@ amdgpu_connector_add(struct amdgpu_device *adev,
                                drm_object_attach_property(&amdgpu_connector->base.base,
                                                           adev->mode_info.audio_property,
                                                           AMDGPU_AUDIO_AUTO);
+                               amdgpu_connector->audio = AMDGPU_AUDIO_AUTO;
                        }
                        drm_object_attach_property(&amdgpu_connector->base.base,
                                                   adev->mode_info.dither_property,