All of lore.kernel.org
 help / color / mirror / Atom feed
* [bug report] drm/amd: Enable SMU 15_0_0 support
@ 2026-08-08 11:44 Dan Carpenter
  0 siblings, 0 replies; only message in thread
From: Dan Carpenter @ 2026-08-08 11:44 UTC (permalink / raw)
  To: Pratik Vishwakarma; +Cc: amd-gfx, SHANMUGAM, SRINIVASAN

Hello Pratik Vishwakarma,

Commit c7fc0f372374 ("drm/amd: Enable SMU 15_0_0 support") from Dec
5, 2025 (linux-next), leads to the following Smatch static checker
warning:

	drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu15/smu_v15_0.c:135 smu_v15_0_load_microcode()
	error: uninitialized symbol 'mp1_fw_flags'.

drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu15/smu_v15_0.c
    109 int smu_v15_0_load_microcode(struct smu_context *smu)
    110 {
    111         struct amdgpu_device *adev = smu->adev;
    112         const uint32_t *src;
    113         const struct smc_firmware_header_v1_0 *hdr;
    114         uint32_t addr_start = MP1_SRAM;
    115         uint32_t i;
    116         uint32_t smc_fw_size;
    117         uint32_t mp1_fw_flags;
    118 
    119         hdr = (const struct smc_firmware_header_v1_0 *) adev->pm.fw->data;
    120         src = (const uint32_t *)(adev->pm.fw->data +
    121                                  le32_to_cpu(hdr->header.ucode_array_offset_bytes));
    122         smc_fw_size = hdr->header.ucode_size_bytes;
    123 
    124         for (i = 1; i < smc_fw_size/4 - 1; i++) {
    125                 WREG32_PCIE(addr_start, src[i]);
    126                 addr_start += 4;
    127         }
    128 
    129 
    130         for (i = 0; i < adev->usec_timeout; i++) {
    131                 if (smu->is_apu)
    132                         mp1_fw_flags = RREG32_PCIE(MP1_Public |
    133                                                    (smnMP1_FIRMWARE_FLAGS & 0xffffffff));

mp1_fw_flags is uninitialized if smu->is_apu is false.

    134 
--> 135                 if ((mp1_fw_flags & MP1_CRU1_MP1_FIRMWARE_FLAGS__INTERRUPTS_ENABLED_MASK) >>
    136                     MP1_CRU1_MP1_FIRMWARE_FLAGS__INTERRUPTS_ENABLED__SHIFT)
    137                         break;
    138                 udelay(1);
    139         }
    140 
    141         if (i == adev->usec_timeout)
    142                 return -ETIME;
    143 
    144         return 0;
    145 }

This email is a free service from the Smatch-CI project [smatch.sf.net].

regards,
dan carpenter

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2026-08-10  6:42 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-08 11:44 [bug report] drm/amd: Enable SMU 15_0_0 support Dan Carpenter

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.