AMD-GFX Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Alex Hung <alex.hung@amd.com>
To: Chenyu Chen <chen-yu.chen@amd.com>, amd-gfx@lists.freedesktop.org
Cc: Harry Wentland <harry.wentland@amd.com>,
	Leo Li <sunpeng.li@amd.com>,
	Aurabindo Pillai <aurabindo.pillai@amd.com>,
	Roman Li <roman.li@amd.com>, Wayne Lin <wayne.lin@amd.com>,
	Tom Chung <chiahsuan.chung@amd.com>,
	Fangzhi Zuo <jerry.zuo@amd.com>,
	Dan Wheeler <daniel.wheeler@amd.com>, Ray Wu <Ray.Wu@amd.com>,
	Ivan Lipski <ivan.lipski@amd.com>,
	Austin Zheng <austin.zheng@amd.com>
Subject: Re: [PATCH 4/6] drm/amd/display: Refactor dml_core_mode_support to reduce stack frame
Date: Tue, 2 Dec 2025 09:31:18 -0700	[thread overview]
Message-ID: <7eba047f-b427-4191-94c0-eda17bbb99ed@amd.com> (raw)
In-Reply-To: <38b6e3e5-fcee-48c4-bcac-5aee8feb289f@amd.com>



On 12/2/25 09:29, Alex Hung wrote:
> 
> 
> On 12/2/25 03:21, Chenyu Chen wrote:
>> From: Alex Hung <alex.hung@amd.com>
>>
>> [WHAT]
>> When compiling Linux kernel with clang, the following warning / error
>> messages pops up:
>>
>> drivers/gpu/drm/amd/amdgpu/../dal-dev/dc/dml2_0/ 
>> display_mode_core.c:6853:12:
>> error: stack frame size (2120) exceeds limit (2056) in
>> 'dml_core_mode_support' [-Werror,-Wframe-larger-than]
>>   6853 | dml_bool_t dml_core_mode_support(struct display_mode_lib_st
>> *mode_lib)
>>
>> [HOW]
>> Refactoring CalculateVMRowAndSwath_params assignments to a new function
>> helps reduce the stack frame size in dml_core_mode_support.
>>
> Hi Chenyu,
> 
> A bug seems to be related. Can you add a buglink? Thanks.
> 
> Buglink: https://gitlab.freedesktop.org/drm/amd/-/issues/4733

Correction, Add "Closes" instead of "Buglink"

> 
>> Reviewed-by: Austin Zheng <austin.zheng@amd.com>
>> Reviewed-by: Aurabindo Pillai <aurabindo.pillai@amd.com>
>> Signed-off-by: Alex Hung <alex.hung@amd.com>
>> Signed-off-by: Chenyu Chen <chen-yu.chen@amd.com>
>> ---
>>   .../amd/display/dc/dml2_0/display_mode_core.c | 134 ++++++++++--------
>>   1 file changed, 71 insertions(+), 63 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/amd/display/dc/dml2_0/display_mode_core.c 
>> b/drivers/gpu/drm/amd/display/dc/dml2_0/display_mode_core.c
>> index c468f492b876..09303c282495 100644
>> --- a/drivers/gpu/drm/amd/display/dc/dml2_0/display_mode_core.c
>> +++ b/drivers/gpu/drm/amd/display/dc/dml2_0/display_mode_core.c
>> @@ -6711,6 +6711,76 @@ static noinline_for_stack void 
>> dml_prefetch_check(struct display_mode_lib_st *mo
>>       } // for j
>>   }
>> +static noinline_for_stack void set_vm_row_and_swath_parameters(struct 
>> display_mode_lib_st *mode_lib)
>> +{
>> +    struct CalculateVMRowAndSwath_params_st 
>> *CalculateVMRowAndSwath_params = &mode_lib- 
>> >scratch.CalculateVMRowAndSwath_params;
>> +    struct dml_core_mode_support_locals_st *s = &mode_lib- 
>> >scratch.dml_core_mode_support_locals;
>> +
>> +    CalculateVMRowAndSwath_params->NumberOfActiveSurfaces = mode_lib- 
>> >ms.num_active_planes;
>> +    CalculateVMRowAndSwath_params->myPipe = s->SurfParameters;
>> +    CalculateVMRowAndSwath_params->SurfaceSizeInMALL = mode_lib- 
>> >ms.SurfaceSizeInMALL;
>> +    CalculateVMRowAndSwath_params->PTEBufferSizeInRequestsLuma = 
>> mode_lib->ms.ip.dpte_buffer_size_in_pte_reqs_luma;
>> +    CalculateVMRowAndSwath_params->PTEBufferSizeInRequestsChroma = 
>> mode_lib->ms.ip.dpte_buffer_size_in_pte_reqs_chroma;
>> +    CalculateVMRowAndSwath_params->DCCMetaBufferSizeBytes = mode_lib- 
>> >ms.ip.dcc_meta_buffer_size_bytes;
>> +    CalculateVMRowAndSwath_params->UseMALLForStaticScreen = mode_lib- 
>> >ms.cache_display_cfg.plane.UseMALLForStaticScreen;
>> +    CalculateVMRowAndSwath_params->UseMALLForPStateChange = mode_lib- 
>> >ms.cache_display_cfg.plane.UseMALLForPStateChange;
>> +    CalculateVMRowAndSwath_params->MALLAllocatedForDCN = mode_lib- 
>> >ms.soc.mall_allocated_for_dcn_mbytes;
>> +    CalculateVMRowAndSwath_params->SwathWidthY = mode_lib- 
>> >ms.SwathWidthYThisState;
>> +    CalculateVMRowAndSwath_params->SwathWidthC = mode_lib- 
>> >ms.SwathWidthCThisState;
>> +    CalculateVMRowAndSwath_params->GPUVMEnable = mode_lib- 
>> >ms.cache_display_cfg.plane.GPUVMEnable;
>> +    CalculateVMRowAndSwath_params->HostVMEnable = mode_lib- 
>> >ms.cache_display_cfg.plane.HostVMEnable;
>> +    CalculateVMRowAndSwath_params->HostVMMaxNonCachedPageTableLevels 
>> = mode_lib->ms.cache_display_cfg.plane.HostVMMaxPageTableLevels;
>> +    CalculateVMRowAndSwath_params->GPUVMMaxPageTableLevels = 
>> mode_lib->ms.cache_display_cfg.plane.GPUVMMaxPageTableLevels;
>> +    CalculateVMRowAndSwath_params->GPUVMMinPageSizeKBytes = mode_lib- 
>> >ms.cache_display_cfg.plane.GPUVMMinPageSizeKBytes;
>> +    CalculateVMRowAndSwath_params->HostVMMinPageSize = mode_lib- 
>> >ms.soc.hostvm_min_page_size_kbytes * 1024;
>> +    CalculateVMRowAndSwath_params->PTEBufferModeOverrideEn = 
>> mode_lib->ms.cache_display_cfg.plane.PTEBufferModeOverrideEn;
>> +    CalculateVMRowAndSwath_params->PTEBufferModeOverrideVal = 
>> mode_lib->ms.cache_display_cfg.plane.PTEBufferMode;
>> +    CalculateVMRowAndSwath_params->PTEBufferSizeNotExceeded = 
>> mode_lib->ms.PTEBufferSizeNotExceededPerState;
>> +    CalculateVMRowAndSwath_params->DCCMetaBufferSizeNotExceeded = 
>> mode_lib->ms.DCCMetaBufferSizeNotExceededPerState;
>> +    CalculateVMRowAndSwath_params->dpte_row_width_luma_ub = s- 
>> >dummy_integer_array[0];
>> +    CalculateVMRowAndSwath_params->dpte_row_width_chroma_ub = s- 
>> >dummy_integer_array[1];
>> +    CalculateVMRowAndSwath_params->dpte_row_height_luma = mode_lib- 
>> >ms.dpte_row_height;
>> +    CalculateVMRowAndSwath_params->dpte_row_height_chroma = mode_lib- 
>> >ms.dpte_row_height_chroma;
>> +    CalculateVMRowAndSwath_params->dpte_row_height_linear_luma = s- 
>> >dummy_integer_array[2]; // VBA_DELTA
>> +    CalculateVMRowAndSwath_params->dpte_row_height_linear_chroma = s- 
>> >dummy_integer_array[3]; // VBA_DELTA
>> +    CalculateVMRowAndSwath_params->meta_req_width = s- 
>> >dummy_integer_array[4];
>> +    CalculateVMRowAndSwath_params->meta_req_width_chroma = s- 
>> >dummy_integer_array[5];
>> +    CalculateVMRowAndSwath_params->meta_req_height = s- 
>> >dummy_integer_array[6];
>> +    CalculateVMRowAndSwath_params->meta_req_height_chroma = s- 
>> >dummy_integer_array[7];
>> +    CalculateVMRowAndSwath_params->meta_row_width = s- 
>> >dummy_integer_array[8];
>> +    CalculateVMRowAndSwath_params->meta_row_width_chroma = s- 
>> >dummy_integer_array[9];
>> +    CalculateVMRowAndSwath_params->meta_row_height = mode_lib- 
>> >ms.meta_row_height;
>> +    CalculateVMRowAndSwath_params->meta_row_height_chroma = mode_lib- 
>> >ms.meta_row_height_chroma;
>> +    CalculateVMRowAndSwath_params->vm_group_bytes = s- 
>> >dummy_integer_array[10];
>> +    CalculateVMRowAndSwath_params->dpte_group_bytes = mode_lib- 
>> >ms.dpte_group_bytes;
>> +    CalculateVMRowAndSwath_params->PixelPTEReqWidthY = s- 
>> >dummy_integer_array[11];
>> +    CalculateVMRowAndSwath_params->PixelPTEReqHeightY = s- 
>> >dummy_integer_array[12];
>> +    CalculateVMRowAndSwath_params->PTERequestSizeY = s- 
>> >dummy_integer_array[13];
>> +    CalculateVMRowAndSwath_params->PixelPTEReqWidthC = s- 
>> >dummy_integer_array[14];
>> +    CalculateVMRowAndSwath_params->PixelPTEReqHeightC = s- 
>> >dummy_integer_array[15];
>> +    CalculateVMRowAndSwath_params->PTERequestSizeC = s- 
>> >dummy_integer_array[16];
>> +    CalculateVMRowAndSwath_params->dpde0_bytes_per_frame_ub_l = s- 
>> >dummy_integer_array[17];
>> +    CalculateVMRowAndSwath_params->meta_pte_bytes_per_frame_ub_l = s- 
>> >dummy_integer_array[18];
>> +    CalculateVMRowAndSwath_params->dpde0_bytes_per_frame_ub_c = s- 
>> >dummy_integer_array[19];
>> +    CalculateVMRowAndSwath_params->meta_pte_bytes_per_frame_ub_c = s- 
>> >dummy_integer_array[20];
>> +    CalculateVMRowAndSwath_params->PrefetchSourceLinesY = mode_lib- 
>> >ms.PrefetchLinesYThisState;
>> +    CalculateVMRowAndSwath_params->PrefetchSourceLinesC = mode_lib- 
>> >ms.PrefetchLinesCThisState;
>> +    CalculateVMRowAndSwath_params->VInitPreFillY = mode_lib- 
>> >ms.PrefillY;
>> +    CalculateVMRowAndSwath_params->VInitPreFillC = mode_lib- 
>> >ms.PrefillC;
>> +    CalculateVMRowAndSwath_params->MaxNumSwathY = mode_lib- 
>> >ms.MaxNumSwY;
>> +    CalculateVMRowAndSwath_params->MaxNumSwathC = mode_lib- 
>> >ms.MaxNumSwC;
>> +    CalculateVMRowAndSwath_params->meta_row_bw = mode_lib- 
>> >ms.meta_row_bandwidth_this_state;
>> +    CalculateVMRowAndSwath_params->dpte_row_bw = mode_lib- 
>> >ms.dpte_row_bandwidth_this_state;
>> +    CalculateVMRowAndSwath_params->PixelPTEBytesPerRow = mode_lib- 
>> >ms.DPTEBytesPerRowThisState;
>> +    CalculateVMRowAndSwath_params->PDEAndMetaPTEBytesFrame = 
>> mode_lib->ms.PDEAndMetaPTEBytesPerFrameThisState;
>> +    CalculateVMRowAndSwath_params->MetaRowByte = mode_lib- 
>> >ms.MetaRowBytesThisState;
>> +    CalculateVMRowAndSwath_params->use_one_row_for_frame = mode_lib- 
>> >ms.use_one_row_for_frame_this_state;
>> +    CalculateVMRowAndSwath_params->use_one_row_for_frame_flip = 
>> mode_lib->ms.use_one_row_for_frame_flip_this_state;
>> +    CalculateVMRowAndSwath_params->UsesMALLForStaticScreen = s- 
>> >dummy_boolean_array[0];
>> +    CalculateVMRowAndSwath_params->PTE_BUFFER_MODE = s- 
>> >dummy_boolean_array[1];
>> +    CalculateVMRowAndSwath_params->BIGK_FRAGMENT_SIZE = s- 
>> >dummy_integer_array[21];
>> +}
>> +
>>   /// @brief The Mode Support function.
>>   dml_bool_t dml_core_mode_support(struct display_mode_lib_st *mode_lib)
>>   {
>> @@ -7683,69 +7753,7 @@ dml_bool_t dml_core_mode_support(struct 
>> display_mode_lib_st *mode_lib)
>>               s->SurfParameters[k].SwathHeightC = mode_lib- 
>> >ms.SwathHeightCThisState[k];
>>           }
>> -        CalculateVMRowAndSwath_params->NumberOfActiveSurfaces = 
>> mode_lib->ms.num_active_planes;
>> -        CalculateVMRowAndSwath_params->myPipe = s->SurfParameters;
>> -        CalculateVMRowAndSwath_params->SurfaceSizeInMALL = mode_lib- 
>> >ms.SurfaceSizeInMALL;
>> -        CalculateVMRowAndSwath_params->PTEBufferSizeInRequestsLuma = 
>> mode_lib->ms.ip.dpte_buffer_size_in_pte_reqs_luma;
>> -        CalculateVMRowAndSwath_params->PTEBufferSizeInRequestsChroma 
>> = mode_lib->ms.ip.dpte_buffer_size_in_pte_reqs_chroma;
>> -        CalculateVMRowAndSwath_params->DCCMetaBufferSizeBytes = 
>> mode_lib->ms.ip.dcc_meta_buffer_size_bytes;
>> -        CalculateVMRowAndSwath_params->UseMALLForStaticScreen = 
>> mode_lib->ms.cache_display_cfg.plane.UseMALLForStaticScreen;
>> -        CalculateVMRowAndSwath_params->UseMALLForPStateChange = 
>> mode_lib->ms.cache_display_cfg.plane.UseMALLForPStateChange;
>> -        CalculateVMRowAndSwath_params->MALLAllocatedForDCN = 
>> mode_lib->ms.soc.mall_allocated_for_dcn_mbytes;
>> -        CalculateVMRowAndSwath_params->SwathWidthY = mode_lib- 
>> >ms.SwathWidthYThisState;
>> -        CalculateVMRowAndSwath_params->SwathWidthC = mode_lib- 
>> >ms.SwathWidthCThisState;
>> -        CalculateVMRowAndSwath_params->GPUVMEnable = mode_lib- 
>> >ms.cache_display_cfg.plane.GPUVMEnable;
>> -        CalculateVMRowAndSwath_params->HostVMEnable = mode_lib- 
>> >ms.cache_display_cfg.plane.HostVMEnable;
>> -        CalculateVMRowAndSwath_params- 
>> >HostVMMaxNonCachedPageTableLevels = mode_lib- 
>> >ms.cache_display_cfg.plane.HostVMMaxPageTableLevels;
>> -        CalculateVMRowAndSwath_params->GPUVMMaxPageTableLevels = 
>> mode_lib->ms.cache_display_cfg.plane.GPUVMMaxPageTableLevels;
>> -        CalculateVMRowAndSwath_params->GPUVMMinPageSizeKBytes = 
>> mode_lib->ms.cache_display_cfg.plane.GPUVMMinPageSizeKBytes;
>> -        CalculateVMRowAndSwath_params->HostVMMinPageSize = mode_lib- 
>> >ms.soc.hostvm_min_page_size_kbytes * 1024;
>> -        CalculateVMRowAndSwath_params->PTEBufferModeOverrideEn = 
>> mode_lib->ms.cache_display_cfg.plane.PTEBufferModeOverrideEn;
>> -        CalculateVMRowAndSwath_params->PTEBufferModeOverrideVal = 
>> mode_lib->ms.cache_display_cfg.plane.PTEBufferMode;
>> -        CalculateVMRowAndSwath_params->PTEBufferSizeNotExceeded = 
>> mode_lib->ms.PTEBufferSizeNotExceededPerState;
>> -        CalculateVMRowAndSwath_params->DCCMetaBufferSizeNotExceeded = 
>> mode_lib->ms.DCCMetaBufferSizeNotExceededPerState;
>> -        CalculateVMRowAndSwath_params->dpte_row_width_luma_ub = s- 
>> >dummy_integer_array[0];
>> -        CalculateVMRowAndSwath_params->dpte_row_width_chroma_ub = s- 
>> >dummy_integer_array[1];
>> -        CalculateVMRowAndSwath_params->dpte_row_height_luma = 
>> mode_lib->ms.dpte_row_height;
>> -        CalculateVMRowAndSwath_params->dpte_row_height_chroma = 
>> mode_lib->ms.dpte_row_height_chroma;
>> -        CalculateVMRowAndSwath_params->dpte_row_height_linear_luma = 
>> s->dummy_integer_array[2]; // VBA_DELTA
>> -        CalculateVMRowAndSwath_params->dpte_row_height_linear_chroma 
>> = s->dummy_integer_array[3]; // VBA_DELTA
>> -        CalculateVMRowAndSwath_params->meta_req_width = s- 
>> >dummy_integer_array[4];
>> -        CalculateVMRowAndSwath_params->meta_req_width_chroma = s- 
>> >dummy_integer_array[5];
>> -        CalculateVMRowAndSwath_params->meta_req_height = s- 
>> >dummy_integer_array[6];
>> -        CalculateVMRowAndSwath_params->meta_req_height_chroma = s- 
>> >dummy_integer_array[7];
>> -        CalculateVMRowAndSwath_params->meta_row_width = s- 
>> >dummy_integer_array[8];
>> -        CalculateVMRowAndSwath_params->meta_row_width_chroma = s- 
>> >dummy_integer_array[9];
>> -        CalculateVMRowAndSwath_params->meta_row_height = mode_lib- 
>> >ms.meta_row_height;
>> -        CalculateVMRowAndSwath_params->meta_row_height_chroma = 
>> mode_lib->ms.meta_row_height_chroma;
>> -        CalculateVMRowAndSwath_params->vm_group_bytes = s- 
>> >dummy_integer_array[10];
>> -        CalculateVMRowAndSwath_params->dpte_group_bytes = mode_lib- 
>> >ms.dpte_group_bytes;
>> -        CalculateVMRowAndSwath_params->PixelPTEReqWidthY = s- 
>> >dummy_integer_array[11];
>> -        CalculateVMRowAndSwath_params->PixelPTEReqHeightY = s- 
>> >dummy_integer_array[12];
>> -        CalculateVMRowAndSwath_params->PTERequestSizeY = s- 
>> >dummy_integer_array[13];
>> -        CalculateVMRowAndSwath_params->PixelPTEReqWidthC = s- 
>> >dummy_integer_array[14];
>> -        CalculateVMRowAndSwath_params->PixelPTEReqHeightC = s- 
>> >dummy_integer_array[15];
>> -        CalculateVMRowAndSwath_params->PTERequestSizeC = s- 
>> >dummy_integer_array[16];
>> -        CalculateVMRowAndSwath_params->dpde0_bytes_per_frame_ub_l = 
>> s->dummy_integer_array[17];
>> -        CalculateVMRowAndSwath_params->meta_pte_bytes_per_frame_ub_l 
>> = s->dummy_integer_array[18];
>> -        CalculateVMRowAndSwath_params->dpde0_bytes_per_frame_ub_c = 
>> s->dummy_integer_array[19];
>> -        CalculateVMRowAndSwath_params->meta_pte_bytes_per_frame_ub_c 
>> = s->dummy_integer_array[20];
>> -        CalculateVMRowAndSwath_params->PrefetchSourceLinesY = 
>> mode_lib->ms.PrefetchLinesYThisState;
>> -        CalculateVMRowAndSwath_params->PrefetchSourceLinesC = 
>> mode_lib->ms.PrefetchLinesCThisState;
>> -        CalculateVMRowAndSwath_params->VInitPreFillY = mode_lib- 
>> >ms.PrefillY;
>> -        CalculateVMRowAndSwath_params->VInitPreFillC = mode_lib- 
>> >ms.PrefillC;
>> -        CalculateVMRowAndSwath_params->MaxNumSwathY = mode_lib- 
>> >ms.MaxNumSwY;
>> -        CalculateVMRowAndSwath_params->MaxNumSwathC = mode_lib- 
>> >ms.MaxNumSwC;
>> -        CalculateVMRowAndSwath_params->meta_row_bw = mode_lib- 
>> >ms.meta_row_bandwidth_this_state;
>> -        CalculateVMRowAndSwath_params->dpte_row_bw = mode_lib- 
>> >ms.dpte_row_bandwidth_this_state;
>> -        CalculateVMRowAndSwath_params->PixelPTEBytesPerRow = 
>> mode_lib->ms.DPTEBytesPerRowThisState;
>> -        CalculateVMRowAndSwath_params->PDEAndMetaPTEBytesFrame = 
>> mode_lib->ms.PDEAndMetaPTEBytesPerFrameThisState;
>> -        CalculateVMRowAndSwath_params->MetaRowByte = mode_lib- 
>> >ms.MetaRowBytesThisState;
>> -        CalculateVMRowAndSwath_params->use_one_row_for_frame = 
>> mode_lib->ms.use_one_row_for_frame_this_state;
>> -        CalculateVMRowAndSwath_params->use_one_row_for_frame_flip = 
>> mode_lib->ms.use_one_row_for_frame_flip_this_state;
>> -        CalculateVMRowAndSwath_params->UsesMALLForStaticScreen = s- 
>> >dummy_boolean_array[0];
>> -        CalculateVMRowAndSwath_params->PTE_BUFFER_MODE = s- 
>> >dummy_boolean_array[1];
>> -        CalculateVMRowAndSwath_params->BIGK_FRAGMENT_SIZE = s- 
>> >dummy_integer_array[21];
>> +        set_vm_row_and_swath_parameters(mode_lib);
>>           CalculateVMRowAndSwath(&mode_lib->scratch,
>>               CalculateVMRowAndSwath_params);
> 


  reply	other threads:[~2025-12-02 16:31 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-12-02 10:21 [PATCH 0/6] DC Patches Dec 08 2025 Chenyu Chen
2025-12-02 10:21 ` [PATCH 1/6] drm/amd/display: Defer transitions from minimal state to final state Chenyu Chen
2025-12-02 10:21 ` [PATCH 2/6] drm/amd/display: Remove periodic detection callbacks from dcn35+ Chenyu Chen
2025-12-02 10:21 ` [PATCH 3/6] drm/amd/display: Fixes for S0i3 exit Chenyu Chen
2025-12-02 10:21 ` [PATCH 4/6] drm/amd/display: Refactor dml_core_mode_support to reduce stack frame Chenyu Chen
2025-12-02 16:29   ` Alex Hung
2025-12-02 16:31     ` Alex Hung [this message]
2025-12-03  9:42       ` Chen, Chen-Yu
2025-12-02 10:21 ` [PATCH 5/6] drm/amd/display: Additional info from DML for DMU Chenyu Chen
2025-12-02 10:21 ` [PATCH 6/6] drm/amd/display: Promote DC to 3.2.362 Chenyu Chen
2025-12-08 13:58 ` [PATCH 0/6] DC Patches Dec 08 2025 Wheeler, Daniel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=7eba047f-b427-4191-94c0-eda17bbb99ed@amd.com \
    --to=alex.hung@amd.com \
    --cc=Ray.Wu@amd.com \
    --cc=amd-gfx@lists.freedesktop.org \
    --cc=aurabindo.pillai@amd.com \
    --cc=austin.zheng@amd.com \
    --cc=chen-yu.chen@amd.com \
    --cc=chiahsuan.chung@amd.com \
    --cc=daniel.wheeler@amd.com \
    --cc=harry.wentland@amd.com \
    --cc=ivan.lipski@amd.com \
    --cc=jerry.zuo@amd.com \
    --cc=roman.li@amd.com \
    --cc=sunpeng.li@amd.com \
    --cc=wayne.lin@amd.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox