Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[chip,dv] Wait for JTAG connection in chip_sw_base_vseq
The wait_lc_status() task does a DMI read over JTAG to figure out the current state of lc_ctrl. This requires pinmux to route the JTAG signals to LC_CTRL and things get rather confused if we run this task before the routing has happened. In normal use, the JTAG driver will send an IR command to switch address to the DMI address. Then it will send a DR command to do the DMI read/write. On the next DMI command, it can avoid the silly extra IR command because it knows we're already pointing at the DMI address. Of course, this doesn't work if the JTAG signals got squashed. In that case, it will not know that IR hasn't changed, so it will send repeated DR commands expecting to see a particular lc_ctrl status come out. But that won't happen because we're not actually looking at the DMI register at all. Oops! This commit adds a wait to make sure that JTAG has actually been connected up. Signed-off-by: Rupert Swarbrick <rswarbrick@lowrisc.org>
- Loading branch information