drm/nouveau/bios/init: handle INIT_RESET_BEGUN devinit opcode

Signal that the reset sequence has begun.

This opcode signals that the software reset sequence has begun.
Ordinarily, no actual operations are performed by the opcode.
However it allows for possible software work arounds by devinit
engines in software agents other than the VBIOS, such as the resman,
FCODE, and EFI driver.

Signed-off-by: Rhys Kidd <rhyskidd@gmail.com>
Reviewed-by: Lyude Paul <lyude@redhat.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:
Rhys Kidd 2019-06-03 00:13:14 +10:00 committed by Ben Skeggs
parent 607db661b7
commit 66cbcc72ae

View File

@ -1934,6 +1934,17 @@ init_ram_restrict_pll(struct nvbios_init *init)
}
}
/**
* INIT_RESET_BEGUN - opcode 0x8c
*
*/
static void
init_reset_begun(struct nvbios_init *init)
{
trace("RESET_BEGUN\n");
init->offset += 1;
}
/**
* INIT_GPIO - opcode 0x8e
*
@ -2260,7 +2271,7 @@ static struct nvbios_init_opcode {
[0x79] = { init_pll },
[0x7a] = { init_zm_reg },
[0x87] = { init_ram_restrict_pll },
[0x8c] = { init_reserved },
[0x8c] = { init_reset_begun },
[0x8d] = { init_reserved },
[0x8e] = { init_gpio },
[0x8f] = { init_ram_restrict_zm_reg_group },