Clean-up and document LP17xx ethernet driver configuration settings

git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3109 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
patacongo 2010-11-14 17:33:45 +00:00
parent 2250471395
commit a5b6cde6ee
14 changed files with 278 additions and 42 deletions

View File

@ -91,12 +91,18 @@
# define CONFIG_LPC17_NINTERFACES 1 # define CONFIG_LPC17_NINTERFACES 1
#endif #endif
/* If IGMP is enabled, then accept multi-cast frames. */
#if defined(CONFIG_NET_IGMP) && !defined(CONFIG_NET_MULTICAST)
# define CONFIG_NET_MULTICAST 1
#endif
/* If the user did not specify a priority for Ethernet interrupts, set the /* If the user did not specify a priority for Ethernet interrupts, set the
* interrupt priority to the maximum. * interrupt priority to the maximum.
*/ */
#ifndef CONFIG_ETH_PRIORITY #ifndef CONFIG_NET_PRIORITY
# define CONFIG_ETH_PRIORITY NVIC_SYSH_PRIORITY_MAX # define CONFIG_NET_PRIORITY NVIC_SYSH_PRIORITY_MAX
#endif #endif
/* TX poll deley = 1 seconds. CLK_TCK is the number of clock ticks per second */ /* TX poll deley = 1 seconds. CLK_TCK is the number of clock ticks per second */
@ -168,8 +174,8 @@
* descriptors will determine the organization and the size of the * descriptors will determine the organization and the size of the
* descriptor and status tables. There is a complex interaction between * descriptor and status tables. There is a complex interaction between
* the maximum packet size (CONFIG_NET_BUFSIZE) and the number of * the maximum packet size (CONFIG_NET_BUFSIZE) and the number of
* Rx and Tx descriptors that can be suppored (CONFIG_ETH_NRXDESC and * Rx and Tx descriptors that can be suppored (CONFIG_NET_NRXDESC and
* CONFIG_ETH_NTXDESC): Small buffers -> more packets. This is * CONFIG_NET_NTXDESC): Small buffers -> more packets. This is
* something that needs to be tuned for you system. * something that needs to be tuned for you system.
* *
* For a 16Kb SRAM region, here is the relationship: * For a 16Kb SRAM region, here is the relationship:
@ -223,18 +229,18 @@
* SRAM for the use in the heap. But that has not yet been pursued.] * SRAM for the use in the heap. But that has not yet been pursued.]
*/ */
#ifndef CONFIG_ETH_NTXDESC #ifndef CONFIG_NET_NTXDESC
# define CONFIG_ETH_NTXDESC 18 # define CONFIG_NET_NTXDESC 18
#endif #endif
#define LPC17_TXDESCTAB_SIZE (CONFIG_ETH_NTXDESC*LPC17_TXDESC_SIZE) #define LPC17_TXDESCTAB_SIZE (CONFIG_NET_NTXDESC*LPC17_TXDESC_SIZE)
#define LPC17_TXSTATTAB_SIZE (CONFIG_ETH_NTXDESC*LPC17_TXSTAT_SIZE) #define LPC17_TXSTATTAB_SIZE (CONFIG_NET_NTXDESC*LPC17_TXSTAT_SIZE)
#define LPC17_TXTAB_SIZE (LPC17_TXDESCTAB_SIZE+LPC17_TXSTATTAB_SIZE) #define LPC17_TXTAB_SIZE (LPC17_TXDESCTAB_SIZE+LPC17_TXSTATTAB_SIZE)
#ifndef CONFIG_ETH_NRXDESC #ifndef CONFIG_NET_NRXDESC
# define CONFIG_ETH_NRXDESC 18 # define CONFIG_NET_NRXDESC 18
#endif #endif
#define LPC17_RXDESCTAB_SIZE (CONFIG_ETH_NRXDESC*LPC17_RXDESC_SIZE) #define LPC17_RXDESCTAB_SIZE (CONFIG_NET_NRXDESC*LPC17_RXDESC_SIZE)
#define LPC17_RXSTATTAB_SIZE (CONFIG_ETH_NRXDESC*LPC17_RXSTAT_SIZE) #define LPC17_RXSTATTAB_SIZE (CONFIG_NET_NRXDESC*LPC17_RXSTAT_SIZE)
#define LPC17_RXTAB_SIZE (LPC17_RXDESCTAB_SIZE+LPC17_RXSTATTAB_SIZE) #define LPC17_RXTAB_SIZE (LPC17_RXDESCTAB_SIZE+LPC17_RXSTATTAB_SIZE)
#define LPC17_DESCTAB_SIZE (LPC17_TXTAB_SIZE+LPC17_RXTAB_SIZE) #define LPC17_DESCTAB_SIZE (LPC17_TXTAB_SIZE+LPC17_RXTAB_SIZE)
@ -267,8 +273,8 @@
#define LPC17_PKTMEM_END (LPC17_EMACRAM_BASE+LPC17_PKTMEM_SIZE) #define LPC17_PKTMEM_END (LPC17_EMACRAM_BASE+LPC17_PKTMEM_SIZE)
#define LPC17_MAXPACKET_SIZE ((CONFIG_NET_BUFSIZE + 3 + 2) & ~3) #define LPC17_MAXPACKET_SIZE ((CONFIG_NET_BUFSIZE + 3 + 2) & ~3)
#define LPC17_NTXPKTS CONFIG_ETH_NTXDESC #define LPC17_NTXPKTS CONFIG_NET_NTXDESC
#define LPC17_NRXPKTS CONFIG_ETH_NRXDESC #define LPC17_NRXPKTS CONFIG_NET_NRXDESC
#define LPC17_TXBUFFER_SIZE (LPC17_NTXPKTS * LPC17_MAXPACKET_SIZE) #define LPC17_TXBUFFER_SIZE (LPC17_NTXPKTS * LPC17_MAXPACKET_SIZE)
#define LPC17_RXBUFFER_SIZE (LPC17_NRXPKTS * LPC17_MAXPACKET_SIZE) #define LPC17_RXBUFFER_SIZE (LPC17_NRXPKTS * LPC17_MAXPACKET_SIZE)
@ -286,7 +292,7 @@
/* Register debug -- can only happen of CONFIG_DEBUG is selected */ /* Register debug -- can only happen of CONFIG_DEBUG is selected */
#ifndef CONFIG_DEBUG #ifndef CONFIG_DEBUG
# undef CONFIG_LPC17_ENET_REGDEBUG # undef CONFIG_NET_REGDEBUG
#endif #endif
/**************************************************************************** /****************************************************************************
@ -298,7 +304,7 @@
#if defined(CONFIG_DEBUG) && defined(CONFIG_DEBUG_NET) #if defined(CONFIG_DEBUG) && defined(CONFIG_DEBUG_NET)
struct lpc17_statistics_s struct lpc17_statistics_s
{ {
#if ENABLE_WOL #ifdef ENABLE_WOL
uint32_t wol; /* Wake-up interrupts */ uint32_t wol; /* Wake-up interrupts */
#endif #endif
uint32_t rx_finished; /* Rx finished interrupts */ uint32_t rx_finished; /* Rx finished interrupts */
@ -388,7 +394,7 @@ static const uint16_t g_enetpins[GPIO_NENET_PINS] =
/* Register operations */ /* Register operations */
#ifdef CONFIG_LPC17_ENET_REGDEBUG #ifdef CONFIG_NET_REGDEBUG
static void lpc17_printreg(uint32_t addr, uint32_t val, bool iswrite); static void lpc17_printreg(uint32_t addr, uint32_t val, bool iswrite);
static void lpc17_checkreg(uint32_t addr, uint32_t val, bool iswrite); static void lpc17_checkreg(uint32_t addr, uint32_t val, bool iswrite);
static uint32_t lpc17_getreg(uint32_t addr); static uint32_t lpc17_getreg(uint32_t addr);
@ -428,7 +434,7 @@ static int lpc17_rmmac(struct uip_driver_s *dev, const uint8_t *mac);
/* Initialization functions */ /* Initialization functions */
#ifdef CONFIG_LPC17_ENET_REGDEBUG #ifdef CONFIG_NET_REGDEBUG
static void lpc17_showpins(void); static void lpc17_showpins(void);
#else #else
# define lpc17_showpins() # define lpc17_showpins()
@ -437,7 +443,7 @@ static void lpc17_showpins(void);
/* PHY initialization functions */ /* PHY initialization functions */
#ifdef LPC17_HAVE_PHY #ifdef LPC17_HAVE_PHY
# ifdef CONFIG_LPC17_ENET_REGDEBUG # ifdef CONFIG_NET_REGDEBUG
static void lpc17_showmii(uint8_t phyaddr, const char *msg); static void lpc17_showmii(uint8_t phyaddr, const char *msg);
# else # else
# define lpc17_showmii(phyaddr,msg) # define lpc17_showmii(phyaddr,msg)
@ -475,7 +481,7 @@ static void lpc17_ethreset(struct lpc17_driver_s *priv);
* *
*******************************************************************************/ *******************************************************************************/
#ifdef CONFIG_LPC17_ENET_REGDEBUG #ifdef CONFIG_NET_REGDEBUG
static void lpc17_printreg(uint32_t addr, uint32_t val, bool iswrite) static void lpc17_printreg(uint32_t addr, uint32_t val, bool iswrite)
{ {
dbg("%08x%s%08x\n", addr, iswrite ? "<-" : "->", val); dbg("%08x%s%08x\n", addr, iswrite ? "<-" : "->", val);
@ -490,7 +496,7 @@ static void lpc17_printreg(uint32_t addr, uint32_t val, bool iswrite)
* *
*******************************************************************************/ *******************************************************************************/
#ifdef CONFIG_LPC17_ENET_REGDEBUG #ifdef CONFIG_NET_REGDEBUG
static void lpc17_checkreg(uint32_t addr, uint32_t val, bool iswrite) static void lpc17_checkreg(uint32_t addr, uint32_t val, bool iswrite)
{ {
static uint32_t prevaddr = 0; static uint32_t prevaddr = 0;
@ -554,7 +560,7 @@ static void lpc17_checkreg(uint32_t addr, uint32_t val, bool iswrite)
* *
*******************************************************************************/ *******************************************************************************/
#ifdef CONFIG_LPC17_ENET_REGDEBUG #ifdef CONFIG_NET_REGDEBUG
static uint32_t lpc17_getreg(uint32_t addr) static uint32_t lpc17_getreg(uint32_t addr)
{ {
/* Read the value from the register */ /* Read the value from the register */
@ -576,7 +582,7 @@ static uint32_t lpc17_getreg(uint32_t addr)
* *
*******************************************************************************/ *******************************************************************************/
#ifdef CONFIG_LPC17_ENET_REGDEBUG #ifdef CONFIG_NET_REGDEBUG
static void lpc17_putreg(uint32_t val, uint32_t addr) static void lpc17_putreg(uint32_t val, uint32_t addr)
{ {
/* Check if we need to print this value */ /* Check if we need to print this value */
@ -616,7 +622,7 @@ static int lpc17_txdesc(struct lpc17_driver_s *priv)
/* Get the next producer index */ /* Get the next producer index */
prodidx = lpc17_getreg(LPC17_ETH_TXPRODIDX) & ETH_TXPRODIDX_MASK; prodidx = lpc17_getreg(LPC17_ETH_TXPRODIDX) & ETH_TXPRODIDX_MASK;
if (++prodidx >= CONFIG_ETH_NTXDESC) if (++prodidx >= CONFIG_NET_NTXDESC)
{ {
/* Wrap back to index zero */ /* Wrap back to index zero */
@ -697,7 +703,7 @@ static int lpc17_transmit(struct lpc17_driver_s *priv)
/* Bump the producer index, making the packet available for transmission. */ /* Bump the producer index, making the packet available for transmission. */
if (++prodidx >= CONFIG_ETH_NTXDESC) if (++prodidx >= CONFIG_NET_NTXDESC)
{ {
/* Wrap back to index zero */ /* Wrap back to index zero */
@ -975,12 +981,14 @@ static void lpc17_rxdone(struct lpc17_driver_s *priv)
* might also have gotten bumped up by the hardware). * might also have gotten bumped up by the hardware).
*/ */
if (++considx >= CONFIG_ETH_NTXDESC) if (++considx >= CONFIG_NET_NRXDESC)
{ {
/* Wrap back to index zero */ /* Wrap back to index zero */
considx = 0; considx = 0;
} }
lpc17_putreg(considx, LPC17_ETH_RXCONSIDX);
prodidx = lpc17_getreg(LPC17_ETH_RXPRODIDX) & ETH_RXPRODIDX_MASK; prodidx = lpc17_getreg(LPC17_ETH_RXPRODIDX) & ETH_RXPRODIDX_MASK;
} }
} }
@ -1135,7 +1143,7 @@ static int lpc17_interrupt(int irq, void *context)
/* Check for Wake-Up on Lan */ /* Check for Wake-Up on Lan */
#if CONFIG_NET_WOL #ifdef CONFIG_NET_WOL
if ((status & ETH_INT_WKUP) != 0) if ((status & ETH_INT_WKUP) != 0)
{ {
lpc17_putreg(ETH_INT_WKUP, LPC17_ETH_INTCLR); lpc17_putreg(ETH_INT_WKUP, LPC17_ETH_INTCLR);
@ -1295,13 +1303,13 @@ static int lpc17_ifup(struct uip_driver_s *dev)
*/ */
regval = ETH_RXFLCTRL_PERFEN; regval = ETH_RXFLCTRL_PERFEN;
#if CONFIG_NET_BROADCAST #ifdef CONFIG_NET_BROADCAST
regval |= ETH_RXFLCTRL_BCASTEN; regval |= ETH_RXFLCTRL_BCASTEN;
#endif #endif
#if CONFIG_NET_MULTICAST #ifdef CONFIG_NET_MULTICAST
RXFILTERCTRL |= (ETH_RXFLCTRL_MCASTEN | ETH_RXFLCTRL_UCASTEN); RXFILTERCTRL |= (ETH_RXFLCTRL_MCASTEN | ETH_RXFLCTRL_UCASTEN);
#endif #endif
#if CONFIG_NET_HASH #ifdef CONFIG_NET_HASH
RXFILTERCTRL |= (ETH_RXFLCTRL_MCASTHASHEN | ETH_RXFLCTRL_UCASTHASHEN); RXFILTERCTRL |= (ETH_RXFLCTRL_MCASTHASHEN | ETH_RXFLCTRL_UCASTHASHEN);
#endif #endif
lpc17_putreg(regval, LPC17_ETH_RXFLCTRL); lpc17_putreg(regval, LPC17_ETH_RXFLCTRL);
@ -1319,9 +1327,9 @@ static int lpc17_ifup(struct uip_driver_s *dev)
#ifdef CONFIG_ARCH_IRQPRIO #ifdef CONFIG_ARCH_IRQPRIO
#if LM3S_NETHCONTROLLERS > 1 #if LM3S_NETHCONTROLLERS > 1
(void)up_prioritize_irq(priv->irq, CONFIG_ETH_PRIORITY); (void)up_prioritize_irq(priv->irq, CONFIG_NET_PRIORITY);
#else #else
(void)up_prioritize_irq(LPC17_IRQ_ETH, CONFIG_ETH_PRIORITY); (void)up_prioritize_irq(LPC17_IRQ_ETH, CONFIG_NET_PRIORITY);
#endif #endif
#endif #endif
@ -1329,7 +1337,7 @@ static int lpc17_ifup(struct uip_driver_s *dev)
* not Wakeup on Lan (WoL) has been configured. * not Wakeup on Lan (WoL) has been configured.
*/ */
#if CONFIG_NET_WOL #ifdef CONFIG_NET_WOL
/* Configure WoL: Clear all receive filter WoLs and enable the perfect /* Configure WoL: Clear all receive filter WoLs and enable the perfect
* match WoL interrupt. We will wait until the Wake-up to finish * match WoL interrupt. We will wait until the Wake-up to finish
* bringing things up. * bringing things up.
@ -1528,7 +1536,7 @@ static int lpc17_rmmac(struct uip_driver_s *dev, const uint8_t *mac)
* *
*******************************************************************************/ *******************************************************************************/
#ifdef CONFIG_LPC17_ENET_REGDEBUG #ifdef CONFIG_NET_REGDEBUG
static void lpc17_showpins(void) static void lpc17_showpins(void)
{ {
lpc17_dumpgpio(GPIO_PORT0|GPIO_PIN0, "P0[1-15]"); lpc17_dumpgpio(GPIO_PORT0|GPIO_PIN0, "P0[1-15]");
@ -1552,7 +1560,7 @@ static void lpc17_showpins(void)
* *
*******************************************************************************/ *******************************************************************************/
#if defined(CONFIG_LPC17_ENET_REGDEBUG) && defined(LPC17_HAVE_PHY) #if defined(CONFIG_NET_REGDEBUG) && defined(LPC17_HAVE_PHY)
static void lpc17_showmii(uint8_t phyaddr, const char *msg) static void lpc17_showmii(uint8_t phyaddr, const char *msg)
{ {
dbg("PHY " LPC17_PHYNAME ": %s\n", msg); dbg("PHY " LPC17_PHYNAME ": %s\n", msg);
@ -2010,14 +2018,14 @@ static inline void lpc17_txdescinit(struct lpc17_driver_s *priv)
lpc17_putreg(LPC17_TXDESC_BASE, LPC17_ETH_TXDESC); lpc17_putreg(LPC17_TXDESC_BASE, LPC17_ETH_TXDESC);
lpc17_putreg(LPC17_TXSTAT_BASE, LPC17_ETH_TXSTAT); lpc17_putreg(LPC17_TXSTAT_BASE, LPC17_ETH_TXSTAT);
lpc17_putreg(CONFIG_ETH_NTXDESC-1, LPC17_ETH_TXDESCRNO); lpc17_putreg(CONFIG_NET_NTXDESC-1, LPC17_ETH_TXDESCRNO);
/* Initialize Tx descriptors and link to packet buffers */ /* Initialize Tx descriptors and link to packet buffers */
txdesc = (uint32_t*)LPC17_TXDESC_BASE; txdesc = (uint32_t*)LPC17_TXDESC_BASE;
pktaddr = LPC17_TXBUFFER_BASE; pktaddr = LPC17_TXBUFFER_BASE;
for (i = 0; i < CONFIG_ETH_NTXDESC; i++) for (i = 0; i < CONFIG_NET_NTXDESC; i++)
{ {
*txdesc++ = pktaddr; *txdesc++ = pktaddr;
*txdesc++ = (TXDESC_CONTROL_INT | (LPC17_MAXPACKET_SIZE - 1)); *txdesc++ = (TXDESC_CONTROL_INT | (LPC17_MAXPACKET_SIZE - 1));
@ -2027,7 +2035,7 @@ static inline void lpc17_txdescinit(struct lpc17_driver_s *priv)
/* Initialize Tx status */ /* Initialize Tx status */
txstat = (uint32_t*)LPC17_TXSTAT_BASE; txstat = (uint32_t*)LPC17_TXSTAT_BASE;
for (i = 0; i < CONFIG_ETH_NTXDESC; i++) for (i = 0; i < CONFIG_NET_NTXDESC; i++)
{ {
*txstat++ = 0; *txstat++ = 0;
} }
@ -2066,14 +2074,14 @@ static inline void lpc17_rxdescinit(struct lpc17_driver_s *priv)
lpc17_putreg(LPC17_RXDESC_BASE, LPC17_ETH_RXDESC); lpc17_putreg(LPC17_RXDESC_BASE, LPC17_ETH_RXDESC);
lpc17_putreg(LPC17_RXSTAT_BASE, LPC17_ETH_RXSTAT); lpc17_putreg(LPC17_RXSTAT_BASE, LPC17_ETH_RXSTAT);
lpc17_putreg(CONFIG_ETH_NRXDESC-1, LPC17_ETH_RXDESCNO); lpc17_putreg(CONFIG_NET_NRXDESC-1, LPC17_ETH_RXDESCNO);
/* Initialize Rx descriptors and link to packet buffers */ /* Initialize Rx descriptors and link to packet buffers */
rxdesc = (uint32_t*)LPC17_RXDESC_BASE; rxdesc = (uint32_t*)LPC17_RXDESC_BASE;
pktaddr = LPC17_RXBUFFER_BASE; pktaddr = LPC17_RXBUFFER_BASE;
for (i = 0; i < CONFIG_ETH_NRXDESC; i++) for (i = 0; i < CONFIG_NET_NRXDESC; i++)
{ {
*rxdesc++ = pktaddr; *rxdesc++ = pktaddr;
*rxdesc++ = (RXDESC_CONTROL_INT | (LPC17_MAXPACKET_SIZE - 1)); *rxdesc++ = (RXDESC_CONTROL_INT | (LPC17_MAXPACKET_SIZE - 1));
@ -2083,7 +2091,7 @@ static inline void lpc17_rxdescinit(struct lpc17_driver_s *priv)
/* Initialize Rx status */ /* Initialize Rx status */
rxstat = (uint32_t*)LPC17_TXSTAT_BASE; rxstat = (uint32_t*)LPC17_TXSTAT_BASE;
for (i = 0; i < CONFIG_ETH_NRXDESC; i++) for (i = 0; i < CONFIG_NET_NRXDESC; i++)
{ {
*rxstat++ = 0; *rxstat++ = 0;
*rxstat++ = 0; *rxstat++ = 0;

View File

@ -283,6 +283,26 @@ mbed Configuration Options
CONFIG_UARTn_PARTIY - 0=no parity, 1=odd parity, 2=even parity CONFIG_UARTn_PARTIY - 0=no parity, 1=odd parity, 2=even parity
CONFIG_UARTn_2STOP - Two stop bits CONFIG_UARTn_2STOP - Two stop bits
LPC17xx specific PHY/Ethernet device driver settings. These setting
also require CONFIG_NET and CONFIG_LPC17_ETHERNET.
CONFIG_PHY_KS8721 - Selects Micrel KS8721 PHY
CONFIG_PHY_AUTONEG - Enable auto-negotion
CONFIG_PHY_SPEED100 - Select 100Mbit vs. 10Mbit speed.
CONFIG_PHY_FDUPLEX - Select full (vs. half) duplex
CONFIG_NET_NTXDESC - Configured number of Tx descriptors. Default: 18
CONFIG_NET_NRXDESC - Configured number of Rx descriptors. Default: 18
CONFIG_NET_PRIORITY - Ethernet interrupt priority. The is default is
the higest priority.
CONFIG_NET_WOL - Enable Wake-up on Lan (not fully implemented).
CONFIG_NET_REGDEBUG - Enabled low level register debug. Also needs
CONFIG_DEBUG.
CONFIG_NET_BROADCAST - Enable receipt of broadcast frames
CONFIG_NET_HASH - Enable receipt of near-perfect match frames.
CONFIG_NET_MULTICAST - Enable receipt of multicast (and unicast) frames.
Automatically set if CONFIG_NET_IGMP is selected.
LPC17xx USB Configuration LPC17xx USB Configuration
CONFIG_LPC17_USBDEV_FRAME_INTERRUPT CONFIG_LPC17_USBDEV_FRAME_INTERRUPT

View File

@ -181,6 +181,30 @@ CONFIG_UART1_2STOP=0
CONFIG_UART2_2STOP=0 CONFIG_UART2_2STOP=0
CONFIG_UART3_2STOP=0 CONFIG_UART3_2STOP=0
#
# LPC17xx specific PHY/Ethernet device driver settings
#
# CONFIG_PHY_KS8721 - Selects Micrel KS8721 PHY
# CONFIG_PHY_AUTONEG - Enable auto-negotion
# CONFIG_PHY_SPEED100 - Select 100Mbit vs. 10Mbit speed.
# CONFIG_PHY_FDUPLEX - Select full (vs. half) duplex
# CONFIG_NET_NTXDESC - Configured number of Tx descriptors. Default: 18
# CONFIG_NET_NRXDESC - Configured number of Rx descriptors. Default: 18
# CONFIG_NET_PRIORITY - Ethernet interrupt priority. The is default is
# the higest priority.
# CONFIG_NET_WOL - Enable Wake-up on Lan (not fully implemented).
# CONFIG_NET_REGDEBUG - Enabled low level register debug. Also needs
# CONFIG_DEBUG.
# CONFIG_NET_BROADCAST - Enable receipt of broadcast frames
# CONFIG_NET_HASH - Enable receipt of near-perfect match frames.
# CONFIG_NET_MULTICAST - Enable receipt of multicast (and unicast) frames.
# Automatically set if CONFIG_NET_IGMP is selected.
#
CONFIG_PHY_KS8721=y
CONFIG_PHY_AUTONEG=y
CONFIG_PHY_SPEED100=n
CONFIG_PHY_FDUPLEX=y
# #
# General build options # General build options
# #

View File

@ -395,6 +395,26 @@ Nucleus 2G Configuration Options
CONFIG_UARTn_PARTIY - 0=no parity, 1=odd parity, 2=even parity CONFIG_UARTn_PARTIY - 0=no parity, 1=odd parity, 2=even parity
CONFIG_UARTn_2STOP - Two stop bits CONFIG_UARTn_2STOP - Two stop bits
LPC17xx specific PHY/Ethernet device driver settings. These setting
also require CONFIG_NET and CONFIG_LPC17_ETHERNET.
CONFIG_PHY_KS8721 - Selects Micrel KS8721 PHY
CONFIG_PHY_AUTONEG - Enable auto-negotion
CONFIG_PHY_SPEED100 - Select 100Mbit vs. 10Mbit speed.
CONFIG_PHY_FDUPLEX - Select full (vs. half) duplex
CONFIG_NET_NTXDESC - Configured number of Tx descriptors. Default: 18
CONFIG_NET_NRXDESC - Configured number of Rx descriptors. Default: 18
CONFIG_NET_PRIORITY - Ethernet interrupt priority. The is default is
the higest priority.
CONFIG_NET_WOL - Enable Wake-up on Lan (not fully implemented).
CONFIG_NET_REGDEBUG - Enabled low level register debug. Also needs
CONFIG_DEBUG.
CONFIG_NET_BROADCAST - Enable receipt of broadcast frames
CONFIG_NET_HASH - Enable receipt of near-perfect match frames.
CONFIG_NET_MULTICAST - Enable receipt of multicast (and unicast) frames.
Automatically set if CONFIG_NET_IGMP is selected.
LPC17xx USB Configuration LPC17xx USB Configuration
CONFIG_LPC17_USBDEV_FRAME_INTERRUPT CONFIG_LPC17_USBDEV_FRAME_INTERRUPT

View File

@ -181,6 +181,30 @@ CONFIG_UART1_2STOP=0
CONFIG_UART2_2STOP=0 CONFIG_UART2_2STOP=0
CONFIG_UART3_2STOP=0 CONFIG_UART3_2STOP=0
#
# LPC17xx specific PHY/Ethernet device driver settings
#
# CONFIG_PHY_KS8721 - Selects Micrel KS8721 PHY
# CONFIG_PHY_AUTONEG - Enable auto-negotion
# CONFIG_PHY_SPEED100 - Select 100Mbit vs. 10Mbit speed.
# CONFIG_PHY_FDUPLEX - Select full (vs. half) duplex
# CONFIG_NET_NTXDESC - Configured number of Tx descriptors. Default: 18
# CONFIG_NET_NRXDESC - Configured number of Rx descriptors. Default: 18
# CONFIG_NET_PRIORITY - Ethernet interrupt priority. The is default is
# the higest priority.
# CONFIG_NET_WOL - Enable Wake-up on Lan (not fully implemented).
# CONFIG_NET_REGDEBUG - Enabled low level register debug. Also needs
# CONFIG_DEBUG.
# CONFIG_NET_BROADCAST - Enable receipt of broadcast frames
# CONFIG_NET_HASH - Enable receipt of near-perfect match frames.
# CONFIG_NET_MULTICAST - Enable receipt of multicast (and unicast) frames.
# Automatically set if CONFIG_NET_IGMP is selected.
#
CONFIG_PHY_KS8721=y
CONFIG_PHY_AUTONEG=y
CONFIG_PHY_SPEED100=n
CONFIG_PHY_FDUPLEX=y
# #
# General build options # General build options
# #

View File

@ -181,6 +181,30 @@ CONFIG_UART1_2STOP=0
CONFIG_UART2_2STOP=0 CONFIG_UART2_2STOP=0
CONFIG_UART3_2STOP=0 CONFIG_UART3_2STOP=0
#
# LPC17xx specific PHY/Ethernet device driver settings
#
# CONFIG_PHY_KS8721 - Selects Micrel KS8721 PHY
# CONFIG_PHY_AUTONEG - Enable auto-negotion
# CONFIG_PHY_SPEED100 - Select 100Mbit vs. 10Mbit speed.
# CONFIG_PHY_FDUPLEX - Select full (vs. half) duplex
# CONFIG_NET_NTXDESC - Configured number of Tx descriptors. Default: 18
# CONFIG_NET_NRXDESC - Configured number of Rx descriptors. Default: 18
# CONFIG_NET_PRIORITY - Ethernet interrupt priority. The is default is
# the higest priority.
# CONFIG_NET_WOL - Enable Wake-up on Lan (not fully implemented).
# CONFIG_NET_REGDEBUG - Enabled low level register debug. Also needs
# CONFIG_DEBUG.
# CONFIG_NET_BROADCAST - Enable receipt of broadcast frames
# CONFIG_NET_HASH - Enable receipt of near-perfect match frames.
# CONFIG_NET_MULTICAST - Enable receipt of multicast (and unicast) frames.
# Automatically set if CONFIG_NET_IGMP is selected.
#
CONFIG_PHY_KS8721=y
CONFIG_PHY_AUTONEG=y
CONFIG_PHY_SPEED100=n
CONFIG_PHY_FDUPLEX=y
# #
# General build options # General build options
# #

View File

@ -181,6 +181,30 @@ CONFIG_UART1_2STOP=0
CONFIG_UART2_2STOP=0 CONFIG_UART2_2STOP=0
CONFIG_UART3_2STOP=0 CONFIG_UART3_2STOP=0
#
# LPC17xx specific PHY/Ethernet device driver settings
#
# CONFIG_PHY_KS8721 - Selects Micrel KS8721 PHY
# CONFIG_PHY_AUTONEG - Enable auto-negotion
# CONFIG_PHY_SPEED100 - Select 100Mbit vs. 10Mbit speed.
# CONFIG_PHY_FDUPLEX - Select full (vs. half) duplex
# CONFIG_NET_NTXDESC - Configured number of Tx descriptors. Default: 18
# CONFIG_NET_NRXDESC - Configured number of Rx descriptors. Default: 18
# CONFIG_NET_PRIORITY - Ethernet interrupt priority. The is default is
# the higest priority.
# CONFIG_NET_WOL - Enable Wake-up on Lan (not fully implemented).
# CONFIG_NET_REGDEBUG - Enabled low level register debug. Also needs
# CONFIG_DEBUG.
# CONFIG_NET_BROADCAST - Enable receipt of broadcast frames
# CONFIG_NET_HASH - Enable receipt of near-perfect match frames.
# CONFIG_NET_MULTICAST - Enable receipt of multicast (and unicast) frames.
# Automatically set if CONFIG_NET_IGMP is selected.
#
CONFIG_PHY_KS8721=y
CONFIG_PHY_AUTONEG=y
CONFIG_PHY_SPEED100=n
CONFIG_PHY_FDUPLEX=y
# #
# General build options # General build options
# #

View File

@ -181,6 +181,30 @@ CONFIG_UART1_2STOP=0
CONFIG_UART2_2STOP=0 CONFIG_UART2_2STOP=0
CONFIG_UART3_2STOP=0 CONFIG_UART3_2STOP=0
#
# LPC17xx specific PHY/Ethernet device driver settings
#
# CONFIG_PHY_KS8721 - Selects Micrel KS8721 PHY
# CONFIG_PHY_AUTONEG - Enable auto-negotion
# CONFIG_PHY_SPEED100 - Select 100Mbit vs. 10Mbit speed.
# CONFIG_PHY_FDUPLEX - Select full (vs. half) duplex
# CONFIG_NET_NTXDESC - Configured number of Tx descriptors. Default: 18
# CONFIG_NET_NRXDESC - Configured number of Rx descriptors. Default: 18
# CONFIG_NET_PRIORITY - Ethernet interrupt priority. The is default is
# the higest priority.
# CONFIG_NET_WOL - Enable Wake-up on Lan (not fully implemented).
# CONFIG_NET_REGDEBUG - Enabled low level register debug. Also needs
# CONFIG_DEBUG.
# CONFIG_NET_BROADCAST - Enable receipt of broadcast frames
# CONFIG_NET_HASH - Enable receipt of near-perfect match frames.
# CONFIG_NET_MULTICAST - Enable receipt of multicast (and unicast) frames.
# Automatically set if CONFIG_NET_IGMP is selected.
#
CONFIG_PHY_KS8721=y
CONFIG_PHY_AUTONEG=y
CONFIG_PHY_SPEED100=n
CONFIG_PHY_FDUPLEX=y
# #
# General build options # General build options
# #

View File

@ -602,13 +602,26 @@ Olimex LPC1766-STK Configuration Options
CONFIG_UARTn_2STOP - Two stop bits CONFIG_UARTn_2STOP - Two stop bits
LPC17xx specific PHY/Ethernet device driver settings LPC17xx specific PHY/Ethernet device driver settings. These setting
also require CONFIG_NET and CONFIG_LPC17_ETHERNET.
CONFIG_PHY_KS8721 - Selects Micrel KS8721 PHY CONFIG_PHY_KS8721 - Selects Micrel KS8721 PHY
CONFIG_PHY_AUTONEG - Enable auto-negotion CONFIG_PHY_AUTONEG - Enable auto-negotion
CONFIG_PHY_SPEED100 - Select 100Mbit vs. 10Mbit speed. CONFIG_PHY_SPEED100 - Select 100Mbit vs. 10Mbit speed.
CONFIG_PHY_FDUPLEX - Select full (vs. half) duplex CONFIG_PHY_FDUPLEX - Select full (vs. half) duplex
CONFIG_NET_NTXDESC - Configured number of Tx descriptors. Default: 18
CONFIG_NET_NRXDESC - Configured number of Rx descriptors. Default: 18
CONFIG_NET_PRIORITY - Ethernet interrupt priority. The is default is
the higest priority.
CONFIG_NET_WOL - Enable Wake-up on Lan (not fully implemented).
CONFIG_NET_REGDEBUG - Enabled low level register debug. Also needs
CONFIG_DEBUG.
CONFIG_NET_BROADCAST - Enable receipt of broadcast frames
CONFIG_NET_HASH - Enable receipt of near-perfect match frames.
CONFIG_NET_MULTICAST - Enable receipt of multicast (and unicast) frames.
Automatically set if CONFIG_NET_IGMP is selected.
LPC17xx USB Configuration LPC17xx USB Configuration
CONFIG_LPC17_USBDEV_FRAME_INTERRUPT CONFIG_LPC17_USBDEV_FRAME_INTERRUPT

View File

@ -188,6 +188,17 @@ CONFIG_UART3_2STOP=0
# CONFIG_PHY_AUTONEG - Enable auto-negotion # CONFIG_PHY_AUTONEG - Enable auto-negotion
# CONFIG_PHY_SPEED100 - Select 100Mbit vs. 10Mbit speed. # CONFIG_PHY_SPEED100 - Select 100Mbit vs. 10Mbit speed.
# CONFIG_PHY_FDUPLEX - Select full (vs. half) duplex # CONFIG_PHY_FDUPLEX - Select full (vs. half) duplex
# CONFIG_NET_NTXDESC - Configured number of Tx descriptors. Default: 18
# CONFIG_NET_NRXDESC - Configured number of Rx descriptors. Default: 18
# CONFIG_NET_PRIORITY - Ethernet interrupt priority. The is default is
# the higest priority.
# CONFIG_NET_WOL - Enable Wake-up on Lan (not fully implemented).
# CONFIG_NET_REGDEBUG - Enabled low level register debug. Also needs
# CONFIG_DEBUG.
# CONFIG_NET_BROADCAST - Enable receipt of broadcast frames
# CONFIG_NET_HASH - Enable receipt of near-perfect match frames.
# CONFIG_NET_MULTICAST - Enable receipt of multicast (and unicast) frames.
# Automatically set if CONFIG_NET_IGMP is selected.
# #
CONFIG_PHY_KS8721=y CONFIG_PHY_KS8721=y
CONFIG_PHY_AUTONEG=y CONFIG_PHY_AUTONEG=y

View File

@ -188,6 +188,17 @@ CONFIG_UART3_2STOP=0
# CONFIG_PHY_AUTONEG - Enable auto-negotion # CONFIG_PHY_AUTONEG - Enable auto-negotion
# CONFIG_PHY_SPEED100 - Select 100Mbit vs. 10Mbit speed. # CONFIG_PHY_SPEED100 - Select 100Mbit vs. 10Mbit speed.
# CONFIG_PHY_FDUPLEX - Select full (vs. half) duplex # CONFIG_PHY_FDUPLEX - Select full (vs. half) duplex
# CONFIG_NET_NTXDESC - Configured number of Tx descriptors. Default: 18
# CONFIG_NET_NRXDESC - Configured number of Rx descriptors. Default: 18
# CONFIG_NET_PRIORITY - Ethernet interrupt priority. The is default is
# the higest priority.
# CONFIG_NET_WOL - Enable Wake-up on Lan (not fully implemented).
# CONFIG_NET_REGDEBUG - Enabled low level register debug. Also needs
# CONFIG_DEBUG.
# CONFIG_NET_BROADCAST - Enable receipt of broadcast frames
# CONFIG_NET_HASH - Enable receipt of near-perfect match frames.
# CONFIG_NET_MULTICAST - Enable receipt of multicast (and unicast) frames.
# Automatically set if CONFIG_NET_IGMP is selected.
# #
CONFIG_PHY_KS8721=y CONFIG_PHY_KS8721=y
CONFIG_PHY_AUTONEG=y CONFIG_PHY_AUTONEG=y

View File

@ -188,6 +188,17 @@ CONFIG_UART3_2STOP=0
# CONFIG_PHY_AUTONEG - Enable auto-negotion # CONFIG_PHY_AUTONEG - Enable auto-negotion
# CONFIG_PHY_SPEED100 - Select 100Mbit vs. 10Mbit speed. # CONFIG_PHY_SPEED100 - Select 100Mbit vs. 10Mbit speed.
# CONFIG_PHY_FDUPLEX - Select full (vs. half) duplex # CONFIG_PHY_FDUPLEX - Select full (vs. half) duplex
# CONFIG_NET_NTXDESC - Configured number of Tx descriptors. Default: 18
# CONFIG_NET_NRXDESC - Configured number of Rx descriptors. Default: 18
# CONFIG_NET_PRIORITY - Ethernet interrupt priority. The is default is
# the higest priority.
# CONFIG_NET_WOL - Enable Wake-up on Lan (not fully implemented).
# CONFIG_NET_REGDEBUG - Enabled low level register debug. Also needs
# CONFIG_DEBUG.
# CONFIG_NET_BROADCAST - Enable receipt of broadcast frames
# CONFIG_NET_HASH - Enable receipt of near-perfect match frames.
# CONFIG_NET_MULTICAST - Enable receipt of multicast (and unicast) frames.
# Automatically set if CONFIG_NET_IGMP is selected.
# #
CONFIG_PHY_KS8721=y CONFIG_PHY_KS8721=y
CONFIG_PHY_AUTONEG=y CONFIG_PHY_AUTONEG=y

View File

@ -188,6 +188,17 @@ CONFIG_UART3_2STOP=0
# CONFIG_PHY_AUTONEG - Enable auto-negotion # CONFIG_PHY_AUTONEG - Enable auto-negotion
# CONFIG_PHY_SPEED100 - Select 100Mbit vs. 10Mbit speed. # CONFIG_PHY_SPEED100 - Select 100Mbit vs. 10Mbit speed.
# CONFIG_PHY_FDUPLEX - Select full (vs. half) duplex # CONFIG_PHY_FDUPLEX - Select full (vs. half) duplex
# CONFIG_NET_NTXDESC - Configured number of Tx descriptors. Default: 18
# CONFIG_NET_NRXDESC - Configured number of Rx descriptors. Default: 18
# CONFIG_NET_PRIORITY - Ethernet interrupt priority. The is default is
# the higest priority.
# CONFIG_NET_WOL - Enable Wake-up on Lan (not fully implemented).
# CONFIG_NET_REGDEBUG - Enabled low level register debug. Also needs
# CONFIG_DEBUG.
# CONFIG_NET_BROADCAST - Enable receipt of broadcast frames
# CONFIG_NET_HASH - Enable receipt of near-perfect match frames.
# CONFIG_NET_MULTICAST - Enable receipt of multicast (and unicast) frames.
# Automatically set if CONFIG_NET_IGMP is selected.
# #
CONFIG_PHY_KS8721=y CONFIG_PHY_KS8721=y
CONFIG_PHY_AUTONEG=y CONFIG_PHY_AUTONEG=y

View File

@ -188,6 +188,17 @@ CONFIG_UART3_2STOP=0
# CONFIG_PHY_AUTONEG - Enable auto-negotion # CONFIG_PHY_AUTONEG - Enable auto-negotion
# CONFIG_PHY_SPEED100 - Select 100Mbit vs. 10Mbit speed. # CONFIG_PHY_SPEED100 - Select 100Mbit vs. 10Mbit speed.
# CONFIG_PHY_FDUPLEX - Select full (vs. half) duplex # CONFIG_PHY_FDUPLEX - Select full (vs. half) duplex
# CONFIG_NET_NTXDESC - Configured number of Tx descriptors. Default: 18
# CONFIG_NET_NRXDESC - Configured number of Rx descriptors. Default: 18
# CONFIG_NET_PRIORITY - Ethernet interrupt priority. The is default is
# the higest priority.
# CONFIG_NET_WOL - Enable Wake-up on Lan (not fully implemented).
# CONFIG_NET_REGDEBUG - Enabled low level register debug. Also needs
# CONFIG_DEBUG.
# CONFIG_NET_BROADCAST - Enable receipt of broadcast frames
# CONFIG_NET_HASH - Enable receipt of near-perfect match frames.
# CONFIG_NET_MULTICAST - Enable receipt of multicast (and unicast) frames.
# Automatically set if CONFIG_NET_IGMP is selected.
# #
CONFIG_PHY_KS8721=y CONFIG_PHY_KS8721=y
CONFIG_PHY_AUTONEG=y CONFIG_PHY_AUTONEG=y