Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/radeon/dpm/atom: fix broken gcc harder

See bugs:
https://bugs.freedesktop.org/show_bug.cgi?id=66932
https://bugs.freedesktop.org/show_bug.cgi?id=66972
https://bugs.freedesktop.org/show_bug.cgi?id=66945

Signed-off-by: Alex Deucher <alexander.deucher@amd.com>

+6 -3
+6 -3
drivers/gpu/drm/radeon/radeon_atombios.c
··· 3699 3699 (ATOM_MEMORY_SETTING_DATA_BLOCK *) 3700 3700 ((u8 *)reg_block + (2 * sizeof(u16)) + 3701 3701 le16_to_cpu(reg_block->usRegIndexTblSize)); 3702 + ATOM_INIT_REG_INDEX_FORMAT *format = &reg_block->asRegIndexBuf[0]; 3702 3703 num_entries = (u8)((le16_to_cpu(reg_block->usRegIndexTblSize)) / 3703 3704 sizeof(ATOM_INIT_REG_INDEX_FORMAT)) - 1; 3704 3705 if (num_entries > VBIOS_MC_REGISTER_ARRAY_SIZE) 3705 3706 return -EINVAL; 3706 3707 while (i < num_entries) { 3707 - if (reg_block->asRegIndexBuf[i].ucPreRegDataLength & ACCESS_PLACEHOLDER) 3708 + if (format->ucPreRegDataLength & ACCESS_PLACEHOLDER) 3708 3709 break; 3709 3710 reg_table->mc_reg_address[i].s1 = 3710 - (u16)(le16_to_cpu(reg_block->asRegIndexBuf[i].usRegIndex)); 3711 + (u16)(le16_to_cpu(format->usRegIndex)); 3711 3712 reg_table->mc_reg_address[i].pre_reg_data = 3712 - (u8)(reg_block->asRegIndexBuf[i].ucPreRegDataLength); 3713 + (u8)(format->ucPreRegDataLength); 3713 3714 i++; 3715 + format = (ATOM_INIT_REG_INDEX_FORMAT *) 3716 + ((u8 *)format + sizeof(ATOM_INIT_REG_INDEX_FORMAT)); 3714 3717 } 3715 3718 reg_table->last = i; 3716 3719 while ((*(u32 *)reg_data != END_OF_REG_DATA_BLOCK) &&