Lines Matching full:bit_offset

32 	int			bit_offset;  member
492 entry->bit_offset); in nvmem_populate_sysfs_cells()
590 cell->bit_offset = info->bit_offset; in nvmem_cell_info_to_nvmem_cell_entry_nodup()
595 cell->bytes = DIV_ROUND_UP(cell->nbits + cell->bit_offset, in nvmem_cell_info_to_nvmem_cell_entry_nodup()
812 info.bit_offset = be32_to_cpup(addr++); in nvmem_add_cells_from_dt()
814 if (info.bit_offset >= BITS_PER_BYTE * info.bytes || in nvmem_add_cells_from_dt()
816 info.bit_offset + info.nbits > BITS_PER_BYTE * info.bytes) { in nvmem_add_cells_from_dt()
1605 int bit_offset = cell->bit_offset; in nvmem_shift_read_buffer_in_place() local
1609 bytes_offset = bit_offset / BITS_PER_BYTE; in nvmem_shift_read_buffer_in_place()
1611 bit_offset %= BITS_PER_BYTE; in nvmem_shift_read_buffer_in_place()
1613 if (bit_offset % BITS_PER_BYTE) { in nvmem_shift_read_buffer_in_place()
1615 *p = *b++ >> bit_offset; in nvmem_shift_read_buffer_in_place()
1620 *p++ |= *b << (BITS_PER_BYTE - bit_offset); in nvmem_shift_read_buffer_in_place()
1622 *p = *b++ >> bit_offset; in nvmem_shift_read_buffer_in_place()
1654 if (cell->bit_offset || cell->nbits) in __nvmem_cell_read()
1708 int i, rc, nbits, bit_offset = cell->bit_offset; in nvmem_cell_prepare_write_buffer() local
1719 if (bit_offset) { in nvmem_cell_prepare_write_buffer()
1721 *b <<= bit_offset; in nvmem_cell_prepare_write_buffer()
1727 *b++ |= GENMASK(bit_offset - 1, 0) & v; in nvmem_cell_prepare_write_buffer()
1732 pbits = pbyte >> (BITS_PER_BYTE - 1 - bit_offset); in nvmem_cell_prepare_write_buffer()
1735 *b <<= bit_offset; in nvmem_cell_prepare_write_buffer()
1741 if ((nbits + bit_offset) % BITS_PER_BYTE) { in nvmem_cell_prepare_write_buffer()
1747 *p |= GENMASK(7, (nbits + bit_offset) % BITS_PER_BYTE) & v; in nvmem_cell_prepare_write_buffer()
1763 (cell->bit_offset == 0 && len != cell->bytes)) in __nvmem_cell_entry_write()
1774 if (cell->bit_offset || cell->nbits) { in __nvmem_cell_entry_write()
1785 if (cell->bit_offset || cell->nbits) in __nvmem_cell_entry_write()