drivers/clk/socfpga/clk.h

Source file repositories/reference/linux-study-clean/drivers/clk/socfpga/clk.h

File Facts

System
Linux kernel
Corpus path
drivers/clk/socfpga/clk.h
Extension
.h
Size
1814 bytes
Lines
67
Domain
Driver Families
Bucket
drivers/clk
Inferred role
Driver Families: implementation source
Status
source implementation candidate

Why This File Exists

Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.

Dependency Surface

Detected Declarations

Annotated Snippet

struct socfpga_pll {
	struct clk_gate	hw;
};

struct socfpga_gate_clk {
	struct clk_gate hw;
	char *parent_name;
	u32 fixed_div;
	void __iomem *div_reg;
	void __iomem *bypass_reg;
	struct regmap *sys_mgr_base_addr;
	u32 width;	/* only valid if div_reg != 0 */
	u32 shift;	/* only valid if div_reg != 0 */
	u32 bypass_shift;      /* only valid if bypass_reg != 0 */
};

struct socfpga_periph_clk {
	struct clk_gate hw;
	char *parent_name;
	u32 fixed_div;
	void __iomem *div_reg;
	void __iomem *bypass_reg;
	u32 width;      /* only valid if div_reg != 0 */
	u32 shift;      /* only valid if div_reg != 0 */
	u32 bypass_shift;      /* only valid if bypass_reg != 0 */
};

#endif /* SOCFPGA_CLK_H */

Annotation

Implementation Notes