summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGregory Nutt <gnutt@nuttx.org>2014-03-13 09:03:03 -0600
committerGregory Nutt <gnutt@nuttx.org>2014-03-13 09:03:03 -0600
commit47b6c71e7fbd987410d1361080b3231e94358c5a (patch)
tree05da4ab3599a2347d547ac172146c3c1cb0a04fc
parent0814c8992d01496357d0f995187d6408ec26e7a5 (diff)
downloadnuttx-47b6c71e7fbd987410d1361080b3231e94358c5a.tar.gz
nuttx-47b6c71e7fbd987410d1361080b3231e94358c5a.tar.bz2
nuttx-47b6c71e7fbd987410d1361080b3231e94358c5a.zip
SAM4E: Fix EMAC pin configuration. Driver is basically functionaly now. SAM4E-EK NSH configuration now has networking enabled by default
-rw-r--r--nuttx/ChangeLog9
-rw-r--r--nuttx/Documentation/NuttX.html10
-rw-r--r--nuttx/arch/arm/src/sam34/sam_emac.c43
-rw-r--r--nuttx/configs/sam4e-ek/README.txt89
-rw-r--r--nuttx/configs/sam4e-ek/nsh/defconfig182
-rw-r--r--nuttx/configs/sam4e-ek/src/sam4e-ek.h6
6 files changed, 262 insertions, 77 deletions
diff --git a/nuttx/ChangeLog b/nuttx/ChangeLog
index a6748f2f0..5cf07ed45 100644
--- a/nuttx/ChangeLog
+++ b/nuttx/ChangeLog
@@ -6978,6 +6978,13 @@
* configs/spark: Refresh all spark configurations (2014-3-11).
* arch/arm/src/tiva/chip/tm4c_memorymap.h: Fix typos reported by
Daniel Pereira de Carvalho (2014-2-12).
+ * arch/arm/src/sam34/sam_emac.c: Add an Ethernet MAC driver for the
+ SAM4E. The initial checkin is essentially the SAMA5D3 EMAC driver
+ with naming changes as appropriate (2014-3-12).
* arch/arm/src/sam34/sam_cmcc.c: Add logic to manage the Cortex-M
Cache Control block. Untested on initial check-in (2014-3-12).
-
+ * arch/arm/src/sam34/sam_emac.c: Fix EMAC pin configuration (was been
+ set up for RMII instead of MII). Now the driver EMAC appears to be
+ functional (2014-3-13).
+ * configs/sam4e-ek/nsh: Networking support is now enabled by default
+ in the NSH configuration (2014-3-13).
diff --git a/nuttx/Documentation/NuttX.html b/nuttx/Documentation/NuttX.html
index b5aaf4cca..7cb69176a 100644
--- a/nuttx/Documentation/NuttX.html
+++ b/nuttx/Documentation/NuttX.html
@@ -3123,12 +3123,16 @@ Mem: 29232 5920 23312 23312
<p>
<b>Atmel SAM4E-EK</b>.
Board support was added for the SAM4E-EK development board in NuttX 6.33.
- A fully functional NuttShell (NSH) configuration is avaiable
+ A fully functional NuttShell (NSH) configuration is available
(see the <a href="http://www.nuttx.org/Documentation/NuttShell.html">NSH User Guide</a>).
+ </p>
+ <ul>
+ <b>STATUS</b>.
This is very much a work in progress.
- An Ethernet MAC driver is in place and under test now.
+ The SAM4E-EK should be compatible with most of the other SAM3/4 drivers (like SPI, HSMCI, DMAC, etc.) but those have not be verified on the SAM4E-EK as of this writing.
+ A new Ethernet MAC driver has been developed and is functional, although it has not yet received a lot of testing.
Refer to the NuttX board <a href="http://sourceforge.net/p/nuttx/git/ci/master/tree/nuttx/configs/sam4e-ek/README.txt">README</a> file for further information.
- </p>
+ </ul>
</td>
</tr>
<tr>
diff --git a/nuttx/arch/arm/src/sam34/sam_emac.c b/nuttx/arch/arm/src/sam34/sam_emac.c
index e9f965718..d2c134c90 100644
--- a/nuttx/arch/arm/src/sam34/sam_emac.c
+++ b/nuttx/arch/arm/src/sam34/sam_emac.c
@@ -2494,7 +2494,7 @@ static int sam_phyinit(struct sam_emac_s *priv)
* Function: sam_ethgpioconfig
*
* Description:
- * Configure GPIOs for the EMAC interface.
+ * Configure GPIOs for the EMAC MII interface.
*
* Parameters:
* priv - A reference to the private driver state structure
@@ -2508,19 +2508,26 @@ static int sam_phyinit(struct sam_emac_s *priv)
static inline void sam_ethgpioconfig(struct sam_emac_s *priv)
{
- /* Configure PIO pins to support EMAC */
- /* Configure EMAC PIO pins common to both MII and RMII */
-
- sam_configgpio(GPIO_EMAC_TX0);
- sam_configgpio(GPIO_EMAC_TX1);
- sam_configgpio(GPIO_EMAC_RX0);
- sam_configgpio(GPIO_EMAC_RX1);
- sam_configgpio(GPIO_EMAC_TXEN);
- sam_configgpio(GPIO_EMAC_CRSDV);
- sam_configgpio(GPIO_EMAC_RXER);
- sam_configgpio(GPIO_EMAC_REFCK);
- sam_configgpio(GPIO_EMAC_MDC);
- sam_configgpio(GPIO_EMAC_MDIO);
+ /* Configure PIO pins to support EMAC in MII mode*/
+
+ sam_configgpio(GPIO_EMAC_TXCK); /* Transmit Clock (or Reference Clock) */
+ sam_configgpio(GPIO_EMAC_TXEN); /* Transmit Enable */
+ sam_configgpio(GPIO_EMAC_TX0); /* Transmit data TXD0 */
+ sam_configgpio(GPIO_EMAC_TX1); /* Transmit data TXD1 */
+ sam_configgpio(GPIO_EMAC_TX2); /* Transmit data TXD2 */
+ sam_configgpio(GPIO_EMAC_TX3); /* Transmit data TXD3 */
+//sam_configgpio(GPIO_EMAC_TXER); /* Transmit Coding Error */
+ sam_configgpio(GPIO_EMAC_RXCK); /* Receive Clock */
+ sam_configgpio(GPIO_EMAC_RXDV); /* Receive Data Valid */
+ sam_configgpio(GPIO_EMAC_RX0); /* Receive data RXD0 */
+ sam_configgpio(GPIO_EMAC_RX1); /* Receive data RXD0 */
+ sam_configgpio(GPIO_EMAC_RX2); /* Receive data RXD0 */
+ sam_configgpio(GPIO_EMAC_RX3); /* Receive data RXD0 */
+ sam_configgpio(GPIO_EMAC_RXER); /* Receive Error */
+ sam_configgpio(GPIO_EMAC_CRS); /* Carrier Sense and Data Valid */
+ sam_configgpio(GPIO_EMAC_COL); /* Collision Detect */
+ sam_configgpio(GPIO_EMAC_MDC); /* Management Data Clock */
+ sam_configgpio(GPIO_EMAC_MDIO); /* Management Data Input/Output */
}
/****************************************************************************
@@ -2847,7 +2854,7 @@ void up_netinitialize(void)
if (!priv->txpoll)
{
nlldbg("ERROR: Failed to create periodic poll timer\n");
- goto errout;
+ return;
}
priv->txtimeout = wd_create(); /* Create TX timeout timer */
@@ -2857,7 +2864,7 @@ void up_netinitialize(void)
goto errout_with_txpoll;
}
- /* Configure PIO pins to support EMAC */
+ /* Configure PIO pins to support EMAC MII */
sam_ethgpioconfig(priv);
@@ -2899,7 +2906,7 @@ void up_netinitialize(void)
ret = netdev_register(&priv->dev);
if (ret >= 0)
{
- return ret;
+ return;
}
nlldbg("ERROR: netdev_register() failed: %d\n", ret);
@@ -2910,8 +2917,6 @@ errout_with_txtimeout:
wd_delete(priv->txtimeout);
errout_with_txpoll:
wd_delete(priv->txpoll);
-errout:
- return ret;
}
#endif /* CONFIG_NET && CONFIG_SAM34_EMAC */
diff --git a/nuttx/configs/sam4e-ek/README.txt b/nuttx/configs/sam4e-ek/README.txt
index 922ae711e..a7c14ed37 100644
--- a/nuttx/configs/sam4e-ek/README.txt
+++ b/nuttx/configs/sam4e-ek/README.txt
@@ -398,12 +398,26 @@ Networking
: Defaults should be okay for other options
Application Configuration -> NSH Library
CONFIG_NSH_TELNET=y : Enable NSH session via Telnet
- CONFIG_NSH_IPADDR=0x0a000002 : Select an IP address
+ CONFIG_NSH_IPADDR=0x0a000002 : Select a fixed IP address
CONFIG_NSH_DRIPADDR=0x0a000001 : IP address of gateway/host PC
CONFIG_NSH_NETMASK=0xffffff00 : Netmask
CONFIG_NSH_NOMAC=y : Need to make up a bogus MAC address
: Defaults should be okay for other options
+ You can also enable enable the DHCPC client for networks that use
+ dynamically assigned address:
+
+ Application Configuration -> Network Utilities
+ CONFIG_NETUTILS_DHCPC=y : Enables the DHCP client
+
+ Networking Support
+ CONFIG_NET_UDP=y : Depends on broadcast UDP
+
+ Application Configuration -> NSH Library
+ CONFIG_NET_BROADCAST=y
+ CONFIG_NSH_DHCPC=y : Tells NSH to use DHCPC, not
+ : the fixed addresses
+
Using the network with NSH
--------------------------
@@ -485,8 +499,8 @@ Networking
so that access to the NSH prompt is not delayed.
This delay will be especially long if the board is not connected to
- a network.
-
+ a network because additional time will be required to fail with timeout
+ errors.
SAM4E-EK-specific Configuration Options
=======================================
@@ -688,23 +702,17 @@ Configurations
2. Unless stated otherwise, all configurations generate console
output on UART0 (J3).
- 3. Unless otherwise stated, the configurations are setup for
- Linux (or any other POSIX environment like Cygwin under Windows):
-
- Build Setup:
- CONFIG_HOST_LINUX=y : Linux or other POSIX environment
-
- 4. All of these configurations use the older, OABI, buildroot toolchain
- (unless stated otherwise in the description of the configuration). That
- toolchain selection can easily be reconfigured using 'make menuconfig'.
- Here are the relevant current settings:
+ 3. All of these configurations are set up to build under Linux using the
+ EABI buildroot toolchain (unless stated otherwise in the description of
+ the configuration). That build selection can easily be reconfigured
+ using 'make menuconfig'. Here are the relevant current settings:
Build Setup:
CONFIG_HOST_LINUX=y : Linux or other pure POSIX invironment
- : (including Cygwin)
+
System Type -> Toolchain:
CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT=y : Buildroot toolchain
- CONFIG_ARMV7M_OABI_TOOLCHAIN=y : Older, OABI toolchain
+ CONFIG_ARMV7M_OABI_TOOLCHAIN=n : EABI (Not OABI
If you want to use the Atmel GCC toolchain, for example, here are the
steps to do so:
@@ -753,7 +761,39 @@ Configurations
Applicaton Configuration:
CONFIG_NSH_BUILTIN_APPS=y : Enable starting apps from NSH command line
- 2. This configuration has been used for verifying the touchscreen on
+ 2. This configuration has the network enabled by default. This can be
+ easily disabled or reconfigured (See see the network related
+ configuration settings above in the section entitled "Networking").
+
+ NOTE: In boot-up sequence is very simple in this example; all
+ initialization is done sequential (vs. in parallel) and so you will
+ not see the NSH prompt until all initialization is complete. The
+ network bring-up in particular will add some delay before the NSH
+ prompt appears. In a real application, you would probably want to
+ do the network bringup on a separate thread so that access to the
+ NSH prompt is not delayed.
+
+ This delay will be especially long if the board is not connected to
+ a network because additional time will be required to fail with
+ timeout errors.
+
+ 3. This configuration supports a network with fixed IP address. You
+ may have to change these settings for your network:
+
+ CONFIG_NSH_IPADDR=0x0a000002 : IP address: 10.0.0.2
+ CONFIG_NSH_DRIPADDR=0x0a000001 : Gateway: 10.0.0.1
+ CONFIG_NSH_NETMASK=0xffffff00 : Netmask: 255.255.255.0
+
+ You can also enable enable the DHCPC client for networks that use
+ dynamically assigned address:
+
+ CONFIG_NETUTILS_DHCPC=y : Enables the DHCP client
+ CONFIG_NET_UDP=y : Depends on broadcast UDP
+ CONFIG_NET_BROADCAST=y
+ CONFIG_NSH_DHCPC=y : Tells NSH to use DHCPC, not
+ : the fixed addresses
+
+ 4. This configuration has been used for verifying the touchscreen on
on the SAM4E-EK LCD. With these modifications, you can include the
touchscreen test program at apps/examples/touchscreen as an NSH built-in
application. You can enable the touchscreen and test by modifying the
@@ -797,7 +837,7 @@ Configurations
CONFIG_DEBUG_VERBOSE=y : Enable verbose debug output
CONFIG_DEBUG_INPUT=y : Enable debug output from input devices
- 3. Enabling HSMCI support. The SAM3U-KE provides a an SD memory card
+ 4. Enabling HSMCI support. The SAM3U-KE provides a an SD memory card
slot. Support for the SD slot can be enabled with the following
settings:
@@ -824,14 +864,7 @@ Configurations
CONFIG_NSH_ARCHINIT=y : NSH board-initialization
STATUS:
- 2013-6-28: The touchscreen is functional.
- 2013-6-29: Hmmm... but there appear to be conditions when the
- touchscreen driver locks up. Looks like some issue with
- managing the interrupts.
- 2013-6-30: Those lock-ups appear to be due to poorly placed
- debug output statements. If you do not enable debug output,
- the touchscreen is rock-solid.
- 2013-8-10: Added the comments above above enabling HSMCI memory
- card support and verified that the configuration builds without
- error. However, that configuration has not yet been tested (and
- is may even be incomplete).
+ 2014-3-13: The basic NSH serial console is working. Network support
+ has been verified. HSMCI and touchscreen have not been tested (the
+ above notes came from the SAM3U-EK and have not been yet been tested
+ on the SAM4E-EK).
diff --git a/nuttx/configs/sam4e-ek/nsh/defconfig b/nuttx/configs/sam4e-ek/nsh/defconfig
index cdf401ff5..c08c1eb46 100644
--- a/nuttx/configs/sam4e-ek/nsh/defconfig
+++ b/nuttx/configs/sam4e-ek/nsh/defconfig
@@ -12,6 +12,10 @@ CONFIG_HOST_LINUX=y
# CONFIG_HOST_OSX is not set
# CONFIG_HOST_WINDOWS is not set
# CONFIG_HOST_OTHER is not set
+# CONFIG_WINDOWS_NATIVE is not set
+# CONFIG_WINDOWS_CYGWIN is not set
+# CONFIG_WINDOWS_MSYS is not set
+# CONFIG_WINDOWS_OTHER is not set
#
# Build Configuration
@@ -105,15 +109,22 @@ CONFIG_ARCH_HAVE_MPU=y
#
# ARMV7M Configuration Options
#
+# CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC is not set
CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT=y
# CONFIG_ARMV7M_TOOLCHAIN_CODEREDL is not set
+# CONFIG_ARMV7M_TOOLCHAIN_CODEREDW is not set
# CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL is not set
+# CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW is not set
+# CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM is not set
# CONFIG_ARMV7M_TOOLCHAIN_GNU_EABIL is not set
+# CONFIG_ARMV7M_TOOLCHAIN_GNU_EABIW is not set
+# CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE is not set
# CONFIG_ARMV7M_OABI_TOOLCHAIN is not set
# CONFIG_GPIO_IRQ is not set
CONFIG_ARCH_HAVE_EXTNAND=y
CONFIG_ARCH_HAVE_EXTNOR=y
CONFIG_ARCH_HAVE_EXTSRAM0=y
+# CONFIG_NET_MULTICAST is not set
CONFIG_ARCH_HAVE_EXTSRAM1=y
#
@@ -167,6 +178,25 @@ CONFIG_ARCH_CHIP_SAM4E=y
#
# AT91SAM3/4 Peripheral Support
#
+# CONFIG_SAM34_ACC is not set
+# CONFIG_SAM34_AES is not set
+# CONFIG_SAM34_AFEC0 is not set
+# CONFIG_SAM34_AFEC1 is not set
+# CONFIG_SAM34_CAN0 is not set
+# CONFIG_SAM34_CAN1 is not set
+# CONFIG_SAM34_CHIPID is not set
+# CONFIG_SAM34_CMCC is not set
+# CONFIG_SAM34_DACC is not set
+# CONFIG_SAM34_EIC is not set
+# CONFIG_SAM34_DMAC is not set
+CONFIG_SAM34_EMAC=y
+# CONFIG_SAM34_HSMCI is not set
+# CONFIG_SAM34_NAND is not set
+# CONFIG_SAM34_PDCA is not set
+# CONFIG_SAM34_PWM is not set
+# CONFIG_SAM34_RTC is not set
+# CONFIG_SAM34_RTT is not set
+# CONFIG_SAM34_SMC is not set
# CONFIG_SAM34_SPI0 is not set
# CONFIG_SAM34_TC0 is not set
# CONFIG_SAM34_TC1 is not set
@@ -177,37 +207,19 @@ CONFIG_ARCH_CHIP_SAM4E=y
# CONFIG_SAM34_TC6 is not set
# CONFIG_SAM34_TC7 is not set
# CONFIG_SAM34_TC8 is not set
-# CONFIG_SAM34_PWM is not set
# CONFIG_SAM34_TWIM0 is not set
# CONFIG_SAM34_TWIS0 is not set
# CONFIG_SAM34_TWIM1 is not set
# CONFIG_SAM34_TWIS1 is not set
CONFIG_SAM34_UART0=y
# CONFIG_SAM34_UART1 is not set
+# CONFIG_SAM34_UDP is not set
# CONFIG_SAM34_USART0 is not set
CONFIG_SAM34_USART1=y
-# CONFIG_SAM34_AFEC0 is not set
-# CONFIG_SAM34_AFEC1 is not set
-# CONFIG_SAM34_DACC is not set
-# CONFIG_SAM34_ACC is not set
-# CONFIG_SAM34_AES is not set
-# CONFIG_SAM34_EMAC is not set
-# CONFIG_SAM34_CAN0 is not set
-# CONFIG_SAM34_CAN1 is not set
-# CONFIG_SAM34_SMC is not set
-# CONFIG_SAM34_NAND is not set
-# CONFIG_SAM34_PDCA is not set
-# CONFIG_SAM34_DMAC is not set
-# CONFIG_SAM34_UDP is not set
-# CONFIG_SAM34_CHIPID is not set
-# CONFIG_SAM34_RTC is not set
-# CONFIG_SAM34_RTT is not set
# CONFIG_SAM34_WDT is not set
-# CONFIG_SAM34_EIC is not set
-# CONFIG_SAM34_HSMCI is not set
#
-# External Memory Configuration
+# AT91SAM3/4 External Memory Configuration
#
# CONFIG_SAM34_EXTNAND is not set
# CONFIG_SAM34_EXTNOR is not set
@@ -219,6 +231,27 @@ CONFIG_SAM34_USART1=y
#
#
+# AT91SAM3/4 EMAC device driver options
+#
+CONFIG_SAM34_EMAC_NRXBUFFERS=16
+CONFIG_SAM34_EMAC_NTXBUFFERS=8
+# CONFIG_SAM34_EMAC_PREALLOCATE is not set
+# CONFIG_SAM34_EMAC_NBC is not set
+CONFIG_SAM34_EMAC_PHYADDR=1
+# CONFIG_SAM34_EMAC_PHYINIT is not set
+CONFIG_SAM34_EMAC_MII=y
+# CONFIG_SAM34_EMAC_CLAUSE45 is not set
+CONFIG_SAM34_EMAC_AUTONEG=y
+CONFIG_SAM34_EMAC_PHYSR=30
+CONFIG_SAM34_EMAC_PHYSR_ALTCONFIG=y
+CONFIG_SAM34_EMAC_PHYSR_ALTMODE=0x7
+CONFIG_SAM34_EMAC_PHYSR_10HD=0x1
+CONFIG_SAM34_EMAC_PHYSR_100HD=0x2
+CONFIG_SAM34_EMAC_PHYSR_10FD=0x5
+CONFIG_SAM34_EMAC_PHYSR_100FD=0x6
+CONFIG_SAM34_EMAC_ISETH0=y
+
+#
# Architecture Options
#
# CONFIG_ARCH_NOINTC is not set
@@ -383,6 +416,34 @@ CONFIG_DEV_NULL=y
# CONFIG_LCD is not set
# CONFIG_MMCSD is not set
# CONFIG_MTD is not set
+CONFIG_NETDEVICES=y
+
+#
+# General Ethernet MAC Driver Options
+#
+# CONFIG_NETDEV_MULTINIC is not set
+
+#
+# External Ethernet MAC Device Support
+#
+# CONFIG_NET_DM90x0 is not set
+# CONFIG_ENC28J60 is not set
+# CONFIG_ENCX24J600 is not set
+# CONFIG_NET_E1000 is not set
+# CONFIG_NET_SLIP is not set
+# CONFIG_NET_VNET is not set
+
+#
+# External Ethernet PHY Device Support
+#
+# CONFIG_ETH0_PHY_NONE is not set
+# CONFIG_ETH0_PHY_AM79C874 is not set
+# CONFIG_ETH0_PHY_KS8721 is not set
+CONFIG_ETH0_PHY_KSZ8051=y
+# CONFIG_ETH0_PHY_KSZ90x1 is not set
+# CONFIG_ETH0_PHY_DP83848C is not set
+# CONFIG_ETH0_PHY_LAN8720 is not set
+# CONFIG_ETH0_PHY_DM9161 is not set
# CONFIG_PIPES is not set
# CONFIG_PM is not set
# CONFIG_POWER is not set
@@ -464,9 +525,51 @@ CONFIG_USART1_2STOP=0
#
# Networking Support
#
-# CONFIG_ARCH_HAVE_NET is not set
-# CONFIG_ARCH_HAVE_PHY is not set
-# CONFIG_NET is not set
+CONFIG_ARCH_HAVE_NET=y
+CONFIG_ARCH_HAVE_PHY=y
+CONFIG_NET=y
+# CONFIG_NET_NOINTS is not set
+# CONFIG_NET_MULTIBUFFER is not set
+# CONFIG_NET_PROMISCUOUS is not set
+CONFIG_NSOCKET_DESCRIPTORS=8
+CONFIG_NET_NACTIVESOCKETS=16
+CONFIG_NET_SOCKOPTS=y
+# CONFIG_NET_SOLINGER is not set
+CONFIG_NET_BUFSIZE=562
+# CONFIG_NET_TCPURGDATA is not set
+
+#
+# TCP/IP Networking
+#
+CONFIG_NET_TCP=y
+CONFIG_NET_TCP_CONNS=16
+CONFIG_NET_MAX_LISTENPORTS=16
+CONFIG_NET_TCP_READAHEAD=y
+CONFIG_NET_TCP_READAHEAD_BUFSIZE=536
+CONFIG_NET_NTCP_READAHEAD_BUFFERS=8
+# CONFIG_NET_TCP_WRITE_BUFFERS is not set
+CONFIG_NET_TCP_RECVDELAY=0
+CONFIG_NET_TCPBACKLOG=y
+# CONFIG_NET_TCP_SPLIT is not set
+# CONFIG_NET_SENDFILE is not set
+
+#
+# UDP Networking
+#
+CONFIG_NET_UDP=y
+CONFIG_NET_UDP_CHECKSUMS=y
+CONFIG_NET_UDP_CONNS=8
+CONFIG_NET_BROADCAST=y
+# CONFIG_NET_RXAVAIL is not set
+CONFIG_NET_ICMP=y
+CONFIG_NET_ICMP_PING=y
+# CONFIG_NET_PINGADDRCONF is not set
+# CONFIG_NET_IGMP is not set
+# CONFIG_NET_STATISTICS is not set
+CONFIG_NET_RECEIVE_WINDOW=536
+CONFIG_NET_ARPTAB_SIZE=16
+# CONFIG_NET_ARP_IPIN is not set
+# CONFIG_NET_ROUTE is not set
#
# File Systems
@@ -485,6 +588,7 @@ CONFIG_FS_FAT=y
# CONFIG_FAT_LFN is not set
# CONFIG_FS_FATTIME is not set
# CONFIG_FAT_DMAMEMORY is not set
+# CONFIG_NFS is not set
# CONFIG_FS_NXFFS is not set
# CONFIG_FS_ROMFS is not set
# CONFIG_FS_SMARTFS is not set
@@ -598,6 +702,7 @@ CONFIG_BUILTIN_PROXY_STACKSIZE=1024
# CONFIG_EXAMPLES_MM is not set
# CONFIG_EXAMPLES_MODBUS is not set
# CONFIG_EXAMPLES_MOUNT is not set
+# CONFIG_EXAMPLES_NETTEST is not set
# CONFIG_EXAMPLES_NRF24L01TERM is not set
CONFIG_EXAMPLES_NSH=y
# CONFIG_EXAMPLES_NULL is not set
@@ -627,6 +732,7 @@ CONFIG_EXAMPLES_NSH=y
# CONFIG_EXAMPLES_TIFF is not set
# CONFIG_EXAMPLES_TOUCHSCREEN is not set
# CONFIG_EXAMPLES_UDP is not set
+# CONFIG_EXAMPLES_DISCOVER is not set
# CONFIG_EXAMPLES_UIP is not set
# CONFIG_EXAMPLES_USBSERIAL is not set
# CONFIG_EXAMPLES_USBTERM is not set
@@ -651,15 +757,24 @@ CONFIG_EXAMPLES_NSH=y
# Networking Utilities
#
# CONFIG_NETUTILS_CODECS is not set
+# CONFIG_NETUTILS_DHCPC is not set
# CONFIG_NETUTILS_DHCPD is not set
# CONFIG_NETUTILS_FTPC is not set
# CONFIG_NETUTILS_FTPD is not set
# CONFIG_NETUTILS_JSON is not set
+CONFIG_NETUTILS_RESOLV=y
+CONFIG_NET_RESOLV_ENTRIES=8
+CONFIG_NET_RESOLV_MAXRESPONSE=96
# CONFIG_NETUTILS_SMTP is not set
-# CONFIG_NETUTILS_TFTPC is not set
+CONFIG_NETUTILS_TELNETD=y
+CONFIG_NETUTILS_TFTPC=y
# CONFIG_NETUTILS_THTTPD is not set
-# CONFIG_NETUTILS_UIPLIB is not set
-# CONFIG_NETUTILS_WEBCLIENT is not set
+CONFIG_NETUTILS_UIPLIB=y
+CONFIG_NETUTILS_WEBCLIENT=y
+CONFIG_NSH_WGET_USERAGENT="NuttX/6.xx.x (; http://www.nuttx.org/)"
+# CONFIG_NETUTILS_WEBSERVER is not set
+# CONFIG_NETUTILS_DISCOVER is not set
+# CONFIG_NETUTILS_XMLRPC is not set
#
# FreeModBus
@@ -705,6 +820,7 @@ CONFIG_NSH_BUILTIN_APPS=y
# CONFIG_NSH_DISABLE_MOUNT is not set
# CONFIG_NSH_DISABLE_MW is not set
# CONFIG_NSH_DISABLE_PS is not set
+# CONFIG_NSH_DISABLE_PING is not set
# CONFIG_NSH_DISABLE_PUT is not set
# CONFIG_NSH_DISABLE_PWD is not set
# CONFIG_NSH_DISABLE_RM is not set
@@ -744,6 +860,20 @@ CONFIG_NSH_CONSOLE=y
#
# CONFIG_NSH_CONDEV is not set
CONFIG_NSH_ARCHINIT=y
+CONFIG_NSH_TELNET=y
+CONFIG_NSH_TELNETD_PORT=23
+CONFIG_NSH_TELNETD_DAEMONPRIO=100
+CONFIG_NSH_TELNETD_DAEMONSTACKSIZE=2048
+CONFIG_NSH_TELNETD_CLIENTPRIO=100
+CONFIG_NSH_TELNETD_CLIENTSTACKSIZE=2048
+CONFIG_NSH_IOBUFFER_SIZE=512
+# CONFIG_NSH_TELNET_LOGIN is not set
+CONFIG_NSH_IPADDR=0x0a000002
+CONFIG_NSH_DRIPADDR=0x0a000001
+CONFIG_NSH_NETMASK=0xffffff00
+# CONFIG_NSH_DNS is not set
+CONFIG_NSH_NOMAC=y
+CONFIG_NSH_MAX_ROUNDTRIP=20
#
# NxWidgets/NxWM
diff --git a/nuttx/configs/sam4e-ek/src/sam4e-ek.h b/nuttx/configs/sam4e-ek/src/sam4e-ek.h
index e1fc2bfa1..f87826829 100644
--- a/nuttx/configs/sam4e-ek/src/sam4e-ek.h
+++ b/nuttx/configs/sam4e-ek/src/sam4e-ek.h
@@ -193,6 +193,12 @@
#define SAM_TCS_IRQ SAM_IRQ_PA16
+/* Ethernet MAC. The PHY interrupt is available on pin PD28 */
+
+#define GPIO_PHY_IRQ (GPIO_INPUT | GPIO_CFG_PULLUP | GPIO_INT_BOTHEDGES | \
+ GPIO_PORT_PIOD | GPIO_PIN28)
+#define SAM_PHY_IRQ SAM_IRQ_PD28
+
/* LEDs
*
* D2 PA0 Blue Pulled high