drivers/net/dsa/realtek/realtek-mdio.h

Source file repositories/reference/linux-study-clean/drivers/net/dsa/realtek/realtek-mdio.h

File Facts

System
Linux kernel
Corpus path
drivers/net/dsa/realtek/realtek-mdio.h
Extension
.h
Size
1063 bytes
Lines
49
Domain
Driver Families
Bucket
drivers/net
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

#ifndef _REALTEK_MDIO_H
#define _REALTEK_MDIO_H

#if IS_ENABLED(CONFIG_NET_DSA_REALTEK_MDIO)

static inline int realtek_mdio_driver_register(struct mdio_driver *drv)
{
	return mdio_driver_register(drv);
}

static inline void realtek_mdio_driver_unregister(struct mdio_driver *drv)
{
	mdio_driver_unregister(drv);
}

int realtek_mdio_probe(struct mdio_device *mdiodev);
void realtek_mdio_remove(struct mdio_device *mdiodev);
void realtek_mdio_shutdown(struct mdio_device *mdiodev);

#else /* IS_ENABLED(CONFIG_NET_DSA_REALTEK_MDIO) */

static inline int realtek_mdio_driver_register(struct mdio_driver *drv)
{
	return 0;
}

static inline void realtek_mdio_driver_unregister(struct mdio_driver *drv)
{
}

static inline int realtek_mdio_probe(struct mdio_device *mdiodev)
{
	return -ENOENT;
}

static inline void realtek_mdio_remove(struct mdio_device *mdiodev)
{
}

static inline void realtek_mdio_shutdown(struct mdio_device *mdiodev)
{
}

#endif /* IS_ENABLED(CONFIG_NET_DSA_REALTEK_MDIO) */

#endif /* _REALTEK_MDIO_H */

Annotation

Implementation Notes