Lines Matching +full:keep +full:- +full:power +full:- +full:in +full:- +full:suspend
16 Try to keep the kernel namespace as clean as possible. The best way to
19 it for non-exported symbols too. We will use the prefix ``foo_`` in this
28 routines, and should be zero-initialized except for fields with data you
29 provide. A client structure holds device-specific information like the
58 although you can use MODULE_ALIAS (passing "foo" in this example) to add
62 All other fields are for call-back functions which will be explained
70 structure at all. You should use this to keep device-specific data.
81 to NULL in remove() or if probe() failed anymore. The i2c-core does this
95 but many chips have some kind of register-value idea that can easily
103 if (reg < 0x10) /* byte-sized register */
105 else /* word-sized register */
111 if (reg == 0x10) /* Impossible to write - driver error! */
112 return -EINVAL;
113 else if (reg < 0x10) /* byte-sized register */
115 else /* word-sized register */
130 As Linux and its I2C stack became more widely used in embedded systems
139 ---------------------
141 System infrastructure, typically board-specific initialization code or
143 a table, in the kernel or from the boot loader, identifying I2C devices
144 and linking them to board-specific configuration information about IRQs
149 kind of driver in Linux: they provide a probe() method to bind to
162 The probe function is called when an entry in the id_table name field
172 ---------------
186 models, and I2C device addresses change from one model to the next. In
190 responsive address in the list. If you expect more than one device to be
191 present in the address range, simply call i2c_new_scanned_device() that
195 happens in the I2C bus driver. You may want to save the returned i2c_client
200 ----------------
204 (typically using device-specific, dedicated identification registers),
206 quickly. Keep in mind that the I2C protocol doesn't include any
212 considered a legacy mechanism and shouldn't be used in new code.
216 ---------------
222 as a device can't survive its parent in the device driver model.
265 /* a few non-GPL license types are also allowed */
269 Power Management
273 power state -- like putting a transceiver into a low power mode, or
274 activating a system wakeup mechanism -- do that by implementing the
275 appropriate callbacks for the dev_pm_ops of the driver (like suspend
289 or reboots (including kexec) -- like turning something off -- use a
300 A generic ioctl-like function call back is supported. You will seldom
309 to do this. You can find all of them in <linux/i2c.h>.
317 -----------------------
338 and they can be mixed in any way. The transactions are combined: no
343 You can read the file i2c-protocol.rst for more information about the
348 -------------------
357 in terms of it. Never use this function directly!
379 These ones were removed from i2c-core because they had no users, but could
393 You can read the file smbus-protocol.rst for more information about the