This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TPS65987D: Loading Configuration on TPS65987D

Part Number: TPS65987D
Other Parts Discussed in Thread: TUSB542, TPS65987, TPS65988,

Tool/software:

In our design we do not have SPI Flash for the TPS65987, and we have the TUSB542 connected as an i2c slave. We would like to load configuration to the TPS659x at board boot time over i2c.
We wrote u-boot code to patch the TPS659x with the "low region" C header file export from the configuration tool and the PTCs/PTCd/PTCc 4cc commands.

static int tps_4cc_command(struct udevice *i2c_dev, const char *cmd, const char *data, int len) {
    int ret;
    u8 buf[len+1];

    printf("%s: input data %u bytes: ", cmd, len);

    for(int i = 0; i < len; i++) {
        printf("%02x", data[i]);
    }
    printf("\n");
    if(len) {
        buf[0] = len;
        memcpy(&buf[1], data, len);
        ret = dm_i2c_write(i2c_dev, 0x9, (u8*)data, len);
        if(ret) {
            printf("%s i2c command failed, err %d\n", __func__, ret);
        }
    }

    buf[0] = 5;
    memcpy(&buf[1], cmd, 4);
    ret = dm_i2c_write(i2c_dev, 0x8, buf, 5);
    if(ret) {
        printf("%s i2c command failed, err %d\n", __func__, ret);
    }
    // wait for command buffer to clear, that's how we know the command is done
    int timeout = 10;
    while(timeout != 0) {
        ret = dm_i2c_read(i2c_dev, 0x8, buf, 4);
        if(buf[1] == '!') {
            printf("%s: !CMD (invalid command)\n", cmd);
            return -1;
        }
        if(buf[1] == '\0') {
            break;
        }
        udelay(50000);
        timeout--;
    }
    return ret;
}
#pragma pack(push, 1)
typedef struct PTCq_decode {
    u8  TaskResponse;
    u8  PatchReturnCode;
    u8  PatchLoadingState;
    u8  Reserved_0;
    u16 TotalDataTransferred;
    u16 DevicePatchDataTransferred;
    u16 ApplicationConfigurationDataTransferred;
    u8  DevicePatchState;
    u8  DevicePatchSource;
    u8  ApplicationConfigurationPatchState;
    u8  ApplicationConfigurationPatchSource;
} PTCq_decode_t;

typedef struct PTCs_decode {
    u8  TaskResponse;
    u8  PatchStartStatus;
    u8  DevicePatchStartStatus;
    u8  AppConfigStartStatus;
} PTCs_decode_t;

typedef struct PTCd_decode {
    u8  TaskResponse;
    u8  TransferStatus;
    u8  PatchLoadingState;
    u8  Reserved_0;
    u16 TotalDataTransferred;
    u16 DevicePatchDataTransferred;
    u16 ApplicationConfigurationDataTransferred;
} PTCd_decode_t;

typedef struct PTCc_decode {
    u8  TaskResponse;
    u8  Reserved_0;
    u8  DevicePatchCompleteStatus;
    u8  AppConfigPatchCompleteStatus;
} PTCc_decode_t;

#pragma pack(pop)
#define P(x) do{ if(dec->x) printf(#x": 0x%02x\n",dec->x); } while(0)


static int tps_4cc_result(struct udevice *i2c_dev, const char *cmd, int len)
{
    u8 buf[len+1]; // +1 for null termination of certain string returns
    memset(buf, 0, len+1);
    int ret;
    ret = dm_i2c_read(i2c_dev, 0x9, buf, len);
    if(ret) {
        printf("%s i2c command failed, err %d\n", __func__, ret);
        return -1;
    }
    printf("%s: returns %u bytes, showing %u: ", cmd, buf[0], len);

    // 1st byte is the size of the return, skip it
    for(int i = 1; i < len; i++) {
        printf("%02x", buf[i]);
    }
    printf("\n");
    if (strncmp(cmd, "PTCq", 4) == 0) {
        PTCq_decode_t *dec = (PTCq_decode_t*) &buf[1];
        P(TaskResponse);
        P(PatchReturnCode);
        P(PatchLoadingState);
        P(Reserved_0);
        P(TotalDataTransferred);
        P(DevicePatchDataTransferred);
        P(ApplicationConfigurationDataTransferred);
        P(DevicePatchState);
        P(DevicePatchSource);
        P(ApplicationConfigurationPatchState);
        P(ApplicationConfigurationPatchSource);
    }
    if (strncmp(cmd, "PTCs", 4) == 0) {
        PTCs_decode_t *dec = (PTCs_decode_t*) &buf[1];
        P(TaskResponse);
        P(PatchStartStatus);
        P(DevicePatchStartStatus);
        P(AppConfigStartStatus);
    }
//drop printing the download status
    if (strncmp(cmd, "PTCd", 4) == 0) {
        PTCd_decode_t *dec = (PTCd_decode_t*) &buf[1];
        P(TaskResponse);
        P(TransferStatus);
        P(PatchLoadingState);
        P(Reserved_0);
        P(TotalDataTransferred);
        P(DevicePatchDataTransferred);
        P(ApplicationConfigurationDataTransferred);
    }
    if (strncmp(cmd, "PTCc", 4) == 0) {
        PTCc_decode_t *dec = (PTCc_decode_t*) &buf[1];
        P(TaskResponse);
        P(Reserved_0);
        P(DevicePatchCompleteStatus);
        P(AppConfigPatchCompleteStatus);
    }
    return 0;
}
static int tps_patch(struct udevice *i2c_dev, const char* patch, int len)
{
        int ret;
    const char input = 0x3; // 1 app config, 2 is device patch 0x3 is both
    u8 buf[16];

    tps_4cc_command(i2c_dev, "PTCs", &input, 1);
    tps_4cc_result(i2c_dev, "PTCs", 4);

    for(int i = 0; i < len; i+=64) {
        int size = 64;
        if (len-i < 64) {
            printf(" remainder is %u\n", len-i);
            size = len-i;
        }

        tps_4cc_command(i2c_dev, "PTCd", &patch[i], size);
        tps_4cc_result(i2c_dev, "PTCd", 10);
        printf("wrote %u bytes at %u\n", size, i);
    }

    tps_4cc_command(i2c_dev, "PTCc", NULL, 0);
    tps_4cc_result(i2c_dev, "PTCc", 4);

    return -0;
}

The patch process completes with PatchLoadingState: 0x0a (completed successfully) and DevicePatchState: 0x06 (Not a patch).
We expected it to include both an AppConf and a Device Patch, and that we could see the configuration update through the Customer Use register, but we cannot see any change here.
  1. are we using the correct file for patching? We are the tps6598x_lowregion_array[] generated as in the screenshot.
  2. Is there any better documentation detailing patch creation and programming than the TPS65987 Host Interface pdf?
  3. why doesn't the "TotalDataTransferred" increase to 13372 bytes during the PTCd command when the patch file is 13372 bytes long? (see log)
  4. The PTCs command allows us to specify either AppConf, Device, both or none in the patch file. how do we distinguish Application Configuration and Device Patch in the configuration tool? What does it mean to provide "none" in the patch file?

PTCs: input data 1 bytes: 03
PTCs: returns 64 bytes, showing 4: 000000
PTCd: input data 64 bytes: 0100e0acfeffffff80080000c02b0000c272f9e000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff101007f7ffffffffffffffff
PTCd: returns 64 bytes, showing 10: 000002000100000000
PatchLoadingState: 0x02
TotalDataTransferred: 0x01
wrote 64 bytes at 0
PTCd: input data 64 bytes: ffffffff0006000080000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
PTCd: returns 64 bytes, showing 10: 000003004000000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x40
wrote 64 bytes at 64
PTCd: input data 64 bytes: 0100ac02686d4c38000000000000000043535431fa6432011a00060708020000000000000f000003280000000f0100034143454c0f16000a0800000200000000
PTCd: returns 64 bytes, showing 10: 000003004100000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x41
wrote 64 bytes at 128
PTCd: input data 64 bytes: 0000000f17000a08000002000000000000000f27000d01000a00000080001414000000780f280006c858b6df0100000f290003c25411400f32003f04fc000055
PTCd: returns 64 bytes, showing 10: 000003004100000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x41
wrote 64 bytes at 192
PTCd: input data 64 bytes: 0000002c9101012cd102002cb104002c410600000000000000000000000000009001000000000000000000000000000000000000000000000000000f33003802
PTCd: returns 64 bytes, showing 10: 000003004100000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x41
wrote 64 bytes at 256
PTCd: input data 64 bytes: 5a9001365a90019900000000000000000000000000000000000000002c6901402c69014000000000000000000000000000000000000000000f37000b6f3d3d00
PTCd: returns 64 bytes, showing 10: 000003008000000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x80
wrote 64 bytes at 320
PTCd: input data 64 bytes: 00000000c89001000f38000f01ff01000000010000000000000000000f4200031a0400000f47003043510440c4007c0220000700000000000000000000000000
PTCd: returns 64 bytes, showing 10: 000003008000000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x80
wrote 64 bytes at 384
PTCd: input data 64 bytes: 0051040018007c0220000734122020080000000000000000000f51000603451c0c1100000f550000040f5c003f07c01200000000000000000000000000080000
PTCd: returns 64 bytes, showing 10: 000003008000000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x80
wrote 64 bytes at 448
PTCd: input data 64 bytes: 0000000000000000000000000029032700000000000000000000000708000900000a00000000000000000000000f730019510434120000000000000000000000
PTCd: returns 64 bytes, showing 10: 000003008000000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x80
wrote 64 bytes at 512
PTCd: input data 64 bytes: 00000000000000000000000f77001751043412000000000101000000000000000000000000003c0f7d003e510434120000000000000000000000000000000000
PTCd: returns 64 bytes, showing 10: 000003008000000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x80
wrote 64 bytes at 576
PTCd: input data 64 bytes: 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000f7f0019510434120000000000000000000000000000
PTCd: returns 64 bytes, showing 10: 000003008000000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x80
wrote 64 bytes at 640
PTCd: input data 64 bytes: 00000000000000006400640064006400640064006400640064006400640064006400640064006400640064006400640064006400640064006400640064006400
PTCd: returns 64 bytes, showing 10: 000003008000000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x80
wrote 64 bytes at 704
PTCd: input data 64 bytes: 64006400640064006400640064006400640064006400640064006400640064006400640064006400640064000000000000000000000000000000000000000000
PTCd: returns 64 bytes, showing 10: 00000300bf00000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xbf
wrote 64 bytes at 768
PTCd: input data 64 bytes: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
PTCd: returns 64 bytes, showing 10: 00000300bf00000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xbf
wrote 64 bytes at 832
PTCd: input data 64 bytes: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
PTCd: returns 64 bytes, showing 10: 00000300bf00000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xbf
wrote 64 bytes at 896
PTCd: input data 64 bytes: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
PTCd: returns 64 bytes, showing 10: 00000300bf00000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xbf
wrote 64 bytes at 960
PTCd: input data 64 bytes: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
PTCd: returns 64 bytes, showing 10: 00000300bf00000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xbf
wrote 64 bytes at 1024
PTCd: input data 64 bytes: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
PTCd: returns 64 bytes, showing 10: 00000300bf00000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xbf
wrote 64 bytes at 1088
PTCd: input data 64 bytes: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
PTCd: returns 64 bytes, showing 10: 00000300bf00000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xbf
wrote 64 bytes at 1152
PTCd: input data 64 bytes: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
PTCd: returns 64 bytes, showing 10: 00000300bf00000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xbf
wrote 64 bytes at 1216
PTCd: input data 64 bytes: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
PTCd: returns 64 bytes, showing 10: 00000300bf00000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xbf
wrote 64 bytes at 1280
PTCd: input data 64 bytes: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
PTCd: returns 64 bytes, showing 10: 00000300bf00000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xbf
wrote 64 bytes at 1344
PTCd: input data 64 bytes: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
PTCd: returns 64 bytes, showing 10: 00000300bf00000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xbf
wrote 64 bytes at 1408
PTCd: input data 64 bytes: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
PTCd: returns 64 bytes, showing 10: 00000300bf00000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xbf
wrote 64 bytes at 1472
PTCd: input data 64 bytes: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
PTCd: returns 64 bytes, showing 10: 00000300bf00000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xbf
wrote 64 bytes at 1536
PTCd: input data 64 bytes: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
PTCd: returns 64 bytes, showing 10: 00000300bf00000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xbf
wrote 64 bytes at 1600
PTCd: input data 64 bytes: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
PTCd: returns 64 bytes, showing 10: 00000300fe00000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xfe
wrote 64 bytes at 1664
PTCd: input data 64 bytes: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
PTCd: returns 64 bytes, showing 10: 000003003d01000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x13d
wrote 64 bytes at 1728
PTCd: input data 64 bytes: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
PTCd: returns 64 bytes, showing 10: 000003007c01000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x17c
wrote 64 bytes at 1792
PTCd: input data 64 bytes: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
PTCd: returns 64 bytes, showing 10: 00000300bb01000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1bb
wrote 64 bytes at 1856
PTCd: input data 64 bytes: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
PTCd: returns 64 bytes, showing 10: 00000300fa01000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1fa
wrote 64 bytes at 1920
PTCd: input data 64 bytes: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
PTCd: returns 64 bytes, showing 10: 000003003902000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x239
wrote 64 bytes at 1984
PTCd: input data 64 bytes: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
PTCd: returns 64 bytes, showing 10: 000003007802000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x278
wrote 64 bytes at 2048
PTCd: input data 64 bytes: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
PTCd: returns 64 bytes, showing 10: 00000300b702000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x2b7
wrote 64 bytes at 2112
PTCd: input data 64 bytes: 692b0500b8000000007e0220b06d0220007e02207942022005b11000001007f78b2c0c00ad0634020000c02b4c4202200000000000000000000000000000062c
PTCd: returns 64 bytes, showing 10: 00000300f602000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x2f6
wrote 64 bytes at 2176
PTCd: input data 64 bytes: a749085c704710b5044602f0d9faa54815214443a448c90120184118c97c002903d11d22d2018018c17710bdf0b59f4b00219a6887b0500711d49e489c4c0461
PTCd: returns 64 bytes, showing 10: 000003003503000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x335
wrote 64 bytes at 2240
PTCd: input data 64 bytes: b8240460046801252c4304609a4c84600024046118464030047c2c430474d003c70f032595482d03954c4026002f0bd0b702ba439a600268aa430260606ab043
PTCd: returns 64 bytes, showing 10: 000003007403000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x374
wrote 64 bytes at 2304
PTCd: input data 64 bytes: 6062904b904805e002682a430260606a3043f5e78a008458002c00d18350491cfe29f7d38a49894a05910a638a4a894991608b4e8949b1638b498a4a8a650a46
PTCd: returns 64 bytes, showing 10: 00000300b303000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x3b3
wrote 64 bytes at 2368
PTCd: input data 64 bytes: 80328a4b936194463246403a884b0292d3627f4d874a803db260874aaa632c46864a40343346e263c033854a9a639e46844a403bda62854b834a9a61029a844b
PTCd: returns 64 bytes, showing 10: 00000300f203000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x3f2
wrote 64 bytes at 2432
PTCd: input data 64 bytes: d3607148834ac2653246803a824801929060019a814890622246c03a80480492d060ff327f48813290617f48734618607f4a7e4810607f48a0627f48664ae062
PTCd: returns 64 bytes, showing 10: 000003003104000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x431
wrote 64 bytes at 2496
PTCd: input data 64 bytes: 7e48c03a50627e48a0607f487d4a4260204680387d4a039002627d48624610617d4a7c4810617d4888617d48c8617e487c490090816317467c48403fb8637c48
PTCd: returns 64 bytes, showing 10: 000003007004000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x470
wrote 64 bytes at 2560
PTCd: input data 64 bytes: 8078002801d002f021fa7a497a4b0878c20701d042081a604878c20702d04208764802608878c20702d040088030d861c878c10703d0400870498030c8617048
PTCd: returns 64 bytes, showing 10: 00000300af04000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x4af
wrote 64 bytes at 2624
PTCd: input data 64 bytes: f86000986f49c16205986f4981636f4828636f48e06170496e48c8616f485e49f0636f4880313c4a086380326d48d06011466d48403148616c488031c8635a48
PTCd: returns 64 bytes, showing 10: 00000300ee04000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x4ee
wrote 64 bytes at 2688
PTCd: input data 64 bytes: 6b498030c1626c496a4b4b626b4939606b49e16000996b4b0b606b497162c11d6a4bf931cb63039b694cdc61694b83610c46694bc034e363684b8363684b6b63
PTCd: returns 64 bytes, showing 10: 000003002d05000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x52d
wrote 64 bytes at 2752
PTCd: input data 64 bytes: 684b80342360029b674c1c62674b4363674c019b5c63674b03631b48664b4361664bc03043616648c8601046654bc03803626548106065486862654888601448
PTCd: returns 64 bytes, showing 10: 000003006c05000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x56c
wrote 64 bytes at 2816
PTCd: input data 64 bytes: 64494030c161644901624b4863494038416104986249816102f098f907b0f0bd02340220d40f0000541302207c330220f043b2a100040140e093040000050640
PTCd: returns 64 bytes, showing 10: 00000300ab05000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x5ab
wrote 64 bytes at 2880
PTCd: input data 64 bytes: 004109404d42022028010220a54b02209c0902204d580220dc0d022071460220dc0b0220b94902209c0502205b4a0220255902204f590220e94b0220a74c0220
PTCd: returns 64 bytes, showing 10: 00000300ab05000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x5ab
wrote 64 bytes at 2944
PTCd: input data 64 bytes: 155a0220cd5a022099620220dc0e02203f5c0220414d0220d55c02209f5e0220096402205f4d022099640220b94d0220e8040220cd500220ed500220ef670220
PTCd: returns 64 bytes, showing 10: 00000300c005000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x5c0
wrote 64 bytes at 3008
PTCd: input data 64 bytes: d34d0220b7560220680202202f500220894a0220b1650220dc070220e1650220ef650220295102209c0a0220056602200e410220b06d02200008034000080b40
PTCd: returns 64 bytes, showing 10: 00000300ff05000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x5ff
wrote 64 bytes at 3072
PTCd: input data 64 bytes: 55660220595102209d510220e55102200d5102209d660220dc0f0220614702201b6402206758022085630220416402208d60022091650220dc060220f9640220
PTCd: returns 64 bytes, showing 10: 000003003e06000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x63e
wrote 64 bytes at 3136
PTCd: input data 64 bytes: 99520220d1520220d9590220b5670220315402204d5402205f5a022009610220bb540220d56702208d610220c1610220955f0220e36102205356022015570220
PTCd: returns 64 bytes, showing 10: 000003007d06000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x67d
wrote 64 bytes at 3200
PTCd: input data 64 bytes: e7480220ad580220f5580220ad570220df4a0220e55702200758022053420220b9630220f0b501239c465c23c74d43435b19c74e05467543ff27c64e1537cc1b
PTCd: returns 64 bytes, showing 10: 00000300bc06000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x6bc
wrote 64 bytes at 3264
PTCd: input data 64 bytes: 4033ad19b9423bd006dca11d09d0042944d0052944d141e0012c31d0532c3fd10be01720c00128188068002838d10698032101600020844632e014789178d278
PTCd: returns 64 bytes, showing 10: 00000300fb06000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x6fb
wrote 64 bytes at 3328
PTCd: input data 64 bytes: c9099207520f1143b34d8200aa58002a26d0af4d15226843ae4dd20140198018092c02d00b2c0ed01ae0ca0702d0027d002a05d04908c90712d0007d01280fd1
PTCd: returns 64 bytes, showing 10: 000003003a07000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x73a
wrote 64 bytes at 3392
PTCd: input data 64 bytes: 002058760ce0ca0702d0027d002a05d04908c90704d0007d012801d1002018766046f0bd10b504460120092911d10022234611463b2002f06ff8954880224443
PTCd: returns 64 bytes, showing 10: 000003003a07000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x73a
wrote 64 bytes at 3456
PTCd: input data 64 bytes: 944821181f20c0010818016911430161002010bdffb585b0012100910e9c1d78002121608a4e96468a492f224643920171188a18012d1ad0854e864f4643f619
PTCd: returns 64 bytes, showing 10: 000003007907000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x779
wrote 64 bytes at 3520
PTCd: input data 64 bytes: 810001911521c9010f277118bf018c46f71917210297c9011f277118ff01f619092d1ed00b2d5dd0102d58d109e0002090755075794801220818072102f032f8
PTCd: returns 64 bytes, showing 10: 00000300b807000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x7b8
wrote 64 bytes at 3584
PTCd: input data 64 bytes: 4de00822991c02a802f032f868460089000644d570490198085800283fd103203ae09d78db78ed099b075b0f1d436a4f019bfb58002b66d0eb439b070dd06b07
PTCd: returns 64 bytes, showing 10: 00000300f707000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x7f7
wrote 64 bytes at 3648
PTCd: input data 64 bytes: 0bd0eb0710d06246127d012a25d000220a7173460821069a12e001213069c90208433061062017e06b08db070bd06246127d002a11d000220a7173460921069a
PTCd: returns 64 bytes, showing 10: 000003000208000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x802
wrote 64 bytes at 3712
PTCd: input data 64 bytes: 01f0fcff08e0a808c00702d00020507503e00120fbe70420206000200090009809b0f0bd9d78db78ed099b075b0f1d43494f019bfb58002b25d0eb439b07ccd0
PTCd: returns 64 bytes, showing 10: 000003000308000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x803
wrote 64 bytes at 3776
PTCd: input data 64 bytes: 6b07cad0eb0709d06246d27c012ae4d00022ca7073460521069ad1e76b08db0709d06246d27c002ad7d00022ca7073460421069ac4e7a808c00702d000209075
PTCd: returns 64 bytes, showing 10: 000003004208000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x842
wrote 64 bytes at 3840
PTCd: input data 64 bytes: cbe70120fbe70298006a8001800fc2d03069082108433061bde710b52c4904462c4a61438b183d21890159180a7b0120452a27d0602a0bd0652a3dd14a7a032a
PTCd: returns 64 bytes, showing 10: 000003008108000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x881
wrote 64 bytes at 3904
PTCd: input data 64 bytes: 3bd2897a032938d2254b282207212fe00a7a012a14d0022a2ed1897a00292bd10f2189015918098b8a07920f022a23d18905890f01291fd1204601f085ff1ae0
PTCd: returns 64 bytes, showing 10: 00000300bc08000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x8bc
wrote 64 bytes at 3968
PTCd: input data 64 bytes: 497aebe7487a022802d08a7a022a08d1897a884205d00521204601f07bff114bd3e70721204601f075ff0f4b28220521204601f075ff002010bd5c214c430349
PTCd: returns 64 bytes, showing 10: 00000300fb08000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x8fb
wrote 64 bytes at 4032
PTCd: input data 64 bytes: 002261184031ca8210bd0000007e0220d40f000054130220e8330220450b00000fd701009f560100ad580220feb507460120c01b7149c0b2714c484301191d20
PTCd: returns 64 bytes, showing 10: 00000300fb08000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x8fb
wrote 64 bytes at 4096
PTCd: input data 64 bytes: c0010e18b08b01068005800f090f00900191384601f04aff68480f22784300193d2192018901851841181d22097bd2018418612913d0e868c000400f02d03846
PTCd: returns 64 bytes, showing 10: 000003003a09000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x93a
wrote 64 bytes at 4160
PTCd: input data 64 bytes: 01f03affa08b032109028843ff300130a083ea68d200520f002a08d009e0a08bf02188431030a083ea68920ff4e78843a083b08bf02188430199090108430321
PTCd: returns 64 bytes, showing 10: 000003003b09000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x93b
wrote 64 bytes at 4224
PTCd: input data 64 bytes: 09028843009909020843b083febd024600204c4b002a0ad0012a07d1186b800880001863186b0843186301207047186b0c2290431863186b8900f4e770b50d46
PTCd: returns 64 bytes, showing 10: 000003004409000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x944
wrote 64 bytes at 4288
PTCd: input data 64 bytes: 044601f0fffe0c2d01d00b2d20d13d4821024030091848694000486902d50122920704e0800004d5486901225207104348613248032244433148120221181d20
PTCd: returns 64 bytes, showing 10: 000003004809000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x948
wrote 64 bytes at 4352
PTCd: input data 64 bytes: c0010818818b9143ff31ff310231818370bdf8b52d4c2e4f2b4923783a880646c95c521c0120264d92b202291cd0042939d0112936d127484b210068c9008842
PTCd: returns 64 bytes, showing 10: 000003008709000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x987
wrote 64 bytes at 4416
PTCd: input data 64 bytes: 2fd31e480f215843401989014018c068800f012804d01221184601f0b9fe20e001f0bcfe0e210ce03a80082001f0bcfe0121c9033080884213d07338722802d2
PTCd: returns 64 bytes, showing 10: 00000300b609000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x9b6
wrote 64 bytes at 4480
PTCd: input data 64 bytes: 0f212078e9e720780c49f02341434a191d21c90151188a8b9a4330328a830421dbe70020f8bd00203a80282afad901220421184601f09efe0120f8bdd40f0000
PTCd: returns 64 bytes, showing 10: 00000300c509000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x9c5
wrote 64 bytes at 4544
PTCd: input data 64 bytes: 54130220c0080940e9100220e4100220ee100220f4100220f849f94a414310b589183f22525c53071522d2015b0f8918022b0ad00a7d002a04d0c969c900890f
PTCd: returns 64 bytes, showing 10: 00000300040a000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xa04
wrote 64 bytes at 4608
PTCd: input data 64 bytes: 022901d101f07cfe10bdc969c900890f0229f9d1112101f079fe10bdf8b504460e46e648e64960434018e64b552149010125c2184118e44f002e1bd0497b4903
PTCd: returns 64 bytes, showing 10: 00000300060a000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xa06
wrote 64 bytes at 4672
PTCd: input data 64 bytes: 394349094901891c1160076c7f0113d4c027b9438031001d1160c018182101f05bfe002000902b460f223146204601f059fef8bd097be2e73146204601f058fe
PTCd: returns 64 bytes, showing 10: 000003003f0a000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xa3f
wrote 64 bytes at 4736
PTCd: input data 64 bytes: f8bdffb581b01d4617460646029901f055fe04463046029901f056fe052c0cd2304650225043c94a01218018002d0cd0012d0ed022018018c1712a4639463046
PTCd: returns 64 bytes, showing 10: 000003007e0a000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xa7e
wrote 64 bytes at 4800
PTCd: input data 64 bytes: 029b01f047fe05b0f0bd220180188171f3e7220180180172efe7f7b582b00e46b64a0298b6495043002440183b218901401827462546009018e03068010c2ad0
PTCd: returns 64 bytes, showing 10: 00000300800a000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xa80
wrote 64 bytes at 4864
PTCd: input data 64 bytes: 2246049b0298fff7bcff3088641c0104e4b2090c1fd02246049b0298fff7b1ff641c361d6d1c0098e4b2edb2c07a401ea842e2dca14b02982d225843a04b9201
PTCd: returns 64 bytes, showing 10: 00000300a20a000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xaa2
wrote 64 bytes at 4928
PTCd: input data 64 bytes: c018049980180229017c06d2090909012207120f04e00127ece70907090f220111430174062d01d1002f01d00020aae70120a8e710b5044601f0f2fd002c06d0
PTCd: returns 64 bytes, showing 10: 00000300e10a000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xae1
wrote 64 bytes at 4992
PTCd: input data 64 bytes: ff20013001f0f2fd9148005d10bd8020f8e770b506468f480d4601466a310989090404d58079c00601d5012400e000242946304601f0e0fd8048464380483218
PTCd: returns 64 bytes, showing 10: 00000300200b000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xb20
wrote 64 bytes at 5056
PTCd: input data 64 bytes: 1520c0011018002c0bd00f2189015118097e8906490f012903d97d21c900018170bdc17c0029fbd1058170bd10b5044601f0c8fd002803d01121204601f0c8fd
PTCd: returns 64 bytes, showing 10: 00000300350b000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xb35
wrote 64 bytes at 5120
PTCd: input data 64 bytes: 7348005d10bdf7b582b0044603986b4eff300130007a25468446039875430188674ec8064b04cf0b012111702d229201ad19aa180092674ac00e6a3201921522
PTCd: returns 64 bytes, showing 10: 00000300740b000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xb74
wrote 64 bytes at 5184
PTCd: input data 64 bytes: d2015b0fae18002b01d0002f02d03b4358d0f7e0012802d0022808d0f2e07d2040012818027820231a430270eae05848005d0146163901293bd80121009a1728
PTCd: returns 64 bytes, showing 10: 00000300b30b000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xbb3
wrote 64 bytes at 5248
PTCd: input data 64 bytes: 117100d1b1741921204601f03ffd5248a200805800282bd1f07c0128fbd103984e4b007805270006810f552040012818d3187f028170ed196d6a6d681d60474b
PTCd: returns 64 bytes, showing 10: 00000300c40b000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xbc4
wrote 64 bytes at 5312
PTCd: input data 64 bytes: 9a581202d20f427201d0012300e00023c27a204601f062fdf069c000800f022806d10198808c800602d5204601f05cfda7e02a2804d00e21204601f05bfda0e0
PTCd: returns 64 bytes, showing 10: 00000300030c000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xc03
wrote 64 bytes at 5376
PTCd: input data 64 bytes: 0e2157e02d4f22467a432d4f1723db01d219d71804280cd010281ed0132833d00c287cd003980078c006c00e0d2869d088e02748005d4a281cd1752040012818
PTCd: returns 64 bytes, showing 10: 00000300110c000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xc11
wrote 64 bytes at 5440
PTCd: input data 64 bytes: 00780c2803d10321204601f039fd009900204872012078716ee01d48025d4a2a09d05c2044431e4820184030362a05d0562a06d066e00120787163e001220276
PTCd: returns 64 bytes, showing 10: 00000300110c000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xc11
wrote 64 bytes at 5504
PTCd: input data 64 bytes: 60e0012242765de01648005d00280bd0f07c012804d0002806d0012826d050e00198808c800621d4f069c000800f02281ad01121204601f009fd42e0d40f0000
PTCd: returns 64 bytes, showing 10: 00000300500c000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xc50
wrote 64 bytes at 5568
PTCd: input data 64 bytes: 54130220e8080000008000ff440002200234022012330220e8330220f8330220007e0220e4330220112114e0592040012818407f012806d01021204601f0ecfc
PTCd: returns 64 bytes, showing 10: 000003008f0c000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xc8f
wrote 64 bytes at 5632
PTCd: input data 64 bytes: 1fe00ce020e01821204601f043fc009900204870f221204601f078fc11e0fc48005d56280ed1022038717d22f94b12010e21204601f034fcf748015d204601f0
PTCd: returns 64 bytes, showing 10: 00000300ae0c000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xcae
wrote 64 bytes at 5696
PTCd: input data 64 bytes: a7fc002108463ee660460128fad13b218901691808720146204601f0c3fc0521d9e7f8b5ed4cee4d44436519552464012c19a67a8e4200d9a172e84f06467e43
PTCd: returns 64 bytes, showing 10: 00000300ed0c000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xced
wrote 64 bytes at 5760
PTCd: input data 64 bytes: e74f1521c901f71969180f264d7cb601be19022d04d0377ebf067f0f022f08d3e77a974200d9e272a27ae77aba4200d8e272a27b9a4200d9a3730323ca69db06
PTCd: returns 64 bytes, showing 10: 000003002c0d000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xd2c
wrote 64 bytes at 5824
PTCd: input data 64 bytes: 9a43a37a9b07db081a43a37b52005208db071a4303235b07ca61022d04d0357ead066d0f022d05d39a43e37a9b075b081a4300e09a43ca61402101f079fcf8bd
PTCd: returns 64 bytes, showing 10: 000003006b0d000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xd6b
wrote 64 bytes at 5888
PTCd: input data 64 bytes: 10b5044601f07afc002808d05c214c43c44961184031497e012900d1002010bd10b5044601f070fc002808d05c214c43bc4961184031097e012900d1002010bd
PTCd: returns 64 bytes, showing 10: 000003007b0d000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xd7b
wrote 64 bytes at 5952
PTCd: input data 64 bytes: 10b5044601f066fcb44817224443b44800212018d2018018017110bdb2480829406a01d0092901d182020bd40a2901d00b2901d1420205d40d2901d00e2903d1
PTCd: returns 64 bytes, showing 10: 000003008b0d000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xd8b
wrote 64 bytes at 6016
PTCd: input data 64 bytes: c00101d5012070470020704770b50c46054601f045fc002819d1e62c0bd006dcca2c08d0cc2c06d0dd2c10d103e0ed2c01d0ee2c0bd199494d4399496918ff31
PTCd: returns 64 bytes, showing 10: 00000300ca0d000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xdca
wrote 64 bytes at 6080
PTCd: input data 64 bytes: a131c97e012901d0022900d1012070bd70b505469148924a68438418532040012d222018920100680323a2181371020c284601f01bfc002801d0702108e01520
PTCd: returns 64 bytes, showing 10: 00000300090e000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xe09
wrote 64 bytes at 6144
PTCd: input data 64 bytes: c0012018c069c000800f022803d11121284601f07bfb70bdffb507469c467f487f4b7843c5188148152681b02c18f6010120ae19029bc0030a99f669002b01d0
PTCd: returns 64 bytes, showing 10: 00000300480e000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xe48
wrote 64 bytes at 6208
PTCd: input data 64 bytes: 730106e0f3009b0f022b01d0012a03d0f3019b0f5b03181820604009d2064001d20e1043c022904362469207120e10430722120290430b9a5207520d10432060
PTCd: returns 64 bytes, showing 10: 00000300870e000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xe87
wrote 64 bytes at 6272
PTCd: input data 64 bytes: 61806b480024814202d00123009415e0634638460b9a01f0cffb1421484329181b20c0010818806b01280dd0614823212d1d890169188862022300940f223846
PTCd: returns 64 bytes, showing 10: 00000300c60e000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xec6
wrote 64 bytes at 6336
PTCd: input data 64 bytes: 029901f02ffbfee45b48f0e770b5044601f0b8fb05465148012244435048072124185648201801f0bdfa1720c00120184079012804d12d210020890161184872
PTCd: returns 64 bytes, showing 10: 00000300c80e000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xec8
wrote 64 bytes at 6400
PTCd: input data 64 bytes: 284670bdffb585b00798072806d002460699059801f09cfb09b0f0bd0698012817d0022815d0002b13d000253b49059848433b494118ff20bf30425ad0b2170a
PTCd: returns 64 bytes, showing 10: 00000300f00e000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xef0
wrote 64 bytes at 6464
PTCd: input data 64 bytes: 3a4a921f8b1800229a80002d03d0072302e00125eae70023472252018c18ea03e2809446a28807263603b2431b031a43a280002803d0012823d1082f21d26046
PTCd: returns 64 bytes, showing 10: 000003002a0f000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xf2a
wrote 64 bytes at 6528
PTCd: input data 64 bytes: 1a30e080072000038243002d01d0072000e0002000030243a280204e0598234b70431f4e069a8019c018002a03d0ff319d311a2224e0ff3183311a2201f058fa
PTCd: returns 64 bytes, showing 10: 00000300440f000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xf44
wrote 64 bytes at 6592
PTCd: input data 64 bytes: 20e01fa7c9cf03976f4649c7604612231843e080072000038243002d01d0052000e0002000030243a280232200209201c0438a1890620d480e22001d08186946
PTCd: returns 64 bytes, showing 10: 00000300640f000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xf64
wrote 64 bytes at 6656
PTCd: input data 64 bytes: 01f02cfb002d23d0a0884004430f22e002340220d9c9010004340220d40f000054130220007e02207c330220e8080000510400005104ff0051040100450b0000
PTCd: returns 64 bytes, showing 10: 00000300650f000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xf65
wrote 64 bytes at 6720
PTCd: input data 64 bytes: 4e6f7420537570706f72746564000000e088c305db0d0120009005a807c801f061fa59e7491e072906d20068810f03d10003800d642801d00020704701207047
PTCd: returns 64 bytes, showing 10: 00000300a40f000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xfa4
wrote 64 bytes at 6784
PTCd: input data 64 bytes: f0b5f64bf64d43435b1996469c460022f44b502568431446c71820013b5873451fd1381843790079181818e0142665465e43ad196d267601ae19767f002e01d0
PTCd: returns 64 bytes, showing 10: 00000300e30f000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xfe3
wrote 64 bytes at 6848
PTCd: input data 64 bytes: 002908d02e463725ad0175196d78002d03d0002901d0012203e05b1cdbb29842e4d8641ce4b2052cd7d31046f0bdf3b587b001200290d94907984843d8494418
PTCd: returns 64 bytes, showing 10: 00000300e30f000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xfe3
wrote 64 bytes at 6912
PTCd: input data 64 bytes: 1520c00120180190c2690321d000830f206c49058843022b01d15905401820640390606e0490e06c0590cf48cb492718ce48552500696064e065079826464843
PTCd: returns 64 bytes, showing 10: 00000300f80f000000
PatchLoadingState: 0x03
TotalDataTransferred: 0xff8
wrote 64 bytes at 6976
PTCd: input data 64 bytes: c7496d0141183f20089b4036405c4d19002b14d04006400f0090e879697b1836884200d26873687bc1494003084338600198c0694000800f012845d053e04007
PTCd: returns 64 bytes, showing 10: 000003003710000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1037
wrote 64 bytes at 7040
PTCd: input data 64 bytes: 400f0090a879297b884200d228730320c0058243287b40218007c00902430198c261079801f024fa287bb1494003084338600198c069c000800f012802d00228
PTCd: returns 64 bytes, showing 10: 000003007610000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1076
wrote 64 bytes at 7104
PTCd: input data 64 bytes: 13d030e007213068c905884330608000400f032803d0042801d0062823d10721e26c49058a43e2641de030688100490f032901d0062916d1297b002913d10721
PTCd: returns 64 bytes, showing 10: 000003008910000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1089
wrote 64 bytes at 7168
PTCd: input data 64 bytes: c906884330600ee007213068c905884330608000400f032801d0042803d1954a616e914361663868c02140094001401c3860009a002a01d0062a02d988438030
PTCd: returns 64 bytes, showing 10: 00000300c810000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x10c8
wrote 64 bytes at 7232
PTCd: input data 64 bytes: 1fe0012a1cd08843403038600098314682008548001d201801f000fa0098401c0290002000900f22029b0899079801f059f9039820640598e064049860664be6
PTCd: returns 64 bytes, showing 10: 00000300e710000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x10e7
wrote 64 bytes at 7296
PTCd: input data 64 bytes: 08433860ede738b5044601f07bf901467248734b15226043d201c0188518002916d0552149014018817b002901d0012300e00023c278817a204601f06ff90020
PTCd: returns 64 bytes, showing 10: 00000300ef10000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x10ef
wrote 64 bytes at 7360
PTCd: input data 64 bytes: 00900346a97d0322204601f02bf907e0a87d002807d06848015d204601f058f96648005d38bd0921f7e770b5044601f0bbf95a485a49604345181520c0012e18
PTCd: returns 64 bytes, showing 10: 00000300ef10000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x10ef
wrote 64 bytes at 7424
PTCd: input data 64 bytes: 707c022818d00f2080012818008bc004800f022810d3204601f0acf900280bd0f069c000800f022806d1692040012818017c0322114301744f48015d204601f0
PTCd: returns 64 bytes, showing 10: 000003002e11000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x112e
wrote 64 bytes at 7488
PTCd: input data 64 bytes: 27f94e48005d70bd70b50646112101f04ff942484249704340182f2189014118897d002901d02d2134e01521c9014418e07c002804d1304601f082f900280ed1
PTCd: returns 64 bytes, showing 10: 000003005511000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1155
wrote 64 bytes at 7552
PTCd: input data 64 bytes: 3649374b0f207143e27c8001c9180d18012a09d1304601f079f9002801d0372118e0e07c012803d0e07c002803d014e0287bc00601e0287b400600280ddbe069
PTCd: returns 64 bytes, showing 10: 000003008b11000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x118b
wrote 64 bytes at 7616
PTCd: input data 64 bytes: c000800f0228ced1287e8007800f0228c9d01121304601f0dbf82848805d70bd10b57d210446490101f056f9204601f059f91a48232144431948890120184118
PTCd: returns 64 bytes, showing 10: 00000300ca11000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x11ca
wrote 64 bytes at 7680
PTCd: input data 64 bytes: 8030406a01231b078a6ac000c00f9a43000702438a6210bd104a0146104b4a43d218172310b5db01d2181279ff20022a02d0084601f03cf910bd084a0146084b
PTCd: returns 64 bytes, showing 10: 000003000912000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1209
wrote 64 bytes at 7744
PTCd: input data 64 bytes: 4a43d218172310b5db01d2181279ff20022a02d0084601f031f910bdd40f00005413022044000220e8080000fc320220008000ff0006e0000434022002340220
PTCd: returns 64 bytes, showing 10: 000003004812000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1248
wrote 64 bytes at 7808
PTCd: input data 64 bytes: 2d492e4b4143c9187b2310b55b010022c9180a7701f018f910bd70b5002501f019f9eff31080c407e40f72b62448c07e012803d02348c07b01280dd122480122
PTCd: returns 64 bytes, showing 10: 000003007512000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1275
wrote 64 bytes at 7872
PTCd: input data 64 bytes: c16819204143002001f00af901221f4b1146284600f0e4ff002c00d162b670bd70b505465c202946414319480c184034e08ac01d81b2e1826e2904d9284601f0
PTCd: returns 64 bytes, showing 10: 00000300b412000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x12b4
wrote 64 bytes at 7936
PTCd: input data 64 bytes: f5f8002804d1e08a4b21c900884204d90021284600f0b8ff70bd0e4b28220521284600f0bdff70bd10b5044601f0e4f8204601f0e7f810bdd40f000054130220
PTCd: returns 64 bytes, showing 10: 00000300f312000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x12f3
wrote 64 bytes at 8000
PTCd: input data 64 bytes: 9422022074320220bc33022019d80100007e0220ad58022010b5044601f0d8f83548152144433548c90120184118c969c900890f012903d1552252018018c172
PTCd: returns 64 bytes, showing 10: 000003003213000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1332
wrote 64 bytes at 8064
PTCd: input data 64 bytes: 10bdf8b59e462c4b04465c432b4f1525ed01e419671923239b01069ee418fd698c46002904d06900890f01291dd027e0022a18d1f97c002915d1e900890f0229
PTCd: returns 64 bytes, showing 10: 000003004213000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1342
wrote 64 bytes at 8128
PTCd: input data 64 bytes: 11d1002e0fd11e498700c959930599431c4b9b8cdb06db0fdb051943184bd9511946c959a162e900dee70f2a08d1002e06d1a16a0b0403d501235b039943a162
PTCd: returns 64 bytes, showing 10: 000003005313000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1353
wrote 64 bytes at 8192
PTCd: input data 64 bytes: 73466146009601f089f8f8bd10b5044601f08af80848152144430848c90122185118897d09180448913820180a5c5207520f0a5410bd0000d40f000054130220
PTCd: returns 64 bytes, showing 10: 000003009213000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1392
wrote 64 bytes at 8256
PTCd: input data 64 bytes: f83302207c33022010b5244b244c43431c197b235b01e3181b7f002b07d0012b04d10a2a02d11f4b99420fd010bd7d2a05d0a82a03d07f2a01d0aa2a00d11a49
PTCd: returns 64 bytes, showing 10: 00000300d113000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x13d1
wrote 64 bytes at 8320
PTCd: input data 64 bytes: 4e2a03d1194b994200d1194901f052f810bd70b5072801d008280fd1154b1c680123db02e3181c69640707d5134d124c2d78645d002c01d104249c6101f040f8
PTCd: returns 64 bytes, showing 10: 000003001014000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1410
wrote 64 bytes at 8384
PTCd: input data 64 bytes: 70bd10b5072903d0052901d0082902d1282a00d11c2201f039f810bdd40f0000541302203075000068bf000070170000c8af00002c340220203402200c340220
PTCd: returns 64 bytes, showing 10: 000003004f14000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x144f
wrote 64 bytes at 8448
PTCd: input data 64 bytes: f0b504464b49000285b04018039087680220019000206946087220465c225043454ab9038618454822024036151800290bda204601f010f80020307501f012f8
PTCd: returns 64 bytes, showing 10: 000003008e14000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x148e
wrote 64 bytes at 8512
PTCd: input data 64 bytes: 01f016f80126760447e068690090800703d43b48005d462801d10120307501f001f801f005f80098c00723d0009800060bd404212046009a01f000f801206946
PTCd: returns 64 bytes, showing 10: 000003008f14000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x148f
wrote 64 bytes at 8576
PTCd: input data 64 bytes: 087201990143019123e00098400606d5012069460872204600f0f6ff19e0002069460872204600f0efff01980121084301900ee0307d00280bd12868c108c900
PTCd: returns 64 bytes, showing 10: 000003009714000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1497
wrote 64 bytes at 8640
PTCd: input data 64 bytes: 2960204600f0e6ff002802d0204600f0e7ff019969610126b6046846007a002808d028684007400f012803d02868c108c9002960b80313d42868400710d11148
PTCd: returns 64 bytes, showing 10: 00000300c014000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x14c0
wrote 64 bytes at 8704
PTCd: input data 64 bytes: 1149604341184f2040010818817b012906d1417d032907d00c49204600f03cff0398866005b0f0bd00218173204600f0bdfff5e740090940007e022000090040
PTCd: returns 64 bytes, showing 10: 00000300d114000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x14d1
wrote 64 bytes at 8768
PTCd: input data 64 bytes: 02340220d40f00005413022096030000fe490a466a321289120406d58979c90603d5002803d0012801d00020704701207047f8b50346fff7ebfff54a99008918
PTCd: returns 64 bytes, showing 10: 00000300d314000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x14d3
wrote 64 bytes at 8832
PTCd: input data 64 bytes: 89780091f34a002419028918c96b25464a0000d501244a0300d50125cf040126f21a9640e94a6a32002f04da002802d0577837435770090504d5002802d05078
PTCd: returns 64 bytes, showing 10: 000003001215000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1512
wrote 64 bytes at 8896
PTCd: input data 64 bytes: b0435070184600f077ffac431bd000f079ffe149009803224843e04944183b208001201842710121009800f071ff282000f074ff3d218901ff2061184870bf21
PTCd: returns 64 bytes, showing 10: 000003005115000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1551
wrote 64 bytes at 8960
PTCd: input data 64 bytes: 009800f071fff8bd70b5d54e00244500745300f06fff70bd70b50c46054600f06fffcd48cd496843401811218901ff2241184a740f2189014018816a08221143
PTCd: returns 64 bytes, showing 10: 000003005115000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1551
wrote 64 bytes at 9024
PTCd: input data 64 bytes: 81620121204600f061ffc04b01264a33d87f211d32468a401043d8772046fff777ff002805d0311bd87f091d8e403043d8770921284600f03bfe1921284600f0
PTCd: returns 64 bytes, showing 10: 000003009015000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1590
wrote 64 bytes at 9088
PTCd: input data 64 bytes: 37fe2321284600f033febf21284600f02bff70bdb44ab349d160b44b196b0902090a014319630020d060704770b504460320a64d4007fff7edff204600f02cff
PTCd: returns 64 bytes, showing 10: 00000300c715000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x15c7
wrote 64 bytes at 9152
PTCd: input data 64 bytes: 7d22d200904200d21046a349a34b6143c9181723db01cb189b689b0f11d1a448a300c058030108d50f239b01c918096a490102d58005800d01e00003800d0a21
PTCd: returns 64 bytes, showing 10: 000003000616000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1606
wrote 64 bytes at 9216
PTCd: input data 64 bytes: 4843a979cb065c214c439a4961184031002b01da801801e0ff30f53094225043800a488270bdf1b582b08b490298002448438a4925464018112189014018407c
PTCd: returns 64 bytes, showing 10: 000003004516000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1645
wrote 64 bytes at 9280
PTCd: input data 64 bytes: 009000283ad0012837d1062000f04cfd0127ff030646b8422fd00098fff7f8fe002809d0009800282ad0052000f03cfdb84222d0301886b202985c2148437d49
PTCd: returns 64 bytes, showing 10: 000003004516000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1645
wrote 64 bytes at 9344
PTCd: input data 64 bytes: 4018014640310a7c9300521c0a74c6500a7c142a01d300220a74a2008258641c5519e4b2142cf8d3488a14214843a84208d200990298fff72ffffebd0520c5e7
PTCd: returns 64 bytes, showing 10: 000003008416000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1684
wrote 64 bytes at 9408
PTCd: input data 64 bytes: 0620d3e76c4b04222621029800f0e8fcfebdf8b5054600f0a5fe5f485f4968434018112189014618b47cff2c5fd05849a2005718f97800295ad11721c9014018
PTCd: returns 64 bytes, showing 10: 000003008a16000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x168a
wrote 64 bytes at 9472
PTCd: input data 64 bytes: 8068810f0dd08000800d642850d901208007fff73ffff8784e4f4037002802d010e00003f0e72002c1190a6b1f239b021a430a6347490123703140180f22d903
PTCd: returns 64 bytes, showing 10: 00000300c916000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x16c9
wrote 64 bytes at 9536
PTCd: input data 64 bytes: 00f076fe2046fff783fe002811d00120001b0006000cc1190a6b1f239b021a430a633c490123703140180f22d90300f05ffe707ca0421ad1ff22404b91322521
PTCd: returns 64 bytes, showing 10: 00000300c916000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x16c9
wrote 64 bytes at 9600
PTCd: input data 64 bytes: 284600f08dfc3c4b04222621284600f087fc5c2045433748394a2818014640310c464a82502100f0b7fc00202074f8bd2521284600f06efc2621284600f06afc
PTCd: returns 64 bytes, showing 10: 00000300f116000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x16f1
wrote 64 bytes at 9664
PTCd: input data 64 bytes: 2846fff7f3fef8bdf8b523490646484322494518112080012c18a07c617c88425fd0ff2902d0304600f00afea07c617c88424cd0ff284ad1880015494018c078
PTCd: returns 64 bytes, showing 10: 000003001917000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1719
wrote 64 bytes at 9728
PTCd: input data 64 bytes: 002844d11720c00128188168880f3cd08800800d64283ad9ff22184b91322521304600f03dfc144b04222621304600f037fc5c200f4a70438218174610494037
PTCd: returns 64 bytes, showing 10: 000003001917000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1719
wrote 64 bytes at 9792
PTCd: input data 64 bytes: 79825021104600f067fc1be0123302202005022000090940d40f0000541302209a380220ce1aaddec002094000110940e8330220007e0220f35d0220795d0220
PTCd: returns 64 bytes, showing 10: 000003005817000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1758
wrote 64 bytes at 9856
PTCd: input data 64 bytes: 630300000020387409e00803c1e72521304600f0fffb2621304600f0fbfba07c60741520c0012818407b012807d10121304600f0c3fd0121304600f0c5fdf8bd
PTCd: returns 64 bytes, showing 10: 000003009717000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1797
wrote 64 bytes at 9920
PTCd: input data 64 bytes: f0b5054600247b4b204646009e5b964201d3044603e0401cc0b22028f5d3012920d01f239b020a262846fff7b1fd724a29028918714f0a6b002817d060080446
PTCd: returns 64 bytes, showing 10: 00000300d617000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x17d6
wrote 64 bytes at 9984
PTCd: input data 64 bytes: b4409a431c4022430a630121491bcab26949160271180e6b9e4326430e637855b854f0bd1f23db061b26dde72046b0409a43184002430a637c55f0bdf8b51346
PTCd: returns 64 bytes, showing 10: 000003001518000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1815
wrote 64 bytes at 10048
PTCd: input data 64 bytes: 04460125fff784fd06465b4920024118c96ac903cf0f012b03d000252146403101e021463c31c9b20091534910222c3140182b46110300f05bfd002e0bd00120
PTCd: returns 64 bytes, showing 10: 000003001918000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1819
wrote 64 bytes at 10112
PTCd: input data 64 bytes: 001b0006010c4c4810222c3008182b46110300f04dfdbd4211d04949a0004018867800223046009900f054fd022c06d27134e0b233460022294600f04dfbf8bd
PTCd: returns 64 bytes, showing 10: 000003001918000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1819
wrote 64 bytes at 10176
PTCd: input data 64 bytes: 70b50c46054600f04bfd2846fff740fd00280ed03b4bff20da6fc13082436007400f81010a43072149028a4340020243da6770bd70b50d46044600f037fd2046
PTCd: returns 64 bytes, showing 10: 000003005818000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1858
wrote 64 bytes at 10240
PTCd: input data 64 bytes: fff726fd002805d00120001bc0b2294600f02cfd70bdffb504462a4883b00d4680300c9f816ac26a006b01920097029029462046069b059a00f01efd2046fff7
PTCd: returns 64 bytes, showing 10: 000003009718000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1897
wrote 64 bytes at 10304
PTCd: input data 64 bytes: 07fd01210e1b002806d00097f0b22946069b059a00f010fd6846007ac10603d5002d01d1002c11d0810603d5002d01d1012c0bd0410603d5012d01d1002c05d0
PTCd: returns 64 bytes, showing 10: 000003009e18000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x189e
wrote 64 bytes at 10368
PTCd: input data 64 bytes: c00914d0012d12d1012c10d10a4d20024019016b0c4b194001632046fff7d8fc002804d030024019016b1940016307b0f0bd0000706d022040090940b8360220
PTCd: returns 64 bytes, showing 10: 00000300dd18000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x18dd
wrote 64 bytes at 10432
PTCd: input data 64 bytes: 20050220fc320220fffefffbfeb50746010241480e18b46b600366d53f484049784340181521c90159224118520101918518c97c3b4a0092012902d000290ad0
PTCd: returns 64 bytes, showing 10: 00000300fd18000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x18fd
wrote 64 bytes at 10496
PTCd: input data 64 bytes: 19e00f2189014018007fc00617d4908c40060cd413e0112189014018007d002839d1287f002836d1687f002833d10021384600f0a7fc0198c07c01282bd10198
PTCd: returns 64 bytes, showing 10: 000003001619000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1916
wrote 64 bytes at 10560
PTCd: input data 64 bytes: c069c000800f022825d10098406a810621d540061fd4687f00281cd12249b8000858002817d000f0fdfb2521384600f091fa2621384600f08dfaeff31080c507
PTCd: returns 64 bytes, showing 10: 000003005519000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1955
wrote 64 bytes at 10624
PTCd: input data 64 bytes: ed0f72b6384600f083fc002d00d162b6012080040de0200203d50120c0050443b463384600f07afcfebd2002f9d50120c0050443b463febd10b5084b084c4343
PTCd: returns 64 bytes, showing 10: 000003009419000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1994
wrote 64 bytes at 10688
PTCd: input data 64 bytes: 1b190f24a4011b191b8cdb0702d000f06bfc10bd0022fae700090940d40f0000541302207c330220e8330220f8b50546c000401b0026c7b234461b493819c01d
PTCd: returns 64 bytes, showing 10: 00000300af19000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x19af
wrote 64 bytes at 10752
PTCd: input data 64 bytes: 495dc0b2132909d1072802d00e2803d004e0002d09d001e0012d06d000f04afcff2802d0012181400e43641c072ce4db0e48c06a0e49b0430860f8bd10b53b28
PTCd: returns 64 bytes, showing 10: 00000300ee19000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x19ee
wrote 64 bytes at 10816
PTCd: input data 64 bytes: 01d0492800d1002200f03afc10bd70b50c460546052902d1192100f037fc2146284600f033fc70bd02340220000706400006064070b50546134c0a46080601d4
PTCd: returns 64 bytes, showing 10: 00000300ef19000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x19ef
wrote 64 bytes at 10880
PTCd: input data 64 bytes: 03210de00221d0050ad5608c8006800f032810d002280ed0284600f01dfc0421608c8006800f032809d0022807d0284600f012fc70bd284600f014fcefe72846
PTCd: returns 64 bytes, showing 10: 00000300f219000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x19f2
wrote 64 bytes at 10944
PTCd: input data 64 bytes: 00f010fc70bd0000fc32022070b5144a0021124b1525546a0846ed01114a4243d2185219d67c012e08d1d269d200920f022a03d1a20601d5012200e00022401c
PTCd: returns 64 bytes, showing 10: 00000300f219000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x19f2
wrote 64 bytes at 11008
PTCd: input data 64 bytes: 1143c0b20228e9d307480078400703d4002901d100f0ecfb70bd0000541302207c330220d40f000008420220f3b581b0294b01980f225843284b9201c0188618
PTCd: returns 64 bytes, showing 10: 00000300031a000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1a03
wrote 64 bytes at 11072
PTCd: input data 64 bytes: 1722d20185181522d20100278418002919d0012935d1019800f0d0fb002830d0e07c00282dd1f068800202d5019800f0cbfb1b480079012823d1ff2208231432
PTCd: returns 64 bytes, showing 10: 000003001a1a000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1a1a
wrote 64 bytes at 11136
PTCd: input data 64 bytes: ef7005211ae0019800f0b8fb002818d0f068800206d5e07c002803d10021019800f0b8fb0e48007901280ad1e07c012807d1ff2208231332ef700421019800f0
PTCd: returns 64 bytes, showing 10: 00000300591a000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1a59
wrote 64 bytes at 11200
PTCd: input data 64 bytes: 5df9febd10b5064c0122227100f0a8fb0020207110bd0000d40f000054130220b06d022010b5eff31080c407e40f72b600f09cfb002000f09ffb012000f09cfb
PTCd: returns 64 bytes, showing 10: 00000300981a000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1a98
wrote 64 bytes at 11264
PTCd: input data 64 bytes: 00210348002c0170417000d162b610bd6e38022010b5074b00225a6100f092fb10bd10b5092003498003486100f090fb10bd0000c008094030b5114d114ceb14
PTCd: returns 64 bytes, showing 10: 00000300981a000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1a98
wrote 64 bytes at 11328
PTCd: input data 64 bytes: c318002905d080210a43a84214d1a07813e0a84206d1207805e04008186030bd1a6030bd6078c107fad0f6e740088030d86130bdda6130bde078c107fad0f5e7
PTCd: returns 64 bytes, showing 10: 00000300d71a000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1ad7
wrote 64 bytes at 11392
PTCd: input data 64 bytes: 00000340b06d022070b50c46054600f065fb0d48408c8006820f032a0ed0022a0cd00a4808220368aa401146994305d10068012c03d0104000f056fb70bd1040
PTCd: returns 64 bytes, showing 10: 00000300d71a000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1ad7
wrote 64 bytes at 11456
PTCd: input data 64 bytes: 00f058fb70bd0000fc32022000050640f0b585b01c4605461e7800f051fb070079d13e493e4b69430f22c918304692018e18039107285fd012286cd10922611c
PTCd: returns 64 bytes, showing 10: 00000300d71a000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1ad7
wrote 64 bytes at 11520
PTCd: input data 64 bytes: 684600f0b5f868468078010725d56946c9788c46490920d0318c304e2a4672432f4e15230907db019219490fd218022908d1032906d1052904d104290dd0d17c
PTCd: returns 64 bytes, showing 10: 00000300161b000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1b16
wrote 64 bytes at 11584
PTCd: input data 64 bytes: 01290ad16146cb06117ddb0e012909d0012149010b436946cb704107490f032902d023e00221f4e71e4aa900515800291cd11d220399d2018918097f0907890f
PTCd: returns 64 bytes, showing 10: 00000300171b000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1b17
wrote 64 bytes at 11648
PTCd: input data 64 bytes: 012907d0022909d001070bd5c008c000401c09e0c008c000001d05e0c008c000401d01e0c008c0006946887009226946601c00f05df80ee060786a461070a178
PTCd: returns 64 bytes, showing 10: 00000300181b000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1b18
wrote 64 bytes at 11712
PTCd: input data 64 bytes: 5170317e8907890f022902d103210843107010786070384605b0f0bdd40f000054130220e833022006494a88824308464a8020380089000402d5022002434a80
PTCd: returns 64 bytes, showing 10: 00000300571b000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1b57
wrote 64 bytes at 11776
PTCd: input data 64 bytes: 704700009c33022010b50446262100f041f82521204600f03df8204600f0b6fa10bd10b5044600f0b7fa5c20444303480021201840300176417610bd007e0220
PTCd: returns 64 bytes, showing 10: 00000300961b000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1b96
wrote 64 bytes at 11840
PTCd: input data 64 bytes: 03b40148019001bdc31c000003b40148019001bdb7ae010003b40148019001bdc1c7010003b40148019001bd5ddd010003b40148019001bd35dd010003b40148
PTCd: returns 64 bytes, showing 10: 00000300991b000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1b99
wrote 64 bytes at 11904
PTCd: input data 64 bytes: 019001bdf7c3010003b40148019001bd23d6010003b40148019001bd4bd4010003b40148019001bd6fd4010003b40148019001bdb507000003b40148019001bd
PTCd: returns 64 bytes, showing 10: 000003009a1b000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1b9a
wrote 64 bytes at 11968
PTCd: input data 64 bytes: 8fc0010003b40148019001bd770a000003b40148019001bd35c0010003b40148019001bd53c0010003b40148019001bd17c0010003b40148019001bdb3c00100
PTCd: returns 64 bytes, showing 10: 00000300d91b000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1bd9
wrote 64 bytes at 12032
PTCd: input data 64 bytes: 03b40148019001bd5183000003b40148019001bdd5c8010003b40148019001bd6bdd010003b40148019001bd29d1010003b40148019001bdc97e000003b40148
PTCd: returns 64 bytes, showing 10: 00000300dc1b000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1bdc
wrote 64 bytes at 12096
PTCd: input data 64 bytes: 019001bd85ca010003b40148019001bddbcc010003b40148019001bd65ca010003b40148019001bd9fcc010003b40148019001bd43d2010003b40148019001bd
PTCd: returns 64 bytes, showing 10: 00000300dd1b000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1bdd
wrote 64 bytes at 12160
PTCd: input data 64 bytes: 3d8e000003b40148019001bdc9c8010003b40148019001bdf9c8010003b40148019001bdbdc8010003b40148019001bd2fc2010003b40148019001bde7cc0100
PTCd: returns 64 bytes, showing 10: 000003001a1c000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1c1a
wrote 64 bytes at 12224
PTCd: input data 64 bytes: 03b40148019001bd0fc4010003b40148019001bdf3cc010003b40148019001bd5d70000003b40148019001bdc9d0010003b40148019001bd75c7010003b40148
PTCd: returns 64 bytes, showing 10: 000003001d1c000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1c1d
wrote 64 bytes at 12288
PTCd: input data 64 bytes: 019001bd97a9000003b40148019001bdb3aa000003b40148019001bd61a8000003b40148019001bde1bd000003b40148019001bd35cf010003b40148019001bd
PTCd: returns 64 bytes, showing 10: 000003001e1c000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1c1e
wrote 64 bytes at 12352
PTCd: input data 64 bytes: a9ca010003b40148019001bd8596000003b40148019001bd63cb000003b40148019001bd35dd010003b40148019001bd99e2000003b40148019001bd51ca0100
PTCd: returns 64 bytes, showing 10: 000003005d1c000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1c5d
wrote 64 bytes at 12416
PTCd: input data 64 bytes: 03b40148019001bd59c9010003b40148019001bd4dc9010003b40148019001bd0fd4010003b40148019001bde975000003b40148019001bdd5b5000003b40148
PTCd: returns 64 bytes, showing 10: 00000300601c000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1c60
wrote 64 bytes at 12480
PTCd: input data 64 bytes: 019001bd95b7000003b40148019001bdcb44010003b40148019001bd9963010003b40148019001bd33d4010003b40148019001bd65d7010003b40148019001bd
PTCd: returns 64 bytes, showing 10: 00000300611c000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1c61
wrote 64 bytes at 12544
PTCd: input data 64 bytes: 9961010003b40148019001bdb1d5010003b40148019001bdd31e010003b40148019001bd591f010003b40148019001bd5d24010003b40148019001bd35390100
PTCd: returns 64 bytes, showing 10: 00000300a01c000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1ca0
wrote 64 bytes at 12608
PTCd: input data 64 bytes: 03b40148019001bdab3d010003b40148019001bd8b3d010003b40148019001bdebc6010003b40148019001bd6bd2010003b40148019001bd4dd2010003b40148
PTCd: returns 64 bytes, showing 10: 00000300a31c000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1ca3
wrote 64 bytes at 12672
PTCd: input data 64 bytes: 019001bd51d1010003b40148019001bd05d1010003b40148019001bdc3cc010003b40148019001bde1c8010003b40148019001bd1dd1010003b40148019001bd
PTCd: returns 64 bytes, showing 10: 00000300a41c000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1ca4
wrote 64 bytes at 12736
PTCd: input data 64 bytes: 191d010003b40148019001bdedc8010003b40148019001bd07c1010003b40148019001bdd500000003b40148019001bd1dc9010003b40148019001bd39170100
PTCd: returns 64 bytes, showing 10: 00000300bd1c000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1cbd
wrote 64 bytes at 12800
PTCd: input data 64 bytes: 03b40148019001bdcdcf010003b40148019001bdb1d0010003b40148019001bd17cd010003b40148019001bd8f19010003b40148019001bd67d3010003b40148
PTCd: returns 64 bytes, showing 10: 00000300c01c000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1cc0
wrote 64 bytes at 12864
PTCd: input data 64 bytes: 019001bdd1d9010003b40148019001bddbd9010003b40148019001bd43c6010003b40148019001bd7115010003b40148019001bda914010003b40148019001bd
PTCd: returns 64 bytes, showing 10: 00000300c11c000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1cc1
wrote 64 bytes at 12928
PTCd: input data 64 bytes: 2f12010003b40148019001bdc1cf010003b40148019001bd4dc2010003b40148019001bd7974010003b40148019001bd7169010003b40148019001bd9dc20100
PTCd: returns 64 bytes, showing 10: 00000300f01c000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1cf0
wrote 64 bytes at 12992
PTCd: input data 64 bytes: 03b40148019001bd995f000003b40148019001bd1964000003b40148019001bd4bc5010003b40148019001bd57c5010003b40148019001bd8bd3010003b40148
PTCd: returns 64 bytes, showing 10: 00000300f31c000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1cf3
wrote 64 bytes at 13056
PTCd: input data 64 bytes: 019001bd6dd8010003b40148019001bd2fd5010003b40148019001bdf9ce010003b40148019001bdcd21000003b40148019001bd994d000003b40148019001bd
PTCd: returns 64 bytes, showing 10: 00000300f41c000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1cf4
wrote 64 bytes at 13120
PTCd: input data 64 bytes: a9dc010003b40148019001bd3503000003b40148019001bd5903000003b40148019001bdbd48000003b40148019001bd53c3010003b40148019001bd49c30100
PTCd: returns 64 bytes, showing 10: 00000300331d000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1d33
wrote 64 bytes at 13184
PTCd: input data 64 bytes: 03b40148019001bdbb93010003b40148019001bdcd42010003b40148019001bd494101005e0176028403740464055406440734082409140a040bf40be40cd40d
PTCd: returns 64 bytes, showing 10: 00000300361d000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1d36
wrote 64 bytes at 13248
PTCd: input data 64 bytes: c40eb40fa4109411841274136414541541162418041ae41bc41da41f842164234425ffff00000000000000000000000000000000000000000000000000000000
PTCd: returns 64 bytes, showing 10: 00000300751d000000
PatchLoadingState: 0x03
TotalDataTransferred: 0x1d75
wrote 64 bytes at 13312
PTCc: input data 0 bytes:
PTCc: returns 64 bytes, showing 4: 000040
DevicePatchCompleteStatus: 0x40
PTCq: input data 0 bytes:
PTCq: returns 64 bytes, showing 15: 80000a00751d0000000006000801
TaskResponse: 0x80
PatchLoadingState: 0x0a
TotalDataTransferred: 0x1d75
DevicePatchState: 0x06
ApplicationConfigurationPatchState: 0x08
ApplicationConfigurationPatchSource: 0x01
TPS65987 is in APP  mode
Customer Use Reg is:
0800000000000000

Best Regards,

Tomás Almeida

  • Hi Tomas,

    • The low region binary you generated is correct, that is the one that should be used when patching. 
    • The only documentation we have for PTCx patching is in the technical reference manual. We unfortunately do not have additional documentation.
    • I will check on the total data transferred and get back to you.
    • Application Configuration is the configuration settings in the GUI, while the patch is the base image that you can see on the "General Settings" page of the GUI. You should select "both", since the binary generated will combine the two. If one of the two is not selected, then PD will attempt to use a default configuration / patch.

    It does appear that the patch download was not successful, since Device Patch State indicates "not a patch". Are you able to collect I2C logs that show these I2C writes/reads occurring? If PD is reporting "not a patch" after download and the total data transferred does not match the patch size, I suspect that not all the bytes are being written properly over I2C.

    Best,

    Alex

  • Hi Alex,
    Thank you for your replies, I have since then managed to transfer patches to the device in our design by fixing the above C routines (the 4cc data register was being written to without the data length in the initial byte).
    I am now receiving the "Device Patch Loading Done" status from the PTCc command and both "PatchReturnCode: 0x0" and "PatchLoadingState: 0xa (Patching Processes Completed Successfully)" from PTCq command.
    However, I am still receving 30030000a2060000as boot flags witch indicates Patch Download Error and PTCq reports that ApplicationConfigurationState: 0x08 (Application Configuration Patch Error)
    So it does not look like the application configuration is being fully loaded.
    This error occurs even with the simplest patch file I can generate from the Application Customization Tool, by pressing "New Project -> TPS65987DDH -> Standard (Recommended) -> UFP only -> Save Binary -> Low Region (Minimal headers).
    1. From what you wrote (and my probing of registers) it seems that without SPI flash the device is in PTCH state and has no default ROM firmware, is that correct? Regardless what "base image" I choose, it seems the "Device Info" register contains "TPS65988 HW0030 FWF707.10.00 ZAce1", why is that?
    2. it seems only the Customer Use word set for Port2 is reflected in the 0x6 register, despite communication with the port1 i2c address. Why is that? What other settings for Port 2 are applied to Port 1?
    3. How can I debug the Application Configuration Patch Error further?

    Best Regards,

    Tomás Almeida

  • Hi Tomas,

    1.) Correct, without SPI flash, the PD cannot load FW and will be in a semi-disabled PTCH state. There is no default ROM firmware apart from the bootloader in TPS65987D. Patching the PD controller like you are attempting to do will enable the PD without needing to load FW from a flash, because the FW is patched directly to the PD's SRAM. The device info register is a known bug on the TPS65987D, and does not update with newly flashed FW unfortunately.

    2.) This should not be happening. Can you send me an I2C log of the EC writing to the Customer Use register for Port 1 and the data showing up in Port 2? This should not occur for any register.

    3.) To debug further, we need to verify if the I2C transfer of the patch FW data occurred correctly from start to finish. There is limited information that the PD registers themselves can tell us other than the patch status you have reported. Can you capture I2C1/2 data showing the EC writing to the PD controller? Can you also include a digital capture of LDO_3V3 output from PD controller at the same time? I'll review the log and check everything. 

    Best,

    Alex

  • Hi Alex,


    Thank you for your reply. Since your post we have noticed that for whatever reason, we were using an application configuration that was presenting two ports, while our chip only supports one port, so we have started with a fresh config, solving point 2.


    LDO_3V3 does get pulled high when the chip is powered. Attached is a log of the I2C bytes written and return status during the patching process, but perhaps you wanted a scope trace?

    We have also gotten much further on the ApplicationConfigurationPatchState Error, as we discovered this post: https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1200098/tps65987d-tps65987d-custom-board-without-external-flash

    We had the chip configured in BP_NoResponse Safe Configuration boot mode, and did not realise this means the ports power path is disabled regardless of configuration in this mode! Re-strapping to one of the "Infinite Wait" modes works much better and we can now see PDOs being negotiated for a DFP/UFP source as well as our I2C slave regulators being configured for these power modes.

    The patching process still returns ApplicationConfigurationPatchState = Error , however the configuration selected does seem to be reflected by the chip after the patching process completes - including sending the requisite I2C messages to the regulator when source PDOs are negotiated.
    We are still in the process of verifying our design, but we are making progress now.

    I2C log:

    patch.log

    Best Regards,

    Tomás Almeida

  • Hi Tomas,

    Your I2C data log looks ok other than the ApplicationConfigurationPatchState error. All 13376 bytes of patch data was transferred to the PD. I decoded the boot flags, and no error for patch load was reported there, which is good. Since the TPS65987D is working after patch loading is complete, this does not appear to be a functional issue. I do have something I recommend you to try, that may clear the error. PD is reporting in the boot flags register (decoded below), the SPI_MISO pin of the PD was not grounded at boot, which in this cases causes PD to detect the presence of SPI Flash. PD attempts to read from SPI Flash, and reports failure. Can you ground this SPI_MISO pin and try the patch process again? 

    Best,

    Alex

  • Hi Alex,

    Grounding the SPI_MISO pin did clear that boot flag but the ApplicationConfigurationPatchState is still the same.

    Best Regards,

    Tomás Almeida

  • Hi Tomas,

    I took a look at the TPS65987D firmware and found that there are a few bits for the PTCq response data that do not match with the technical reference manual for TPS65987D. Please see the correct Byte 13 bit mapping for the PTCq response in 0x09 data register:

    From the corrected table above for the ApplicationConfigurationPatchState field (byte 13) of the PTCq response, you can see that the 0x08 value you read is actually indicating a successful application configuration patch load. 0x08 is what you should expect to see. 0x08 was incorrectly mapped to an error in the technical reference manual. We will work to get that changed. Thank you for pointing this out and our apologies for the mix up.

    Best,

    Alex