no-OS
Loading...
Searching...
No Matches
no_os_mdio.c File Reference

Source file for MDIO interface driver. More...

#include <errno.h>
#include "no_os_mdio.h"
Include dependency graph for no_os_mdio.c:

Functions

int no_os_mdio_init (struct no_os_mdio_desc **desc, const struct no_os_mdio_init_param *param)
 Initialize the MDIO interface.
 
int no_os_mdio_remove (struct no_os_mdio_desc *desc)
 Free the resources allocated by no_os_mdio_init().
 
int no_os_mdio_write (struct no_os_mdio_desc *desc, uint32_t reg, uint16_t val)
 Write a register using MDIO.
 
int no_os_mdio_read (struct no_os_mdio_desc *desc, uint32_t reg, uint16_t *val)
 Read a register using MDIO.
 

Detailed Description

Source file for MDIO interface driver.

Author
Darius Berghe (dariu.nosp@m.s.be.nosp@m.rghe@.nosp@m.anal.nosp@m.og.co.nosp@m.m)

Copyright 2023(c) Analog Devices, Inc.

SPDX-License-Identifier: BSD-3-Clause

Function Documentation

◆ no_os_mdio_init()

int no_os_mdio_init ( struct no_os_mdio_desc ** desc,
const struct no_os_mdio_init_param * param )

Initialize the MDIO interface.

Parameters
desc- The MDIO descriptor.
param- MDIO parameters.
Returns
0 in case of success, error code otherwise.

◆ no_os_mdio_read()

int no_os_mdio_read ( struct no_os_mdio_desc * desc,
uint32_t reg,
uint16_t * val )

Read a register using MDIO.

Parameters
desc- The MDIO descriptor.
reg- Register address. For clause 45 reg is constructed using NO_OS_MDIO_C45_ADDR macro. It is otherwise the plain clause 22 address (0...31).
val- Value read from register.
Returns
0 in case of success, error code otherwise.

◆ no_os_mdio_remove()

int no_os_mdio_remove ( struct no_os_mdio_desc * desc)

Free the resources allocated by no_os_mdio_init().

Parameters
desc- The MDIO descriptor.
Returns
0 in case of success, error code otherwise.

◆ no_os_mdio_write()

int no_os_mdio_write ( struct no_os_mdio_desc * desc,
uint32_t reg,
uint16_t val )

Write a register using MDIO.

Parameters
desc- The MDIO descriptor.
reg- Register address. For clause 45 reg is constructed using NO_OS_MDIO_C45_ADDR macro. It is otherwise the plain clause 22 address (0...31).
val- Value to write into register.
Returns
0 in case of success, error code otherwise.