Loading arch/arm/mach-lpc32xx/Kconfig +25 −0 Original line number Diff line number Diff line Loading @@ -29,5 +29,30 @@ config ARCH_LPC32XX_UART6_SELECT endmenu menu "LPC32XX chip components" config ARCH_LPC32XX_IRAM_FOR_NET bool "Use IRAM for network buffers" default y help Say Y here to use the LPC internal fast IRAM (i.e. 256KB SRAM) as network buffer. If the total combined required buffer sizes is larger than the size of IRAM, then SDRAM will be used instead. This can be enabled safely if the IRAM is not intended for other uses. config ARCH_LPC32XX_MII_SUPPORT bool "Check to enable MII support or leave disabled for RMII support" help Say Y here to enable MII support, or N for RMII support. Regardless of which support is selected, the ethernet interface driver needs to be selected in the device driver networking section. The PHY3250 reference board uses RMII, so users of this board should say N. endmenu endif arch/arm/mach-lpc32xx/clock.c +1 −1 Original line number Diff line number Diff line Loading @@ -1134,7 +1134,7 @@ static struct clk_lookup lookups[] = { _REGISTER_CLOCK("lpc32xx-adc", NULL, clk_adc) _REGISTER_CLOCK("ts-lpc32xx", NULL, clk_tsc) _REGISTER_CLOCK("dev:mmc0", NULL, clk_mmc) _REGISTER_CLOCK("lpc-net.0", NULL, clk_net) _REGISTER_CLOCK("lpc-eth.0", NULL, clk_net) _REGISTER_CLOCK("dev:clcd", NULL, clk_lcd) _REGISTER_CLOCK("lpc32xx_udc", "ck_usbd", clk_usbd) _REGISTER_CLOCK("lpc32xx_rtc", NULL, clk_rtc) Loading arch/arm/mach-lpc32xx/common.c +21 −0 Original line number Diff line number Diff line Loading @@ -185,6 +185,27 @@ struct platform_device lpc32xx_ohci_device = { .resource = ohci_resources, }; /* * Network Support */ static struct resource net_resources[] = { [0] = DEFINE_RES_MEM(LPC32XX_ETHERNET_BASE, SZ_4K), [1] = DEFINE_RES_MEM(LPC32XX_IRAM_BASE, SZ_128K), [2] = DEFINE_RES_IRQ(IRQ_LPC32XX_ETHERNET), }; static u64 lpc32xx_mac_dma_mask = 0xffffffffUL; struct platform_device lpc32xx_net_device = { .name = "lpc-eth", .id = 0, .dev = { .dma_mask = &lpc32xx_mac_dma_mask, .coherent_dma_mask = 0xffffffffUL, }, .num_resources = ARRAY_SIZE(net_resources), .resource = net_resources, }; /* * Returns the unique ID for the device */ Loading arch/arm/mach-lpc32xx/common.h +2 −2 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ #ifndef __LPC32XX_COMMON_H #define __LPC32XX_COMMON_H #include <mach/board.h> #include <linux/platform_device.h> /* Loading @@ -32,6 +33,7 @@ extern struct platform_device lpc32xx_tsc_device; extern struct platform_device lpc32xx_adc_device; extern struct platform_device lpc32xx_rtc_device; extern struct platform_device lpc32xx_ohci_device; extern struct platform_device lpc32xx_net_device; /* * Other arch specific structures and functions Loading Loading @@ -67,8 +69,6 @@ extern u32 clk_get_pclk_div(void); */ extern void lpc32xx_get_uid(u32 devid[4]); extern u32 lpc32xx_return_iram_size(void); /* * Pointers used for sizing and copying suspend function data */ Loading arch/arm/mach-lpc32xx/include/mach/board.h 0 → 100644 +24 −0 Original line number Diff line number Diff line /* * arm/arch/mach-lpc32xx/include/mach/board.h * * Author: Kevin Wells <kevin.wells@nxp.com> * * Copyright (C) 2010 NXP Semiconductors * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ #ifndef __ASM_ARCH_BOARD_H #define __ASM_ARCH_BOARD_H extern u32 lpc32xx_return_iram_size(void); #endif /* __ASM_ARCH_BOARD_H */ Loading
arch/arm/mach-lpc32xx/Kconfig +25 −0 Original line number Diff line number Diff line Loading @@ -29,5 +29,30 @@ config ARCH_LPC32XX_UART6_SELECT endmenu menu "LPC32XX chip components" config ARCH_LPC32XX_IRAM_FOR_NET bool "Use IRAM for network buffers" default y help Say Y here to use the LPC internal fast IRAM (i.e. 256KB SRAM) as network buffer. If the total combined required buffer sizes is larger than the size of IRAM, then SDRAM will be used instead. This can be enabled safely if the IRAM is not intended for other uses. config ARCH_LPC32XX_MII_SUPPORT bool "Check to enable MII support or leave disabled for RMII support" help Say Y here to enable MII support, or N for RMII support. Regardless of which support is selected, the ethernet interface driver needs to be selected in the device driver networking section. The PHY3250 reference board uses RMII, so users of this board should say N. endmenu endif
arch/arm/mach-lpc32xx/clock.c +1 −1 Original line number Diff line number Diff line Loading @@ -1134,7 +1134,7 @@ static struct clk_lookup lookups[] = { _REGISTER_CLOCK("lpc32xx-adc", NULL, clk_adc) _REGISTER_CLOCK("ts-lpc32xx", NULL, clk_tsc) _REGISTER_CLOCK("dev:mmc0", NULL, clk_mmc) _REGISTER_CLOCK("lpc-net.0", NULL, clk_net) _REGISTER_CLOCK("lpc-eth.0", NULL, clk_net) _REGISTER_CLOCK("dev:clcd", NULL, clk_lcd) _REGISTER_CLOCK("lpc32xx_udc", "ck_usbd", clk_usbd) _REGISTER_CLOCK("lpc32xx_rtc", NULL, clk_rtc) Loading
arch/arm/mach-lpc32xx/common.c +21 −0 Original line number Diff line number Diff line Loading @@ -185,6 +185,27 @@ struct platform_device lpc32xx_ohci_device = { .resource = ohci_resources, }; /* * Network Support */ static struct resource net_resources[] = { [0] = DEFINE_RES_MEM(LPC32XX_ETHERNET_BASE, SZ_4K), [1] = DEFINE_RES_MEM(LPC32XX_IRAM_BASE, SZ_128K), [2] = DEFINE_RES_IRQ(IRQ_LPC32XX_ETHERNET), }; static u64 lpc32xx_mac_dma_mask = 0xffffffffUL; struct platform_device lpc32xx_net_device = { .name = "lpc-eth", .id = 0, .dev = { .dma_mask = &lpc32xx_mac_dma_mask, .coherent_dma_mask = 0xffffffffUL, }, .num_resources = ARRAY_SIZE(net_resources), .resource = net_resources, }; /* * Returns the unique ID for the device */ Loading
arch/arm/mach-lpc32xx/common.h +2 −2 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ #ifndef __LPC32XX_COMMON_H #define __LPC32XX_COMMON_H #include <mach/board.h> #include <linux/platform_device.h> /* Loading @@ -32,6 +33,7 @@ extern struct platform_device lpc32xx_tsc_device; extern struct platform_device lpc32xx_adc_device; extern struct platform_device lpc32xx_rtc_device; extern struct platform_device lpc32xx_ohci_device; extern struct platform_device lpc32xx_net_device; /* * Other arch specific structures and functions Loading Loading @@ -67,8 +69,6 @@ extern u32 clk_get_pclk_div(void); */ extern void lpc32xx_get_uid(u32 devid[4]); extern u32 lpc32xx_return_iram_size(void); /* * Pointers used for sizing and copying suspend function data */ Loading
arch/arm/mach-lpc32xx/include/mach/board.h 0 → 100644 +24 −0 Original line number Diff line number Diff line /* * arm/arch/mach-lpc32xx/include/mach/board.h * * Author: Kevin Wells <kevin.wells@nxp.com> * * Copyright (C) 2010 NXP Semiconductors * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ #ifndef __ASM_ARCH_BOARD_H #define __ASM_ARCH_BOARD_H extern u32 lpc32xx_return_iram_size(void); #endif /* __ASM_ARCH_BOARD_H */