Lines Matching +full:config +full:- +full:cond
1 /* SPDX-License-Identifier: GPL-2.0-only */
54 #define REGMAP_UPSHIFT(s) (-(s))
66 * struct reg_default - Default value for a register.
80 * struct reg_sequence - An individual write from a sequence of writes.
103 * regmap_read_poll_timeout - Poll until a condition is met or a timeout occurs
108 * @cond: Break condition (usually involving @val)
110 * tight-loops). Should be less than ~20ms since usleep_range
111 * is used (see Documentation/timers/timers-howto.rst).
114 * Returns 0 on success and -ETIMEDOUT upon a timeout or the regmap_read
121 #define regmap_read_poll_timeout(map, addr, val, cond, sleep_us, timeout_us) \ argument
124 __tmp = read_poll_timeout(regmap_read, __ret, __ret || (cond), \
130 * regmap_read_poll_timeout_atomic - Poll until a condition is met or a timeout occurs
135 * @cond: Break condition (usually involving @val)
136 * @delay_us: Time to udelay between reads in us (0 tight-loops).
138 * (see Documentation/timers/timers-howto.rst).
141 * Returns 0 on success and -ETIMEDOUT upon a timeout or the regmap_read
151 #define regmap_read_poll_timeout_atomic(map, addr, val, cond, delay_us, timeout_us) \ argument
161 if (cond) \
171 __ret ?: ((cond) ? 0 : -ETIMEDOUT); \
175 * regmap_field_read_poll_timeout - Poll until a condition is met or timeout
179 * @cond: Break condition (usually involving @val)
181 * tight-loops). Should be less than ~20ms since usleep_range
182 * is used (see Documentation/timers/timers-howto.rst).
185 * Returns 0 on success and -ETIMEDOUT upon a timeout or the regmap_field_read
192 #define regmap_field_read_poll_timeout(field, val, cond, sleep_us, timeout_us) \ argument
195 __tmp = read_poll_timeout(regmap_field_read, __ret, __ret || (cond), \
203 /* Unspecified -> 0 -> Backwards compatible default */
211 * struct regmap_range - A register range, used for access related checks
225 * struct regmap_access_table - A table of register ranges for access checks
248 * struct regmap_config - Configuration for the register map of a device.
331 * Use it only for "no-bus" cases.
461 * struct regmap_range_cfg - Configuration for indirectly accessed or paged
525 * struct regmap_bus - Description of a hardware bus for the register map
534 * @gather_write: Write operation with split register/value, return -ENOTSUPP
537 * must serialise with respect to non-async I/O.
593 const struct regmap_config *config,
597 const struct regmap_config *config,
601 const struct regmap_config *config,
605 const struct regmap_config *config,
609 const struct regmap_config *config,
613 const struct regmap_config *config,
617 const struct regmap_config *config,
621 const struct regmap_config *config,
625 const struct regmap_config *config,
630 const struct regmap_config *config,
634 const struct regmap_config *config,
638 const struct regmap_config *config,
642 const struct regmap_config *config,
646 const struct regmap_config *config,
650 const struct regmap_config *config,
657 const struct regmap_config *config,
661 const struct regmap_config *config,
665 const struct regmap_config *config,
669 const struct regmap_config *config,
673 const struct regmap_config *config,
677 const struct regmap_config *config,
681 const struct regmap_config *config,
685 const struct regmap_config *config,
691 const struct regmap_config *config,
695 const struct regmap_config *config,
699 const struct regmap_config *config,
703 const struct regmap_config *config,
707 const struct regmap_config *config,
711 const struct regmap_config *config,
715 const struct regmap_config *config,
719 const struct regmap_config *config,
725 * for each call. No-op if CONFIG_LOCKDEP is not set.
728 * @name: Config variable name (#config in the calling macro)
738 "(" name ")->lock"); \
746 * regmap_init() - Initialise register map
749 * @bus: Bus-specific callbacks to use with device
750 * @bus_context: Data passed to bus-specific callbacks
751 * @config: Configuration for register map
755 * directly, it should be called by bus-specific init functions.
757 #define regmap_init(dev, bus, bus_context, config) \ argument
758 __regmap_lockdep_wrapper(__regmap_init, #config, \
759 dev, bus, bus_context, config)
761 const struct regmap_config *config);
764 * regmap_init_i2c() - Initialise register map
767 * @config: Configuration for register map
772 #define regmap_init_i2c(i2c, config) \ argument
773 __regmap_lockdep_wrapper(__regmap_init_i2c, #config, \
774 i2c, config)
777 * regmap_init_mdio() - Initialise register map
780 * @config: Configuration for register map
785 #define regmap_init_mdio(mdio_dev, config) \ argument
786 __regmap_lockdep_wrapper(__regmap_init_mdio, #config, \
787 mdio_dev, config)
790 * regmap_init_sccb() - Initialise register map
793 * @config: Configuration for register map
798 #define regmap_init_sccb(i2c, config) \ argument
799 __regmap_lockdep_wrapper(__regmap_init_sccb, #config, \
800 i2c, config)
803 * regmap_init_slimbus() - Initialise register map
806 * @config: Configuration for register map
811 #define regmap_init_slimbus(slimbus, config) \ argument
812 __regmap_lockdep_wrapper(__regmap_init_slimbus, #config, \
813 slimbus, config)
816 * regmap_init_spi() - Initialise register map
819 * @config: Configuration for register map
824 #define regmap_init_spi(dev, config) \ argument
825 __regmap_lockdep_wrapper(__regmap_init_spi, #config, \
826 dev, config)
829 * regmap_init_spmi_base() - Create regmap for the Base register space
832 * @config: Configuration for register map
837 #define regmap_init_spmi_base(dev, config) \ argument
838 __regmap_lockdep_wrapper(__regmap_init_spmi_base, #config, \
839 dev, config)
842 * regmap_init_spmi_ext() - Create regmap for Ext register space
845 * @config: Configuration for register map
850 #define regmap_init_spmi_ext(dev, config) \ argument
851 __regmap_lockdep_wrapper(__regmap_init_spmi_ext, #config, \
852 dev, config)
855 * regmap_init_w1() - Initialise register map
858 * @config: Configuration for register map
863 #define regmap_init_w1(w1_dev, config) \ argument
864 __regmap_lockdep_wrapper(__regmap_init_w1, #config, \
865 w1_dev, config)
868 * regmap_init_mmio_clk() - Initialise register map with register clock
872 * @regs: Pointer to memory-mapped IO region
873 * @config: Configuration for register map
878 #define regmap_init_mmio_clk(dev, clk_id, regs, config) \ argument
879 __regmap_lockdep_wrapper(__regmap_init_mmio_clk, #config, \
880 dev, clk_id, regs, config)
883 * regmap_init_mmio() - Initialise register map
886 * @regs: Pointer to memory-mapped IO region
887 * @config: Configuration for register map
892 #define regmap_init_mmio(dev, regs, config) \ argument
893 regmap_init_mmio_clk(dev, NULL, regs, config)
896 * regmap_init_ac97() - Initialise AC'97 register map
899 * @config: Configuration for register map
904 #define regmap_init_ac97(ac97, config) \ argument
905 __regmap_lockdep_wrapper(__regmap_init_ac97, #config, \
906 ac97, config)
910 * regmap_init_sdw() - Initialise register map
913 * @config: Configuration for register map
918 #define regmap_init_sdw(sdw, config) \ argument
919 __regmap_lockdep_wrapper(__regmap_init_sdw, #config, \
920 sdw, config)
923 * regmap_init_sdw_mbq() - Initialise register map
926 * @config: Configuration for register map
931 #define regmap_init_sdw_mbq(sdw, config) \ argument
932 __regmap_lockdep_wrapper(__regmap_init_sdw_mbq, #config, \
933 sdw, config)
936 * regmap_init_spi_avmm() - Initialize register map for Intel SPI Slave
940 * @config: Configuration for register map
945 #define regmap_init_spi_avmm(spi, config) \ argument
946 __regmap_lockdep_wrapper(__regmap_init_spi_avmm, #config, \
947 spi, config)
950 * regmap_init_fsi() - Initialise register map
953 * @config: Configuration for register map
958 #define regmap_init_fsi(fsi_dev, config) \ argument
959 __regmap_lockdep_wrapper(__regmap_init_fsi, #config, fsi_dev, \
960 config)
963 * devm_regmap_init() - Initialise managed register map
966 * @bus: Bus-specific callbacks to use with device
967 * @bus_context: Data passed to bus-specific callbacks
968 * @config: Configuration for register map
972 * directly, it should be called by bus-specific init functions. The
975 #define devm_regmap_init(dev, bus, bus_context, config) \ argument
976 __regmap_lockdep_wrapper(__devm_regmap_init, #config, \
977 dev, bus, bus_context, config)
980 * devm_regmap_init_i2c() - Initialise managed register map
983 * @config: Configuration for register map
989 #define devm_regmap_init_i2c(i2c, config) \ argument
990 __regmap_lockdep_wrapper(__devm_regmap_init_i2c, #config, \
991 i2c, config)
994 * devm_regmap_init_mdio() - Initialise managed register map
997 * @config: Configuration for register map
1003 #define devm_regmap_init_mdio(mdio_dev, config) \ argument
1004 __regmap_lockdep_wrapper(__devm_regmap_init_mdio, #config, \
1005 mdio_dev, config)
1008 * devm_regmap_init_sccb() - Initialise managed register map
1011 * @config: Configuration for register map
1017 #define devm_regmap_init_sccb(i2c, config) \ argument
1018 __regmap_lockdep_wrapper(__devm_regmap_init_sccb, #config, \
1019 i2c, config)
1022 * devm_regmap_init_spi() - Initialise register map
1025 * @config: Configuration for register map
1031 #define devm_regmap_init_spi(dev, config) \ argument
1032 __regmap_lockdep_wrapper(__devm_regmap_init_spi, #config, \
1033 dev, config)
1036 * devm_regmap_init_spmi_base() - Create managed regmap for Base register space
1039 * @config: Configuration for register map
1045 #define devm_regmap_init_spmi_base(dev, config) \ argument
1046 __regmap_lockdep_wrapper(__devm_regmap_init_spmi_base, #config, \
1047 dev, config)
1050 * devm_regmap_init_spmi_ext() - Create managed regmap for Ext register space
1053 * @config: Configuration for register map
1059 #define devm_regmap_init_spmi_ext(dev, config) \ argument
1060 __regmap_lockdep_wrapper(__devm_regmap_init_spmi_ext, #config, \
1061 dev, config)
1064 * devm_regmap_init_w1() - Initialise managed register map
1067 * @config: Configuration for register map
1073 #define devm_regmap_init_w1(w1_dev, config) \ argument
1074 __regmap_lockdep_wrapper(__devm_regmap_init_w1, #config, \
1075 w1_dev, config)
1077 * devm_regmap_init_mmio_clk() - Initialise managed register map with clock
1081 * @regs: Pointer to memory-mapped IO region
1082 * @config: Configuration for register map
1088 #define devm_regmap_init_mmio_clk(dev, clk_id, regs, config) \ argument
1089 __regmap_lockdep_wrapper(__devm_regmap_init_mmio_clk, #config, \
1090 dev, clk_id, regs, config)
1093 * devm_regmap_init_mmio() - Initialise managed register map
1096 * @regs: Pointer to memory-mapped IO region
1097 * @config: Configuration for register map
1103 #define devm_regmap_init_mmio(dev, regs, config) \ argument
1104 devm_regmap_init_mmio_clk(dev, NULL, regs, config)
1107 * devm_regmap_init_ac97() - Initialise AC'97 register map
1110 * @config: Configuration for register map
1116 #define devm_regmap_init_ac97(ac97, config) \ argument
1117 __regmap_lockdep_wrapper(__devm_regmap_init_ac97, #config, \
1118 ac97, config)
1121 * devm_regmap_init_sdw() - Initialise managed register map
1124 * @config: Configuration for register map
1130 #define devm_regmap_init_sdw(sdw, config) \ argument
1131 __regmap_lockdep_wrapper(__devm_regmap_init_sdw, #config, \
1132 sdw, config)
1135 * devm_regmap_init_sdw_mbq() - Initialise managed register map
1138 * @config: Configuration for register map
1144 #define devm_regmap_init_sdw_mbq(sdw, config) \ argument
1145 __regmap_lockdep_wrapper(__devm_regmap_init_sdw_mbq, #config, \
1146 sdw, config)
1149 * devm_regmap_init_slimbus() - Initialise managed register map
1152 * @config: Configuration for register map
1158 #define devm_regmap_init_slimbus(slimbus, config) \ argument
1159 __regmap_lockdep_wrapper(__devm_regmap_init_slimbus, #config, \
1160 slimbus, config)
1163 * devm_regmap_init_i3c() - Initialise managed register map
1166 * @config: Configuration for register map
1172 #define devm_regmap_init_i3c(i3c, config) \ argument
1173 __regmap_lockdep_wrapper(__devm_regmap_init_i3c, #config, \
1174 i3c, config)
1177 * devm_regmap_init_spi_avmm() - Initialize register map for Intel SPI Slave
1181 * @config: Configuration for register map
1187 #define devm_regmap_init_spi_avmm(spi, config) \ argument
1188 __regmap_lockdep_wrapper(__devm_regmap_init_spi_avmm, #config, \
1189 spi, config)
1192 * devm_regmap_init_fsi() - Initialise managed register map
1195 * @config: Configuration for register map
1201 #define devm_regmap_init_fsi(fsi_dev, config) \ argument
1202 __regmap_lockdep_wrapper(__devm_regmap_init_fsi, #config, \
1203 fsi_dev, config)
1209 const struct regmap_config *config);
1303 return reg >= range->range_min && reg <= range->range_max; in regmap_reg_in_range()
1326 * struct reg_field - Description of an register field
1461 * struct regmap_irq_type - IRQ type definitions.
1481 * struct regmap_irq - Description of an IRQ for the generic regmap irq_chip.
1513 * struct regmap_irq_chip - Description of a generic regmap irq_chip.
1518 * interrupts arranged in separate sub-irq blocks with own IRQ
1520 * sub-irq blocks with unhandled interrupts. For such chips fill
1521 * sub-irq register information in status_base, mask_base and
1531 * 1.st bit to 1.st sub-reg, 2.nd bit to 2.nd sub-reg, ...
1543 * @config_base: Base address for IRQ type config regs. If null unsupported.
1556 * @clear_ack: Use this to set 1 and 0 or vice-versa to clear interrupts.
1575 * @num_config_bases: Number of config base registers.
1576 * @num_config_regs: Number of config registers for each config base register.
1589 * main status base, [0, num_config_regs[ for any config
1692 return -EINVAL; in regmap_write()
1699 return -EINVAL; in regmap_write_async()
1706 return -EINVAL; in regmap_raw_write()
1713 return -EINVAL; in regmap_raw_write_async()
1720 return -EINVAL; in regmap_noinc_write()
1727 return -EINVAL; in regmap_bulk_write()
1734 return -EINVAL; in regmap_read()
1741 return -EINVAL; in regmap_raw_read()
1748 return -EINVAL; in regmap_noinc_read()
1755 return -EINVAL; in regmap_bulk_read()
1763 return -EINVAL; in regmap_update_bits_base()
1770 return -EINVAL; in regmap_set_bits()
1777 return -EINVAL; in regmap_clear_bits()
1784 return -EINVAL; in regmap_test_bits()
1792 return -EINVAL; in regmap_field_update_bits_base()
1801 return -EINVAL; in regmap_fields_update_bits_base()
1808 return -EINVAL; in regmap_update_bits()
1815 return -EINVAL; in regmap_update_bits_async()
1823 return -EINVAL; in regmap_update_bits_check()
1832 return -EINVAL; in regmap_update_bits_check_async()
1839 return -EINVAL; in regmap_write_bits()
1846 return -EINVAL; in regmap_field_write()
1853 return -EINVAL; in regmap_field_force_write()
1860 return -EINVAL; in regmap_field_update_bits()
1868 return -EINVAL; in regmap_field_force_update_bits()
1875 return -EINVAL; in regmap_field_set_bits()
1882 return -EINVAL; in regmap_field_clear_bits()
1889 return -EINVAL; in regmap_field_test_bits()
1896 return -EINVAL; in regmap_fields_write()
1903 return -EINVAL; in regmap_fields_force_write()
1911 return -EINVAL; in regmap_fields_update_bits()
1919 return -EINVAL; in regmap_fields_force_update_bits()
1925 return -EINVAL; in regmap_get_val_bytes()
1931 return -EINVAL; in regmap_get_max_register()
1937 return -EINVAL; in regmap_get_reg_stride()
1949 return -EINVAL; in regcache_sync()
1956 return -EINVAL; in regcache_sync_region()
1963 return -EINVAL; in regcache_drop_region()
1991 return -EINVAL; in regmap_register_patch()
1998 return -EINVAL; in regmap_parse_val()