diff options
| author | Michael Brown | 2025-08-05 14:55:23 +0200 |
|---|---|---|
| committer | Michael Brown | 2025-08-05 15:39:56 +0200 |
| commit | 2e4e1f7e9e474f6555009238304780448d3ea238 (patch) | |
| tree | 46b9b88bc02456729ba9c67f4372c577b320bda2 /src/include/ipxe/devtree.h | |
| parent | [gpio] Add a framework for GPIO controllers (diff) | |
| download | ipxe-2e4e1f7e9e474f6555009238304780448d3ea238.tar.gz ipxe-2e4e1f7e9e474f6555009238304780448d3ea238.tar.xz ipxe-2e4e1f7e9e474f6555009238304780448d3ea238.zip | |
[dwgpio] Add driver for the DesignWare GPIO controller
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/include/ipxe/devtree.h')
| -rw-r--r-- | src/include/ipxe/devtree.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/include/ipxe/devtree.h b/src/include/ipxe/devtree.h index cdf173938..2bf473a3b 100644 --- a/src/include/ipxe/devtree.h +++ b/src/include/ipxe/devtree.h @@ -77,9 +77,21 @@ static inline void * dt_get_drvdata ( struct dt_device *dt ) { return dt->priv; } +/** + * Get devicetree parent device + * + * @v dt Devicetree device + * @ret parent Parent devicetree device + */ +static inline struct dt_device * dt_parent ( struct dt_device *dt ) { + return container_of ( dt->dev.parent, struct dt_device, dev ); +} + extern void * dt_ioremap ( struct dt_device *dt, unsigned int offset, unsigned int index, size_t len ); extern int dt_probe_node ( struct device *parent, unsigned int offset ); extern void dt_remove_node ( struct device *parent ); +extern int dt_probe_children ( struct dt_device *parent, unsigned int offset ); +extern void dt_remove_children ( struct dt_device *parent ); #endif /* _IPXE_DEVTREE_H */ |
