Skip to content

Commit

Permalink
drm/nouveau/clock: fix missing pll type/addr when matching default entry
Browse files Browse the repository at this point in the history
This issue is a regression from 70790f4,
and causes us to miss a special-case for C51 (NV4E) chipsets and return
the wrong reference frequency for the VPLLs.

Should fix fdo#56202

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
  • Loading branch information
Ben Skeggs committed Oct 22, 2012
1 parent 2c25b73 commit 5e5a195
Showing 1 changed file with 4 additions and 6 deletions.
10 changes: 4 additions & 6 deletions drivers/gpu/drm/nouveau/core/subdev/bios/pll.c
Original file line number Diff line number Diff line change
Expand Up @@ -157,11 +157,10 @@ pll_map_reg(struct nouveau_bios *bios, u32 reg, u32 *type, u8 *ver, u8 *len)
while (map->reg) {
if (map->reg == reg && *ver >= 0x20) {
u16 addr = (data += hdr);
*type = map->type;
while (cnt--) {
if (nv_ro32(bios, data) == map->reg) {
*type = map->type;
if (nv_ro32(bios, data) == map->reg)
return data;
}
data += *len;
}
return addr;
Expand Down Expand Up @@ -200,11 +199,10 @@ pll_map_type(struct nouveau_bios *bios, u8 type, u32 *reg, u8 *ver, u8 *len)
while (map->reg) {
if (map->type == type && *ver >= 0x20) {
u16 addr = (data += hdr);
*reg = map->reg;
while (cnt--) {
if (nv_ro32(bios, data) == map->reg) {
*reg = map->reg;
if (nv_ro32(bios, data) == map->reg)
return data;
}
data += *len;
}
return addr;
Expand Down

0 comments on commit 5e5a195

Please sign in to comment.