diff options
Diffstat (limited to 'common/recipes-kernel/linux/files/0757-drm-amd-dal-Fix-building-with-C-compiler.patch')
-rw-r--r-- | common/recipes-kernel/linux/files/0757-drm-amd-dal-Fix-building-with-C-compiler.patch | 103 |
1 files changed, 103 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/files/0757-drm-amd-dal-Fix-building-with-C-compiler.patch b/common/recipes-kernel/linux/files/0757-drm-amd-dal-Fix-building-with-C-compiler.patch new file mode 100644 index 00000000..f633733e --- /dev/null +++ b/common/recipes-kernel/linux/files/0757-drm-amd-dal-Fix-building-with-C-compiler.patch @@ -0,0 +1,103 @@ +From ea66a4b86b52bdf258a30c0a0d6e5abdbe405093 Mon Sep 17 00:00:00 2001 +From: Ken Chalmers <ken.chalmers@amd.com> +Date: Mon, 1 Feb 2016 09:46:38 -0500 +Subject: [PATCH 0757/1110] drm/amd/dal: Fix building with C++ compiler. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Move struct definitions outside anonymous unions. Without this, +including these files from a C++ source file causes an error from g++: + +../../include/audio_types.h:134:10: error: ‘struct +audio_info_flags::<anonymous union>::audio_speaker_flags’ invalid; an +anonymous union can only have non-static data members [-fpermissive] + +Signed-off-by: Ken Chalmers <ken.chalmers@amd.com> +Acked-by: Harry Wentland <harry.wentland@amd.com> +--- + drivers/gpu/drm/amd/dal/include/audio_types.h | 33 ++++++++++++---------- + .../drm/amd/dal/include/grph_object_ctrl_defs.h | 12 ++++---- + 2 files changed, 25 insertions(+), 20 deletions(-) + +diff --git a/drivers/gpu/drm/amd/dal/include/audio_types.h b/drivers/gpu/drm/amd/dal/include/audio_types.h +index 204c5d8..54f5546 100644 +--- a/drivers/gpu/drm/amd/dal/include/audio_types.h ++++ b/drivers/gpu/drm/amd/dal/include/audio_types.h +@@ -127,25 +127,28 @@ struct audio_mode { + }; + }; + ++struct audio_speaker_flags { ++ uint32_t FL_FR:1; ++ uint32_t LFE:1; ++ uint32_t FC:1; ++ uint32_t RL_RR:1; ++ uint32_t RC:1; ++ uint32_t FLC_FRC:1; ++ uint32_t RLC_RRC:1; ++ uint32_t SUPPORT_AI:1; ++}; ++ ++struct audio_speaker_info { ++ uint32_t ALLSPEAKERS:7; ++ uint32_t SUPPORT_AI:1; ++}; ++ + struct audio_info_flags { + + union { + +- struct audio_speaker_flags { +- uint32_t FL_FR:1; +- uint32_t LFE:1; +- uint32_t FC:1; +- uint32_t RL_RR:1; +- uint32_t RC:1; +- uint32_t FLC_FRC:1; +- uint32_t RLC_RRC:1; +- uint32_t SUPPORT_AI:1; +- } speaker_flags; +- +- struct audio_speaker_info { +- uint32_t ALLSPEAKERS:7; +- uint32_t SUPPORT_AI:1; +- } info; ++ struct audio_speaker_flags speaker_flags; ++ struct audio_speaker_info info; + + uint8_t all; + }; +diff --git a/drivers/gpu/drm/amd/dal/include/grph_object_ctrl_defs.h b/drivers/gpu/drm/amd/dal/include/grph_object_ctrl_defs.h +index c6de837..2ed01bd 100644 +--- a/drivers/gpu/drm/amd/dal/include/grph_object_ctrl_defs.h ++++ b/drivers/gpu/drm/amd/dal/include/grph_object_ctrl_defs.h +@@ -259,6 +259,12 @@ struct analog_tv_info { + union tv_standard_support tv_boot_up_default; + }; + ++struct step_and_delay_info { ++ uint32_t step; ++ uint32_t delay; ++ uint32_t recommended_ref_div; ++}; ++ + struct spread_spectrum_info { + struct spread_spectrum_type { + bool CENTER_MODE:1; +@@ -273,11 +279,7 @@ struct spread_spectrum_info { + uint32_t spread_spectrum_range; /* modulation freq (HZ)*/ + + union { +- struct step_and_delay_info { +- uint32_t step; +- uint32_t delay; +- uint32_t recommended_ref_div; +- } step_and_delay_info; ++ struct step_and_delay_info step_and_delay_info; + /* For mem/engine/uvd, Clock Out frequence (VCO ), + in unit of kHz. For TMDS/HDMI/LVDS, it is pixel clock, + for DP, it is link clock ( 270000 or 162000 ) */ +-- +2.7.4 + |