Lines Matching refs:ack
58 * reboot barker (4 le32 words with the same value). We ack it by
60 * reboot ack barker (4 le32 words with value I2400M_ACK_BARKER) and
437 * Verify the ack data received
442 * @opcode: opcode which generated this ack. For error messages.
443 * @ack: pointer to ack data we received
451 struct i2400m_bootrom_header *ack,
457 d_fnstart(8, dev, "(i2400m %p opcode %d ack %p size %zu)\n",
458 i2400m, opcode, ack, ack_size);
459 if (ack_size < sizeof(*ack)) {
463 opcode, ack_size, sizeof(*ack));
466 result = i2400m_is_boot_barker(i2400m, ack, ack_size);
473 && memcmp(ack, i2400m_ACK_BARKER, sizeof(*ack)) == 0) {
475 d_printf(3, dev, "boot-mode cmd %d: HW reboot ack barker\n",
482 ack->data_size = le32_to_cpu(ack->data_size);
483 ack->target_addr = le32_to_cpu(ack->target_addr);
484 ack->block_checksum = le32_to_cpu(ack->block_checksum);
487 opcode, i2400m_brh_get_opcode(ack),
488 i2400m_brh_get_response(ack),
489 i2400m_brh_get_use_checksum(ack),
490 i2400m_brh_get_response_required(ack),
491 i2400m_brh_get_direct_access(ack));
493 if (i2400m_brh_get_signature(ack) != 0xcbbc) {
495 "0x%04x\n", opcode, i2400m_brh_get_signature(ack));
498 if (opcode != -1 && opcode != i2400m_brh_get_opcode(ack)) {
501 opcode, i2400m_brh_get_opcode(ack), opcode);
504 if (i2400m_brh_get_response(ack) != 0) { /* failed? */
506 opcode, i2400m_brh_get_response(ack));
509 if (ack_size < ack->data_size + sizeof(*ack)) {
513 (size_t) le32_to_cpu(ack->data_size) + sizeof(*ack));
528 d_fnend(8, dev, "(i2400m %p opcode %d ack %p size %zu) = %d\n",
529 i2400m, opcode, ack, ack_size, (int) result);
552 * If NULL, no command is sent (we just wait for an ack).
557 * @ack: buffer where to place the acknowledgement. If it is a regular
563 * @ack_size: size of @ack, 16 aligned; you need to provide at least
564 * sizeof(*ack) bytes and then enough to contain the return data
582 struct i2400m_bootrom_header *ack, size_t ack_size,
589 d_fnstart(6, dev, "(i2400m %p cmd %p size %zu ack %p size %zu)\n",
590 i2400m, cmd, cmd_size, ack, ack_size);
591 BUG_ON(ack_size < sizeof(*ack));
608 result = i2400m->bus_bm_wait_for_ack(i2400m, ack, ack_size);
610 dev_err(dev, "boot-mode cmd %d: error waiting for an ack: %d\n",
615 /* verify the ack and read more if necessary [result is the
616 * final amount of bytes we get in the ack] */
617 result = __i2400m_bm_ack_verify(i2400m, opcode, ack, ack_size, flags);
627 d_fnend(6, dev, "(i2400m %p cmd %p size %zu ack %p size %zu) = %d\n",
628 i2400m, cmd, cmd_size, ack, ack_size, (int) result);
654 struct i2400m_bootrom_header ack;
669 &ack, sizeof(ack), 0);
708 struct i2400m_bootrom_header ack;
744 &ack, sizeof(ack), I2400M_BM_CMD_RAW);
792 struct i2400m_bootrom_header *cmd, ack;
829 &ack, sizeof(ack), I2400M_BM_CMD_RAW);
859 * b. (1) echo/ack the reboot sending the reboot barker back and (2)
860 * getting an ack barker in return
871 * echo/ack reboot barker being sent back, it doesn't understand
885 struct i2400m_bootrom_header ack;
891 BUILD_BUG_ON(sizeof(ack) != sizeof(i2400m_ACK_BARKER));
906 result = i2400m_bm_cmd(i2400m, NULL, 0, &ack, sizeof(ack),
919 d_printf(4, dev, "device reboot: got ack barker - whatever\n");
924 * already and expecting an ack; if we don't know what
930 "trying (set) %08x echo/ack\n",
938 &ack, sizeof(ack),
941 dev_warn(dev, "device boot: got ack barker "
942 "after sending echo/ack barker "
959 d_dump(1, dev, &ack, result);
962 /* At this point we ack back with 4 REBOOT barkers and expect
964 * hence the cast. _bm_cmd() will catch the reboot ack
967 d_printf(4, dev, "device reboot ack: sending ack [%d # left]\n", count);
970 &ack, sizeof(ack), I2400M_BM_CMD_RAW);
973 d_printf(4, dev, "reboot ack: got reboot barker - retrying\n");
978 d_printf(4, dev, "reboot ack: got ack barker - good\n");
982 d_printf(4, dev, "reboot ack timedout: retrying\n");
985 dev_err(dev, "reboot ack timedout too long: "
994 dev_err(dev, "device reboot ack: error %d while waiting for "
995 "reboot ack barker - rebooting\n", result);
998 d_printf(2, dev, "device reboot ack: got ack barker - boot done\n");
1007 dev_err(dev, "Timed out waiting for reboot ack\n");
1029 struct i2400m_bootrom_header ack;
1039 &ack_buf.ack, sizeof(ack_buf), 0);
1117 struct i2400m_bootrom_header ack;
1127 &ack, sizeof(ack), 0);