Lines Matching +full:ls +full:- +full:bits
1 /* SPDX-License-Identifier: GPL-2.0+ */
14 #include <fsl-mc/fsl_qbman_base.h>
28 do {if (!(loopvar--)) BUG_ON(NULL == "DBG_POLL_CHECK"); } while (0)
30 /* For CCSR or portal-CINH registers that contain fields at arbitrary offsets
31 * and widths, these macro-generated encode/decode/isolate/remove inlines can
34 * Eg. to "d"ecode a 14-bit field out of a register (into a "uint16_t" type),
35 * where the field is located 3 bits "up" from the least-significant bit of the
36 * register (ie. the field location within the 32-bit register corresponds to a
40 * Or to "e"ncode a 1-bit boolean value (input type is "int", zero is FALSE,
41 * non-zero is TRUE, so must convert all non-zero inputs to 1, hence the "!!"
42 * operator) into a register at bit location 0x00080000 (19 bits "in" from the
43 * LS bit), do;
46 * If you wish to read-modify-write a register, such that you leave the 14-bit
47 * field as-is but have all other fields set to zero, then "i"solate the 14-bit
51 * Alternatively, you could "r"emove the 1-bit boolean field (setting it to
52 * zero) but leaving all other fields as-is;
57 (uint32_t)((1 << width) - 1))
137 /* Similarly-named functions */