• Home
  • Raw
  • Download

Lines Matching refs:len

54 	size_t len;  member
537 static bool can_add(int *err, struct opal_dev *cmd, size_t len) in can_add() argument
542 if (remaining_size(cmd) < len) { in can_add()
543 pr_debug("Error adding %zu bytes: end of buffer.\n", len); in can_add()
560 bool has_sign, int len) in add_short_atom_header() argument
568 atom |= len & SHORT_ATOM_LEN_MASK; in add_short_atom_header()
574 bool has_sign, int len) in add_medium_atom_header() argument
581 header0 |= (len >> 8) & MEDIUM_ATOM_LEN_MASK; in add_medium_atom_header()
584 cmd->cmd[cmd->pos++] = len; in add_medium_atom_header()
589 size_t len; in add_token_u64() local
598 len = DIV_ROUND_UP(msb, 8); in add_token_u64()
600 if (!can_add(err, cmd, len + 1)) { in add_token_u64()
604 add_short_atom_header(cmd, false, false, len); in add_token_u64()
605 while (len--) in add_token_u64()
606 add_token_u8(err, cmd, number >> (len * 8)); in add_token_u64()
609 static u8 *add_bytestring_header(int *err, struct opal_dev *cmd, size_t len) in add_bytestring_header() argument
614 if (len & ~SHORT_ATOM_LEN_MASK) { in add_bytestring_header()
619 if (!can_add(err, cmd, header_len + len)) { in add_bytestring_header()
625 add_short_atom_header(cmd, true, false, len); in add_bytestring_header()
627 add_medium_atom_header(cmd, true, false, len); in add_bytestring_header()
633 const u8 *bytestring, size_t len) in add_token_bytestring() argument
637 start = add_bytestring_header(err, cmd, len); in add_token_bytestring()
640 memcpy(start, bytestring, len); in add_token_bytestring()
641 cmd->pos += len; in add_token_bytestring()
748 if (tok->len == 0) { in response_get_token()
760 tok->len = 1; in response_parse_tiny()
770 return tok->len; in response_parse_tiny()
777 tok->len = (pos[0] & SHORT_ATOM_LEN_MASK) + 1; in response_parse_short()
789 if (tok->len > 9) { in response_parse_short()
793 for (i = tok->len - 1; i > 0; i--) { in response_parse_short()
800 return tok->len; in response_parse_short()
807 tok->len = (((pos[0] & MEDIUM_ATOM_LEN_MASK) << 8) | pos[1]) + 2; in response_parse_medium()
817 return tok->len; in response_parse_medium()
824 tok->len = ((pos[1] << 16) | (pos[2] << 8) | pos[3]) + 4; in response_parse_long()
834 return tok->len; in response_parse_long()
841 tok->len = 1; in response_parse_token()
845 return tok->len; in response_parse_token()
949 return tok->len - skip; in response_get_string()
1231 u64 len; in generic_table_write_data() local
1242 len = response_get_u64(&dev->parsed, 4); in generic_table_write_data()
1243 if (size > len || offset > len - size) { in generic_table_write_data()
1245 offset + size, len); in generic_table_write_data()
1266 len = min(remaining_size(dev) - (2+1+CMD_FINALIZE_BYTES_NEEDED), in generic_table_write_data()
1268 pr_debug("Write bytes %zu+%llu/%llu\n", off, len, size); in generic_table_write_data()
1270 dst = add_bytestring_header(&err, dev, len); in generic_table_write_data()
1274 if (copy_from_user(dst, src + off, len)) { in generic_table_write_data()
1279 dev->pos += len; in generic_table_write_data()
1289 off += len; in generic_table_write_data()
2009 u64 table_len, len; in read_table_data() local
2040 len = min(max_read_size, (size_t)(read_size - off)); in read_table_data()
2041 add_token_u64(&err, dev, offset + off + len); /* end row value in read_table_data()
2056 if (dev->prev_d_len > len + 1) { in read_table_data()
2069 off += len; in read_table_data()