code_block
struct code_block *code_block)
p = &code_block->length;
for (i = 0; p < code_block->csum; i++)
code_block->csum[i & 1] ^= *p++;
p = &code_block->length;
for (i = 0; i < sizeof(*code_block);) {
int tosend = sizeof(*code_block) - i;
struct code_block code_block = { .length = sizeof(code_block) };
put_unaligned_be16(0x1000, &code_block.pulse[3]);
ret = send_data_block(ir, ZILOG_INIT_END, &code_block);
unsigned int count, struct code_block *code_block)
code_block->carrier_pulse = DIV_ROUND_CLOSEST(
code_block->carrier_space = DIV_ROUND_CLOSEST(
s = find_slot(code_block->space,
ARRAY_SIZE(code_block->space), l);
p = find_slot(code_block->pulse,
ARRAY_SIZE(code_block->pulse), l);
for (i = 1; i < ARRAY_SIZE(code_block->space); i++) {
u16 d = get_unaligned_be16(&code_block->space[i]);
if (get_unaligned_be16(&code_block->space[s]) > d)
if (leading >= ARRAY_SIZE(code_block->codes) - 3 - rep) {
copy_codes(code_block->codes, codes, leading);
code_block->codes[leading] = 0x82;
copy_codes(code_block->codes + leading + 1, codes + leading,
code_block->codes[c++] = 0xc0;
if (c >= ARRAY_SIZE(code_block->codes) - 3) {
code_block->codes[0] = 0x82;
copy_codes(code_block->codes + 1, codes, c);
code_block->codes[c++] = 0xc4;
while (c < ARRAY_SIZE(code_block->codes))
code_block->codes[c++] = 0x83;
struct code_block code_block = { .length = sizeof(code_block) };
ret = zilog_ir_format(rcdev, txbuf, count, &code_block);
ret = send_data_block(ir, ZILOG_UIR_END, &code_block);