stacksmashing / tamarin-firmware

GNU General Public License v3.0
447 stars 52 forks source link

Flush vendor after write #16

Open spotlightishere opened 1 year ago

spotlightishere commented 1 year ago

Recent versions of tinyUSB, such as what's currently included in recent versions of pico-sdk, appear to have changed to require flushing after writes. Without this, nothing is (immediately) written in response from the probe, breaking JTAG. This PR applies a fix similar to what picoprobe applied upstream.

(Is this the USB incompatibility mentioned in the README? With this applied, JTAG and other functionality appears to otherwise work as prior.)

nezza commented 1 year ago

Thank you, I'll test if this is the incompatibility!

tjkr0wn commented 1 year ago

Just tried this fix and it didn't really do anything. I'm using a T8015, demoting with checkra1n, disconnecting and connecting to the Tamarin cable, and openOCD still refuses to connect with the same error as issue #4.

nezza commented 1 year ago

@tjkr0wn Your issue is unrelated to what this PR is about

tjkr0wn commented 1 year ago

@tjkr0wn Your issue is unrelated to what this PR is about

The author of the PR implied JTAG functionality may have been broken because of the tinyUSB change. After ruling out all possible causes for my issue, I assumed this pertained to it and tried it. Would just like to say that my host (ASi) is probably the culprit, as someone else got T8015 to work, so ignore my comments.