forked from Imagelibrary/rtems
bsp/lpc24xx: Ethernet support for LPC17XX
This commit is contained in:
@@ -7,7 +7,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2009-2011 embedded brains GmbH. All rights reserved.
|
* Copyright (c) 2009-2012 embedded brains GmbH. All rights reserved.
|
||||||
*
|
*
|
||||||
* embedded brains GmbH
|
* embedded brains GmbH
|
||||||
* Obere Lagerstr. 30
|
* Obere Lagerstr. 30
|
||||||
@@ -27,6 +27,8 @@
|
|||||||
#include <bsp/io.h>
|
#include <bsp/io.h>
|
||||||
#include <bsp/lpc24xx.h>
|
#include <bsp/lpc24xx.h>
|
||||||
|
|
||||||
|
#include <limits.h>
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#endif /* __cplusplus */
|
#endif /* __cplusplus */
|
||||||
@@ -35,13 +37,31 @@ extern "C" {
|
|||||||
|
|
||||||
#define LPC_ETH_CONFIG_REG_BASE MAC_BASE_ADDR
|
#define LPC_ETH_CONFIG_REG_BASE MAC_BASE_ADDR
|
||||||
|
|
||||||
#define LPC_ETH_CONFIG_RX_UNIT_COUNT_DEFAULT 16
|
#ifdef ARM_MULTILIB_ARCH_V4
|
||||||
#define LPC_ETH_CONFIG_RX_UNIT_COUNT_MAX 54
|
#define LPC_ETH_CONFIG_RX_UNIT_COUNT_DEFAULT 16
|
||||||
|
#define LPC_ETH_CONFIG_RX_UNIT_COUNT_MAX 54
|
||||||
|
|
||||||
#define LPC_ETH_CONFIG_TX_UNIT_COUNT_DEFAULT 10
|
#define LPC_ETH_CONFIG_TX_UNIT_COUNT_DEFAULT 10
|
||||||
#define LPC_ETH_CONFIG_TX_UNIT_COUNT_MAX 10
|
#define LPC_ETH_CONFIG_TX_UNIT_COUNT_MAX 10
|
||||||
|
|
||||||
#define LPC_ETH_CONFIG_UNIT_MULTIPLE 1U
|
#define LPC_ETH_CONFIG_UNIT_MULTIPLE 1U
|
||||||
|
|
||||||
|
#define LPC24XX_ETH_RAM_BEGIN 0x7fe00000U
|
||||||
|
#define LPC24XX_ETH_RAM_SIZE (16U * 1024U)
|
||||||
|
#else
|
||||||
|
#define LPC_ETH_CONFIG_RX_UNIT_COUNT_DEFAULT 16
|
||||||
|
#define LPC_ETH_CONFIG_RX_UNIT_COUNT_MAX INT_MAX
|
||||||
|
|
||||||
|
#define LPC_ETH_CONFIG_TX_UNIT_COUNT_DEFAULT 32
|
||||||
|
#define LPC_ETH_CONFIG_TX_UNIT_COUNT_MAX INT_MAX
|
||||||
|
|
||||||
|
#define LPC_ETH_CONFIG_UNIT_MULTIPLE 8U
|
||||||
|
|
||||||
|
#define LPC_ETH_CONFIG_USE_TRANSMIT_DMA
|
||||||
|
|
||||||
|
#define LPC24XX_ETH_RAM_BEGIN 0x20000000U
|
||||||
|
#define LPC24XX_ETH_RAM_SIZE (32U * 1024U)
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef LPC24XX_ETHERNET_RMII
|
#ifdef LPC24XX_ETHERNET_RMII
|
||||||
#define LPC_ETH_CONFIG_RMII
|
#define LPC_ETH_CONFIG_RMII
|
||||||
@@ -72,9 +92,6 @@ extern "C" {
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define LPC24XX_ETH_RAM_BEGIN 0x7fe00000U
|
|
||||||
#define LPC24XX_ETH_RAM_SIZE (16U * 1024U)
|
|
||||||
|
|
||||||
static char *lpc_eth_config_alloc_table_area(size_t size)
|
static char *lpc_eth_config_alloc_table_area(size_t size)
|
||||||
{
|
{
|
||||||
if (size < LPC24XX_ETH_RAM_SIZE) {
|
if (size < LPC24XX_ETH_RAM_SIZE) {
|
||||||
|
|||||||
Reference in New Issue
Block a user