Skip to content

Commit

Permalink
boards: shields: add microe eth3 click
Browse files Browse the repository at this point in the history
Add shield definition for the Mikroe ETH 3 Click.
ETH 3 Click is a compact add-on board that contains
LAN9250 SPI Ethernet Controller

Signed-off-by: Mario Paja <[email protected]>
  • Loading branch information
mariopaja authored and kartben committed Dec 12, 2024
1 parent 49eff65 commit e42476f
Show file tree
Hide file tree
Showing 5 changed files with 101 additions and 0 deletions.
14 changes: 14 additions & 0 deletions boards/shields/mikroe_eth3_click/Kconfig.defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Copyright (c) 2024 Mario Paja
# SPDX-License-Identifier: Apache-2.0

if SHIELD_MIKROE_ETH3_CLICK

if NETWORKING

# LAN9250 is L2 chip slave on SPI
config NET_L2_ETHERNET
default y

endif # NETWORKING

endif # SHIELD_MIKROE_ETH3_CLICK
5 changes: 5 additions & 0 deletions boards/shields/mikroe_eth3_click/Kconfig.shield
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Copyright (c) 2024 Mario Paja
# SPDX-License-Identifier: Apache-2.0

config SHIELD_MIKROE_ETH3_CLICK
def_bool $(shields_list_contains,mikroe_eth3_click)
Binary file not shown.
67 changes: 67 additions & 0 deletions boards/shields/mikroe_eth3_click/doc/index.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
.. _mikroe_eth3_click:

MikroElektronika ETH 3 Click
############################

Overview
********

ETH 3 Click is an accessory board in mikroBus™ form factor. It features `LAN9250`_,
a 10/100Mbps BASE-T stand alone Ethernet Controller with an on-board MAC & PHY,
16Kbyte FIFO Buffer and SPI serial interface.
More information at `ETH 3 Click Shield website`_.

.. figure:: eth3_click.webp
:align: center
:alt: MikroElektronika ETH 3 Click

MikroElektronika ETH 3 Click (Credit: MikroElektronika)

Pins Assignment of the Eth Click Shield
=======================================

+-----------------------+---------------------------------------------+
| Shield Connector Pin | Function |
+=======================+=============================================+
| RST# | Ethernet Controller's Reset |
+-----------------------+---------------------------------------------+
| CS# | SPI's Chip Select |
+-----------------------+---------------------------------------------+
| SCK | SPI's ClocK |
+-----------------------+---------------------------------------------+
| SDO | SPI's Slave Data Output (MISO) |
+-----------------------+---------------------------------------------+
| SDI | SPI's Slave Data Input (MISO) |
+-----------------------+---------------------------------------------+
| INT | Ethernet Controller's Interrupt Output |
+-----------------------+---------------------------------------------+


Requirements
************

This shield can only be used with a board which provides a configuration
for Mikro-BUS connectors and defines node aliases for SPI and GPIO interfaces
(see :ref:`shields` for more details).

Programming
***********

Set ``--shield mikroe_eth3_click`` when you invoke ``west build``. For example:

.. zephyr-app-commands::
:zephyr-app: samples/net/dhcpv4_client
:board: mikroe_stm32_m4_clicker
:shield: mikroe_eth3_click
:goals: build

References
**********

.. target-notes::

.. _ETH 3 Click Shield website:
https://www.mikroe.com/eth-3-click

.. _LAN9250:
https://www.microchip.com/en-us/product/lan9250
15 changes: 15 additions & 0 deletions boards/shields/mikroe_eth3_click/mikroe_eth3_click.overlay
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
/* Copyright (c) 2024 Mario Paja
* SPDX-License-Identifier: Apache-2.0
*/

&mikrobus_spi {
status = "okay";

eth3_click_mikroe_eth3_click: eth3_click@0 {
compatible = "microchip,lan9250";
reg = <0x0>;
local-mac-address = [00 00 00 01 02 03];
spi-max-frequency = <30000000>;
int-gpios = <&mikrobus_header 7 GPIO_ACTIVE_LOW>; /* INT */
};
};

0 comments on commit e42476f

Please sign in to comment.