Hi,
I was wondering if the DLL blocks commands larger than 4 bits? I'm trying to use the SDK API with our silicon (which requires IR len = without success.
It seems that the DLL blocks the operation. I am viewing the signal in logic analyzer I don't see the JTAG transaction.
Regards,
Dotan
Bellow is a snapshot of what I'm trying to do
static void _SYSCTLConfig(U8 ctlBitmap) {
U8 TMS = 0x1f;
U8 SYSCTLInstruction = ((0xf << 4) | 4);
U8 InstLen = 8;
U8 aTDI[1] = { 0 };
int BitPos;
U32 val;
//
// Reset Tap controller and go idle
//
JLINKARM_JTAG_StoreRaw(&aTDI[0], &TMS, 6);
JLINKARM_JTAG_StoreInst(&SYSCTLInstruction, InstLen);
aTDI[0] = ctlBitmap;
JLINKARM_JTAG_StoreData(&aTDI[0], 8);
//
// Transfer output buffers to JTAG device and fill input buffer
//
JLINKARM_JTAG_SyncBits();
}
I was wondering if the DLL blocks commands larger than 4 bits? I'm trying to use the SDK API with our silicon (which requires IR len = without success.
It seems that the DLL blocks the operation. I am viewing the signal in logic analyzer I don't see the JTAG transaction.
Regards,
Dotan
Bellow is a snapshot of what I'm trying to do
static void _SYSCTLConfig(U8 ctlBitmap) {
U8 TMS = 0x1f;
U8 SYSCTLInstruction = ((0xf << 4) | 4);
U8 InstLen = 8;
U8 aTDI[1] = { 0 };
int BitPos;
U32 val;
//
// Reset Tap controller and go idle
//
JLINKARM_JTAG_StoreRaw(&aTDI[0], &TMS, 6);
JLINKARM_JTAG_StoreInst(&SYSCTLInstruction, InstLen);
aTDI[0] = ctlBitmap;
JLINKARM_JTAG_StoreData(&aTDI[0], 8);
//
// Transfer output buffers to JTAG device and fill input buffer
//
JLINKARM_JTAG_SyncBits();
}