Skip to main content

BoardConfig

Struct BoardConfig 

Source
pub struct BoardConfig {
    pub rmii_pins: RmiiPinConfig,
    pub mdio_pins: MdioPinConfig,
    pub phy_reset: PhyResetPinConfig,
    pub ref_clock: RefClockPin,
    pub phy_addr: u8,
}
Expand description

Top-level hardware description used by the EMAC bring-up path.

Fields§

§rmii_pins: RmiiPinConfig

RMII data-plane pin assignment (TXD0/1, RXD0/1, TX_EN, CRS_DV).

§mdio_pins: MdioPinConfig

MDIO management bus pin assignment (MDC, MDIO).

§phy_reset: PhyResetPinConfig

PHY hardware reset pin (active level encoded in the struct).

§ref_clock: RefClockPin

Pad that receives the 50 MHz RMII reference clock from the PHY.

§phy_addr: u8

MDIO address strap for the PHY (0..31).

Implementations§

Source§

impl BoardConfig

Source

pub const WAVESHARE_P4_ETH: Self

Layout used by the Waveshare ESP32-P4-ETH dev board (IP101GRI PHY).

  • RMII data: TXD0=GPIO34, TXD1=GPIO35, TX_EN=GPIO49, RXD0=GPIO30, RXD1=GPIO29, CRS_DV=GPIO28
  • MDIO: MDC=GPIO31, MDIO=GPIO52
  • PHY reset: GPIO51 (active low)
  • Reference clock input: GPIO50
  • PHY MDIO address: 1 (Waveshare strap)

Trait Implementations§

Source§

impl Clone for BoardConfig

Source§

fn clone(&self) -> BoardConfig

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for BoardConfig

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Copy for BoardConfig

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.