include/linux/mfd/max77759.h
Source file repositories/reference/linux-study-clean/include/linux/mfd/max77759.h
File Facts
- System
- Linux kernel
- Corpus path
include/linux/mfd/max77759.h- Extension
.h- Size
- 11963 bytes
- Lines
- 274
- Domain
- Core OS
- Bucket
- Core Kernel Interface
- Inferred role
- Core OS: implementation source
- Status
- source implementation candidate
Why This File Exists
Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.
- Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
linux/completion.hlinux/mutex.hlinux/regmap.h
Detected Declarations
struct max77759struct max77759_maxq_commandstruct max77759_maxq_responseenum max77759_chgr_chgin_dtls_statusenum max77759_chgr_bat_dtls_statesenum max77759_chgr_chg_dtls_statesenum max77759_chgr_mode
Annotated Snippet
struct max77759 {
struct regmap *regmap_top;
/* This protects MaxQ commands - only one can be active */
struct mutex maxq_lock;
struct regmap *regmap_maxq;
struct completion cmd_done;
struct regmap *regmap_charger;
};
/**
* struct max77759_maxq_command - structure containing the MaxQ command to
* send
*
* @length: The number of bytes to send.
* @cmd: The data to send.
*/
struct max77759_maxq_command {
u8 length;
u8 cmd[] __counted_by(length);
};
/**
* struct max77759_maxq_response - structure containing the MaxQ response
*
* @length: The number of bytes to receive.
* @rsp: The data received. Must have at least @length bytes space.
*/
struct max77759_maxq_response {
u8 length;
u8 rsp[] __counted_by(length);
};
/**
* max77759_maxq_command() - issue a MaxQ command and wait for the response
* and associated data
*
* @max77759: The core max77759 device handle.
* @cmd: The command to be sent.
* @rsp: Any response data associated with the command will be copied here;
* can be %NULL if the command has no response (other than ACK).
*
* Return: 0 on success, a negative error number otherwise.
*/
int max77759_maxq_command(struct max77759 *max77759,
const struct max77759_maxq_command *cmd,
struct max77759_maxq_response *rsp);
#endif /* __LINUX_MFD_MAX77759_H */
Annotation
- Immediate include surface: `linux/completion.h`, `linux/mutex.h`, `linux/regmap.h`.
- Detected declarations: `struct max77759`, `struct max77759_maxq_command`, `struct max77759_maxq_response`, `enum max77759_chgr_chgin_dtls_status`, `enum max77759_chgr_bat_dtls_states`, `enum max77759_chgr_chg_dtls_states`, `enum max77759_chgr_mode`.
- Atlas domain: Core OS / Core Kernel Interface.
- Implementation status: source implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.