Lines Matching refs:format

135 	if (map->format.format_write)  in regmap_readable()
149 if (!map->format.format_write && !regmap_readable(map, reg)) in regmap_volatile()
761 map->format.reg_bytes = DIV_ROUND_UP(config->reg_bits, 8); in __regmap_init()
762 map->format.pad_bytes = config->pad_bits / 8; in __regmap_init()
763 map->format.reg_shift = config->reg_shift; in __regmap_init()
764 map->format.val_bytes = DIV_ROUND_UP(config->val_bits, 8); in __regmap_init()
765 map->format.buf_size = DIV_ROUND_UP(config->reg_bits + in __regmap_init()
858 map->format.format_write = regmap_format_2_6_write; in __regmap_init()
868 map->format.format_write = regmap_format_4_12_write; in __regmap_init()
878 map->format.format_write = regmap_format_7_9_write; in __regmap_init()
881 map->format.format_write = regmap_format_7_17_write; in __regmap_init()
891 map->format.format_write = regmap_format_10_14_write; in __regmap_init()
901 map->format.format_write = regmap_format_12_20_write; in __regmap_init()
909 map->format.format_reg = regmap_format_8; in __regmap_init()
915 map->format.format_reg = regmap_format_16_be; in __regmap_init()
918 map->format.format_reg = regmap_format_16_le; in __regmap_init()
921 map->format.format_reg = regmap_format_16_native; in __regmap_init()
931 map->format.format_reg = regmap_format_24_be; in __regmap_init()
941 map->format.format_reg = regmap_format_32_be; in __regmap_init()
944 map->format.format_reg = regmap_format_32_le; in __regmap_init()
947 map->format.format_reg = regmap_format_32_native; in __regmap_init()
959 map->format.parse_inplace = regmap_parse_inplace_noop; in __regmap_init()
963 map->format.format_val = regmap_format_8; in __regmap_init()
964 map->format.parse_val = regmap_parse_8; in __regmap_init()
965 map->format.parse_inplace = regmap_parse_inplace_noop; in __regmap_init()
970 map->format.format_val = regmap_format_16_be; in __regmap_init()
971 map->format.parse_val = regmap_parse_16_be; in __regmap_init()
972 map->format.parse_inplace = regmap_parse_16_be_inplace; in __regmap_init()
975 map->format.format_val = regmap_format_16_le; in __regmap_init()
976 map->format.parse_val = regmap_parse_16_le; in __regmap_init()
977 map->format.parse_inplace = regmap_parse_16_le_inplace; in __regmap_init()
980 map->format.format_val = regmap_format_16_native; in __regmap_init()
981 map->format.parse_val = regmap_parse_16_native; in __regmap_init()
990 map->format.format_val = regmap_format_24_be; in __regmap_init()
991 map->format.parse_val = regmap_parse_24_be; in __regmap_init()
1000 map->format.format_val = regmap_format_32_be; in __regmap_init()
1001 map->format.parse_val = regmap_parse_32_be; in __regmap_init()
1002 map->format.parse_inplace = regmap_parse_32_be_inplace; in __regmap_init()
1005 map->format.format_val = regmap_format_32_le; in __regmap_init()
1006 map->format.parse_val = regmap_parse_32_le; in __regmap_init()
1007 map->format.parse_inplace = regmap_parse_32_le_inplace; in __regmap_init()
1010 map->format.format_val = regmap_format_32_native; in __regmap_init()
1011 map->format.parse_val = regmap_parse_32_native; in __regmap_init()
1019 if (map->format.format_write) { in __regmap_init()
1026 if (!map->format.format_write && in __regmap_init()
1027 !(map->format.format_reg && map->format.format_val)) in __regmap_init()
1030 map->work_buf = kzalloc(map->format.buf_size, GFP_KERNEL); in __regmap_init()
1036 if (map->format.format_write) { in __regmap_init()
1039 } else if (map->format.format_val) { in __regmap_init()
1129 kzalloc(map->format.buf_size, GFP_KERNEL); in __regmap_init()
1589 if (map->format.reg_shift > 0) in regmap_reg_addr()
1590 reg >>= map->format.reg_shift; in regmap_reg_addr()
1591 else if (map->format.reg_shift < 0) in regmap_reg_addr()
1592 reg <<= -(map->format.reg_shift); in regmap_reg_addr()
1602 void *work_val = map->work_buf + map->format.reg_bytes + in _regmap_raw_write_impl()
1603 map->format.pad_bytes; in _regmap_raw_write_impl()
1613 for (i = 0; i < val_len / map->format.val_bytes; i++) { in _regmap_raw_write_impl()
1622 if (!map->cache_bypass && map->format.parse_val) { in _regmap_raw_write_impl()
1624 int val_bytes = map->format.val_bytes; in _regmap_raw_write_impl()
1629 ival = map->format.parse_val(val + i); in _regmap_raw_write_impl()
1647 int val_num = val_len / map->format.val_bytes; in _regmap_raw_write_impl()
1654 win_residue, val_len / map->format.val_bytes); in _regmap_raw_write_impl()
1657 map->format.val_bytes, noinc); in _regmap_raw_write_impl()
1663 val += win_residue * map->format.val_bytes; in _regmap_raw_write_impl()
1664 val_len -= win_residue * map->format.val_bytes; in _regmap_raw_write_impl()
1677 map->format.format_reg(map->work_buf, reg, map->reg_shift); in _regmap_raw_write_impl()
1678 regmap_set_work_buf_flag_mask(map, map->format.reg_bytes, in _regmap_raw_write_impl()
1686 if (val != work_val && val_len == map->format.val_bytes) { in _regmap_raw_write_impl()
1687 memcpy(work_val, val, map->format.val_bytes); in _regmap_raw_write_impl()
1709 async->work_buf = kzalloc(map->format.buf_size, in _regmap_raw_write_impl()
1720 memcpy(async->work_buf, map->work_buf, map->format.pad_bytes + in _regmap_raw_write_impl()
1721 map->format.reg_bytes + map->format.val_bytes); in _regmap_raw_write_impl()
1730 map->format.reg_bytes + in _regmap_raw_write_impl()
1731 map->format.pad_bytes, in _regmap_raw_write_impl()
1736 map->format.reg_bytes + in _regmap_raw_write_impl()
1737 map->format.pad_bytes + in _regmap_raw_write_impl()
1752 trace_regmap_hw_write_start(map, reg, val_len / map->format.val_bytes); in _regmap_raw_write_impl()
1760 map->format.reg_bytes + in _regmap_raw_write_impl()
1761 map->format.pad_bytes + in _regmap_raw_write_impl()
1765 map->format.reg_bytes + in _regmap_raw_write_impl()
1766 map->format.pad_bytes, in _regmap_raw_write_impl()
1773 len = map->format.reg_bytes + map->format.pad_bytes + val_len; in _regmap_raw_write_impl()
1778 memcpy(buf, map->work_buf, map->format.reg_bytes); in _regmap_raw_write_impl()
1779 memcpy(buf + map->format.reg_bytes + map->format.pad_bytes, in _regmap_raw_write_impl()
1784 } else if (ret != 0 && !map->cache_bypass && map->format.parse_val) { in _regmap_raw_write_impl()
1792 trace_regmap_hw_write_done(map, reg, val_len / map->format.val_bytes); in _regmap_raw_write_impl()
1804 return map->write && map->format.format_val && map->format.format_reg; in regmap_can_raw_write()
1837 WARN_ON(!map->format.format_write); in _regmap_bus_formatted_write()
1847 map->format.format_write(map, reg, val); in _regmap_bus_formatted_write()
1851 ret = map->write(map->bus_context, map->work_buf, map->format.buf_size); in _regmap_bus_formatted_write()
1881 WARN_ON(!map->format.format_val); in _regmap_bus_raw_write()
1883 map->format.format_val(map->work_buf + map->format.reg_bytes in _regmap_bus_raw_write()
1884 + map->format.pad_bytes, val, 0); in _regmap_bus_raw_write()
1887 map->format.reg_bytes + in _regmap_bus_raw_write()
1888 map->format.pad_bytes, in _regmap_bus_raw_write()
1889 map->format.val_bytes, in _regmap_bus_raw_write()
1989 size_t val_bytes = map->format.val_bytes; in _regmap_raw_write()
2047 if (val_len % map->format.val_bytes) in regmap_raw_write()
2063 size_t val_bytes = map->format.val_bytes; in regmap_noinc_readwrite()
2167 if (val_len % map->format.val_bytes) in regmap_noinc_write()
2308 size_t val_bytes = map->format.val_bytes; in regmap_bulk_write()
2317 if (!map->write || !map->format.parse_inplace) { in regmap_bulk_write()
2353 map->format.parse_inplace(wval + i); in regmap_bulk_write()
2382 size_t val_bytes = map->format.val_bytes; in _regmap_raw_multi_reg_write()
2383 size_t reg_bytes = map->format.reg_bytes; in _regmap_raw_multi_reg_write()
2384 size_t pad_bytes = map->format.pad_bytes; in _regmap_raw_multi_reg_write()
2404 map->format.format_reg(u8, reg, map->reg_shift); in _regmap_raw_multi_reg_write()
2406 map->format.format_val(u8, val, 0); in _regmap_raw_multi_reg_write()
2536 if (!map->format.parse_inplace) in _regmap_multi_reg_write()
2693 if (val_len % map->format.val_bytes) in regmap_raw_write_async()
2724 noinc ? 1 : val_len / map->format.val_bytes); in _regmap_raw_read()
2730 map->format.format_reg(map->work_buf, reg, map->reg_shift); in _regmap_raw_read()
2731 regmap_set_work_buf_flag_mask(map, map->format.reg_bytes, in _regmap_raw_read()
2733 trace_regmap_hw_read_start(map, reg, val_len / map->format.val_bytes); in _regmap_raw_read()
2736 map->format.reg_bytes + map->format.pad_bytes, in _regmap_raw_read()
2739 trace_regmap_hw_read_done(map, reg, val_len / map->format.val_bytes); in _regmap_raw_read()
2767 void *work_val = map->work_buf + map->format.reg_bytes + in _regmap_bus_read()
2768 map->format.pad_bytes; in _regmap_bus_read()
2770 if (!map->format.parse_val) in _regmap_bus_read()
2773 ret = _regmap_raw_read(map, reg, work_val, map->format.val_bytes, false); in _regmap_bus_read()
2775 *val = map->format.parse_val(work_val); in _regmap_bus_read()
2890 size_t val_bytes = map->format.val_bytes; in regmap_raw_read()
2895 if (val_len % map->format.val_bytes) in regmap_raw_read()
2954 map->format.format_val(val + (i * val_bytes), v, 0); in regmap_raw_read()
2995 if (val_len % map->format.val_bytes) in regmap_noinc_read()
3117 size_t val_bytes = map->format.val_bytes; in regmap_bulk_read()
3125 if (map->read && map->format.parse_inplace && (vol || map->cache_type == REGCACHE_NONE)) { in regmap_bulk_read()
3131 map->format.parse_inplace(val + i); in regmap_bulk_read()
3147 switch (map->format.val_bytes) { in regmap_bulk_read()
3406 if (map->format.format_write) in regmap_get_val_bytes()
3409 return map->format.val_bytes; in regmap_get_val_bytes()
3457 if (!map->format.parse_val) in regmap_parse_val()
3460 *val = map->format.parse_val(buf); in regmap_parse_val()