Reviewed-by: Edward O'Callaghan <funfunctor at folklore1984.net> On 12/15/2016 07:52 AM, Nils Wallménius wrote: > This is a left over from radeon, amdgpu doesn't support any > non-atombios parts and amdgpu_device_init would bail if the > check for atombios failed anyway. > > Signed-off-by: Nils Wallménius <nils.wallmenius at gmail.com> > --- > drivers/gpu/drm/amd/amdgpu/amdgpu.h | 1 - > drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c | 10 ++++------ > drivers/gpu/drm/amd/amdgpu/amdgpu_bios.c | 12 ++++++------ > drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 8 +------- > drivers/gpu/drm/amd/amdgpu/amdgpu_display.c | 10 ++++------ > drivers/gpu/drm/amd/amdgpu/amdgpu_i2c.c | 3 +-- > drivers/gpu/drm/amd/amdgpu/atombios_encoders.c | 6 ------ > 7 files changed, 16 insertions(+), 34 deletions(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h > index 29d3a91..11de710 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h > @@ -1330,7 +1330,6 @@ struct amdgpu_device { > > /* BIOS */ > uint8_t *bios; > - bool is_atom_bios; > struct amdgpu_bo *stollen_vga_memory; > uint32_t bios_scratch[AMDGPU_BIOS_NUM_SCRATCH]; > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c > index 5796539..ef79551 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c > @@ -672,12 +672,10 @@ int amdgpu_acpi_init(struct amdgpu_device *adev) > > if ((enc->devices & (ATOM_DEVICE_LCD_SUPPORT)) && > enc->enc_priv) { > - if (adev->is_atom_bios) { > - struct amdgpu_encoder_atom_dig *dig = enc->enc_priv; > - if (dig->bl_dev) { > - atif->encoder_for_bl = enc; > - break; > - } > + struct amdgpu_encoder_atom_dig *dig = enc->enc_priv; > + if (dig->bl_dev) { > + atif->encoder_for_bl = enc; > + break; > } > } > } > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_bios.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_bios.c > index b7e2762..1103259 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_bios.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_bios.c > @@ -387,15 +387,15 @@ bool amdgpu_get_bios(struct amdgpu_device *adev) > if (!bios_header_start) { > goto free_bios; > } > + > + /* Must be an ATOMBIOS */ > tmp = bios_header_start + 4; > - if (!memcmp(adev->bios + tmp, "ATOM", 4) || > - !memcmp(adev->bios + tmp, "MOTA", 4)) { > - adev->is_atom_bios = true; > - } else { > - adev->is_atom_bios = false; > + if (memcmp(adev->bios + tmp, "ATOM", 4) && > + memcmp(adev->bios + tmp, "MOTA", 4)) { > + goto free_bios; > } > > - DRM_DEBUG("%sBIOS detected\n", adev->is_atom_bios ? "ATOM" : "COM"); > + DRM_DEBUG("ATOMBIOS detected\n"); > return true; > free_bios: > kfree(adev->bios); > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c > index d907411..dc017d1 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c > @@ -1603,7 +1603,6 @@ int amdgpu_device_init(struct amdgpu_device *adev, > adev->pdev = pdev; > adev->flags = flags; > adev->asic_type = flags & AMD_ASIC_MASK; > - adev->is_atom_bios = false; > adev->usec_timeout = AMDGPU_MAX_USEC_TIMEOUT; > adev->mc.gtt_size = 512 * 1024 * 1024; > adev->accel_working = false; > @@ -1718,12 +1717,7 @@ int amdgpu_device_init(struct amdgpu_device *adev, > r = -EINVAL; > goto failed; > } > - /* Must be an ATOMBIOS */ > - if (!adev->is_atom_bios) { > - dev_err(adev->dev, "Expecting atombios for GPU\n"); > - r = -EINVAL; > - goto failed; > - } > + > r = amdgpu_atombios_init(adev); > if (r) { > dev_err(adev->dev, "amdgpu_atombios_init failed\n"); > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c > index 741144f..d235125 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c > @@ -582,12 +582,10 @@ int amdgpu_modeset_create_props(struct amdgpu_device *adev) > { > int sz; > > - if (adev->is_atom_bios) { > - adev->mode_info.coherent_mode_property = > - drm_property_create_range(adev->ddev, 0 , "coherent", 0, 1); > - if (!adev->mode_info.coherent_mode_property) > - return -ENOMEM; > - } > + adev->mode_info.coherent_mode_property = > + drm_property_create_range(adev->ddev, 0 , "coherent", 0, 1); > + if (!adev->mode_info.coherent_mode_property) > + return -ENOMEM; > > adev->mode_info.load_detect_property = > drm_property_create_range(adev->ddev, 0, "load detection", 0, 1); > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_i2c.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_i2c.c > index 91d3673..f273999 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_i2c.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_i2c.c > @@ -231,8 +231,7 @@ void amdgpu_i2c_init(struct amdgpu_device *adev) > if (amdgpu_hw_i2c) > DRM_INFO("hw_i2c forced on, you may experience display detection problems!\n"); > > - if (adev->is_atom_bios) > - amdgpu_atombios_i2c_init(adev); > + amdgpu_atombios_i2c_init(adev); > } > > /* remove all the buses */ > diff --git a/drivers/gpu/drm/amd/amdgpu/atombios_encoders.c b/drivers/gpu/drm/amd/amdgpu/atombios_encoders.c > index c32eca2..2af26d2 100644 > --- a/drivers/gpu/drm/amd/amdgpu/atombios_encoders.c > +++ b/drivers/gpu/drm/amd/amdgpu/atombios_encoders.c > @@ -181,9 +181,6 @@ void amdgpu_atombios_encoder_init_backlight(struct amdgpu_encoder *amdgpu_encode > if (!amdgpu_encoder->enc_priv) > return; > > - if (!adev->is_atom_bios) > - return; > - > if (!(adev->mode_info.firmware_flags & ATOM_BIOS_INFO_BL_CONTROLLED_BY_GPU)) > return; > > @@ -236,9 +233,6 @@ amdgpu_atombios_encoder_fini_backlight(struct amdgpu_encoder *amdgpu_encoder) > if (!amdgpu_encoder->enc_priv) > return; > > - if (!adev->is_atom_bios) > - return; > - > if (!(adev->mode_info.firmware_flags & ATOM_BIOS_INFO_BL_CONTROLLED_BY_GPU)) > return; > > -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 819 bytes Desc: OpenPGP digital signature URL: <https://lists.freedesktop.org/archives/amd-gfx/attachments/20161215/75312b99/attachment.sig>