mirror of
https://github.com/torvalds/linux.git
synced 2026-05-12 16:18:45 +02:00
drm/amdgpu/discovery: Add braces to case statements in amdgpu_discovery_table_check()
When building with a version of clang that supports the narrower '-fms-anonymous-structs' (as opposed to the wider '-fms-extensions') along with the associated kernel support (such as in next-20260312 [1]), there are warnings (or errors with CONFIG_WERROR=y / W=e) from the switch statement added by commit47ab777c16("drm/amdgpu/discovery: use common function to check discovery table"). drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c:560:3: error: label followed by a declaration is a C23 extension [-Werror,-Wc23-extensions] 560 | struct ip_discovery_header *ihdr = | ^ drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c:568:3: error: label followed by a declaration is a C23 extension [-Werror,-Wc23-extensions] 568 | struct gpu_info_header *ghdr = | ^ drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c:576:3: error: label followed by a declaration is a C23 extension [-Werror,-Wc23-extensions] 576 | struct harvest_info_header *hhdr = | ^ drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c:584:3: error: label followed by a declaration is a C23 extension [-Werror,-Wc23-extensions] 584 | struct vcn_info_header *vhdr = | ^ drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c:592:3: error: label followed by a declaration is a C23 extension [-Werror,-Wc23-extensions] 592 | struct mall_info_header *mhdr = | ^ If '-fms-extensions' were not present, this would be a hard error in older clang versions. Add braces to the case statements that declare variables to clear up the warnings. Fixes:47ab777c16("drm/amdgpu/discovery: use common function to check discovery table") Link:0d3fccf68d[1] Signed-off-by: Nathan Chancellor <nathan@kernel.org> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
a0b2afa4c3
commit
eb422f3bbd
|
|
@ -556,7 +556,7 @@ static int amdgpu_discovery_table_check(struct amdgpu_device *adev,
|
|||
checksum = le16_to_cpu(info->checksum);
|
||||
|
||||
switch (table_id) {
|
||||
case IP_DISCOVERY:
|
||||
case IP_DISCOVERY: {
|
||||
struct ip_discovery_header *ihdr =
|
||||
(struct ip_discovery_header *)(discovery_bin + offset);
|
||||
act_val = le32_to_cpu(ihdr->signature);
|
||||
|
|
@ -564,7 +564,8 @@ static int amdgpu_discovery_table_check(struct amdgpu_device *adev,
|
|||
table_size = le16_to_cpu(ihdr->size);
|
||||
table_name = "data table";
|
||||
break;
|
||||
case GC:
|
||||
}
|
||||
case GC: {
|
||||
struct gpu_info_header *ghdr =
|
||||
(struct gpu_info_header *)(discovery_bin + offset);
|
||||
act_val = le32_to_cpu(ghdr->table_id);
|
||||
|
|
@ -572,7 +573,8 @@ static int amdgpu_discovery_table_check(struct amdgpu_device *adev,
|
|||
table_size = le16_to_cpu(ghdr->size);
|
||||
table_name = "gc table";
|
||||
break;
|
||||
case HARVEST_INFO:
|
||||
}
|
||||
case HARVEST_INFO: {
|
||||
struct harvest_info_header *hhdr =
|
||||
(struct harvest_info_header *)(discovery_bin + offset);
|
||||
act_val = le32_to_cpu(hhdr->signature);
|
||||
|
|
@ -580,7 +582,8 @@ static int amdgpu_discovery_table_check(struct amdgpu_device *adev,
|
|||
table_size = sizeof(struct harvest_table);
|
||||
table_name = "harvest table";
|
||||
break;
|
||||
case VCN_INFO:
|
||||
}
|
||||
case VCN_INFO: {
|
||||
struct vcn_info_header *vhdr =
|
||||
(struct vcn_info_header *)(discovery_bin + offset);
|
||||
act_val = le32_to_cpu(vhdr->table_id);
|
||||
|
|
@ -588,7 +591,8 @@ static int amdgpu_discovery_table_check(struct amdgpu_device *adev,
|
|||
table_size = le32_to_cpu(vhdr->size_bytes);
|
||||
table_name = "vcn table";
|
||||
break;
|
||||
case MALL_INFO:
|
||||
}
|
||||
case MALL_INFO: {
|
||||
struct mall_info_header *mhdr =
|
||||
(struct mall_info_header *)(discovery_bin + offset);
|
||||
act_val = le32_to_cpu(mhdr->table_id);
|
||||
|
|
@ -597,6 +601,7 @@ static int amdgpu_discovery_table_check(struct amdgpu_device *adev,
|
|||
table_name = "mall table";
|
||||
check_table = false;
|
||||
break;
|
||||
}
|
||||
default:
|
||||
dev_err(adev->dev, "invalid ip discovery table id %d specified\n", table_id);
|
||||
check_table = false;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user