Ver código fonte

drm/radeon: fix typo in radeon_atom_init_mc_reg_table()

Bad pointer math.  Fixes hangs in state transitions with
BTC+ asics.

Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Alex Deucher 12 anos atrás
pai
commit
4da18e26e0
1 arquivos alterados com 2 adições e 1 exclusões
  1. 2 1
      drivers/gpu/drm/radeon/radeon_atombios.c

+ 2 - 1
drivers/gpu/drm/radeon/radeon_atombios.c

@@ -3732,7 +3732,8 @@ int radeon_atom_init_mc_reg_table(struct radeon_device *rdev,
 							}
 							}
 							num_ranges++;
 							num_ranges++;
 						}
 						}
-						reg_data += le16_to_cpu(reg_block->usRegDataBlkSize);
+						reg_data = (ATOM_MEMORY_SETTING_DATA_BLOCK *)
+							((u8 *)reg_data + le16_to_cpu(reg_block->usRegDataBlkSize));
 					}
 					}
 					if (*(u32 *)reg_data != END_OF_REG_DATA_BLOCK)
 					if (*(u32 *)reg_data != END_OF_REG_DATA_BLOCK)
 						return -EINVAL;
 						return -EINVAL;