Index: c/src/lib/libbsp/arm/lpc24xx/Makefile.am
===================================================================
--- c/src/lib/libbsp/arm/lpc24xx/Makefile.am	(revision 8ae373235b316ff10c3b6f30ac1f2efed9bec011)
+++ c/src/lib/libbsp/arm/lpc24xx/Makefile.am	(revision 6cdc090ff0574a87fbfb17a7095d64583fc9c669)
@@ -67,17 +67,18 @@
 
 project_lib_DATA += startup/linkcmds
-EXTRA_DIST = 
-EXTRA_DIST += startup/linkcmds.lpc17xx_ea_ram
-EXTRA_DIST += startup/linkcmds.lpc17xx_ea_rom_int
-EXTRA_DIST += startup/linkcmds.lpc17xx_plx800_ram
-EXTRA_DIST += startup/linkcmds.lpc17xx_plx800_rom_int
-EXTRA_DIST += startup/linkcmds.lpc2362
-EXTRA_DIST += startup/linkcmds.lpc23xx_tli800
-EXTRA_DIST += startup/linkcmds.lpc24xx_ea
-EXTRA_DIST += startup/linkcmds.lpc24xx_ncs_ram
-EXTRA_DIST += startup/linkcmds.lpc24xx_ncs_rom_ext
-EXTRA_DIST += startup/linkcmds.lpc24xx_ncs_rom_int
-EXTRA_DIST += startup/linkcmds.lpc24xx_plx800_ram
-EXTRA_DIST += startup/linkcmds.lpc24xx_plx800_rom_int
+project_lib_DATA += startup/linkcmds.lpc17xx_ea_ram
+project_lib_DATA += startup/linkcmds.lpc17xx_ea_rom_int
+project_lib_DATA += startup/linkcmds.lpc17xx_plx800_ram
+project_lib_DATA += startup/linkcmds.lpc17xx_plx800_rom_int
+project_lib_DATA += startup/linkcmds.lpc2362
+project_lib_DATA += startup/linkcmds.lpc23xx_tli800
+project_lib_DATA += startup/linkcmds.lpc24xx_ea
+project_lib_DATA += startup/linkcmds.lpc24xx_ncs_ram
+project_lib_DATA += startup/linkcmds.lpc24xx_ncs_rom_ext
+project_lib_DATA += startup/linkcmds.lpc24xx_ncs_rom_int
+project_lib_DATA += startup/linkcmds.lpc24xx_plx800_ram
+project_lib_DATA += startup/linkcmds.lpc24xx_plx800_rom_int
+project_lib_DATA += startup/linkcmds.lpc40xx_ea_ram
+project_lib_DATA += startup/linkcmds.lpc40xx_ea_rom_int
 
 ###############################################################################
Index: c/src/lib/libbsp/arm/lpc24xx/configure.ac
===================================================================
--- c/src/lib/libbsp/arm/lpc24xx/configure.ac	(revision 8ae373235b316ff10c3b6f30ac1f2efed9bec011)
+++ c/src/lib/libbsp/arm/lpc24xx/configure.ac	(revision 6cdc090ff0574a87fbfb17a7095d64583fc9c669)
@@ -29,5 +29,5 @@
 RTEMS_BSPOPTS_HELP([LPC24XX_OSCILLATOR_RTC],[RTC oscillator frequency in Hz])
 
-RTEMS_BSPOPTS_SET([LPC24XX_CCLK],[lpc17xx_ea*],[96000000U])
+RTEMS_BSPOPTS_SET([LPC24XX_CCLK],[lpc17xx_ea* | lpc40xx_ea*],[96000000U])
 RTEMS_BSPOPTS_SET([LPC24XX_CCLK],[lpc23*],[58982400U])
 RTEMS_BSPOPTS_SET([LPC24XX_CCLK],[lpc24xx_plx800_*],[51612800U])
@@ -35,9 +35,9 @@
 RTEMS_BSPOPTS_HELP([LPC24XX_CCLK],[CPU clock in Hz])
 
-RTEMS_BSPOPTS_SET([LPC24XX_PCLKDIV],[lpc17xx_ea*],[2U])
+RTEMS_BSPOPTS_SET([LPC24XX_PCLKDIV],[lpc17xx_ea* | lpc40xx_ea*],[2U])
 RTEMS_BSPOPTS_SET([LPC24XX_PCLKDIV],[*],[1U])
 RTEMS_BSPOPTS_HELP([LPC24XX_PCLKDIV],[clock divider for default PCLK (PCLK = CCLK / PCLKDIV)])
 
-RTEMS_BSPOPTS_SET([LPC24XX_EMCCLKDIV],[lpc17xx_ea*],[2U])
+RTEMS_BSPOPTS_SET([LPC24XX_EMCCLKDIV],[lpc17xx_ea* | lpc40xx_ea*],[2U])
 RTEMS_BSPOPTS_SET([LPC24XX_EMCCLKDIV],[*],[1U])
 RTEMS_BSPOPTS_HELP([LPC24XX_EMCCLKDIV],[clock divider for EMCCLK (EMCCLK = CCLK / EMCCLKDIV)])
@@ -61,5 +61,5 @@
 RTEMS_BSPOPTS_HELP([LPC24XX_EMC_IS42S32800D7],[enable ISSI IS42S32800D7 configuration for EMC])
 
-RTEMS_BSPOPTS_SET([LPC24XX_EMC_IS42S32800B],[lpc17xx_ea_rom_*],[1])
+RTEMS_BSPOPTS_SET([LPC24XX_EMC_IS42S32800B],[lpc17xx_ea_rom_* | lpc40xx_ea_rom_*],[1])
 RTEMS_BSPOPTS_HELP([LPC24XX_EMC_IS42S32800B],[enable ISSI IS42S32800B configuration for EMC])
 
@@ -113,5 +113,5 @@
 RTEMS_BSPOPTS_HELP([LPC24XX_STOP_USB],[stop USB controller at start-up to avoid DMA interference])
 
-RTEMS_BSPOPTS_SET([LPC_DMA_CHANNEL_COUNT],[lpc17*],[8])
+RTEMS_BSPOPTS_SET([LPC_DMA_CHANNEL_COUNT],[lpc17* | lpc40*],[8])
 RTEMS_BSPOPTS_SET([LPC_DMA_CHANNEL_COUNT],[*],[2])
 RTEMS_BSPOPTS_HELP([LPC_DMA_CHANNEL_COUNT],[DMA channel count])
@@ -120,5 +120,5 @@
 RTEMS_BSPOPTS_HELP([BSP_START_RESET_VECTOR],[reset vector address for BSP start])
 
-RTEMS_BSPOPTS_SET([BSP_USB_OTG_TRANSCEIVER_I2C_ADDR],[lpc17xx_ea*],[(0x2f << 1)])
+RTEMS_BSPOPTS_SET([BSP_USB_OTG_TRANSCEIVER_I2C_ADDR],[lpc17xx_ea* | lpc40xx_ea*],[(0x2f << 1)])
 RTEMS_BSPOPTS_HELP([BSP_USB_OTG_TRANSCEIVER_I2C_ADDR],[USB OTG transceiver I2C address used by USB stack])
 
Index: c/src/lib/libbsp/arm/lpc24xx/make/custom/lpc40xx.inc
===================================================================
--- c/src/lib/libbsp/arm/lpc24xx/make/custom/lpc40xx.inc	(revision 6cdc090ff0574a87fbfb17a7095d64583fc9c669)
+++ c/src/lib/libbsp/arm/lpc24xx/make/custom/lpc40xx.inc	(revision 6cdc090ff0574a87fbfb17a7095d64583fc9c669)
@@ -0,0 +1,11 @@
+#
+# Config file for LPC40XX.
+#
+
+include $(RTEMS_ROOT)/make/custom/default.cfg
+
+RTEMS_CPU = arm
+
+CPU_CFLAGS = -mthumb -march=armv7-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mtune=cortex-m4
+
+CFLAGS_OPTIMIZE_V = -O2 -g
Index: c/src/lib/libbsp/arm/lpc24xx/make/custom/lpc40xx_ea_ram.cfg
===================================================================
--- c/src/lib/libbsp/arm/lpc24xx/make/custom/lpc40xx_ea_ram.cfg	(revision 6cdc090ff0574a87fbfb17a7095d64583fc9c669)
+++ c/src/lib/libbsp/arm/lpc24xx/make/custom/lpc40xx_ea_ram.cfg	(revision 6cdc090ff0574a87fbfb17a7095d64583fc9c669)
@@ -0,0 +1,5 @@
+#
+# Config file for LPC40XX OEM Board from Embedded Artists.
+#
+
+include $(RTEMS_ROOT)/make/custom/lpc40xx.inc
Index: c/src/lib/libbsp/arm/lpc24xx/make/custom/lpc40xx_ea_rom_int.cfg
===================================================================
--- c/src/lib/libbsp/arm/lpc24xx/make/custom/lpc40xx_ea_rom_int.cfg	(revision 6cdc090ff0574a87fbfb17a7095d64583fc9c669)
+++ c/src/lib/libbsp/arm/lpc24xx/make/custom/lpc40xx_ea_rom_int.cfg	(revision 6cdc090ff0574a87fbfb17a7095d64583fc9c669)
@@ -0,0 +1,5 @@
+#
+# Config file for LPC40XX OEM Board from Embedded Artists.
+#
+
+include $(RTEMS_ROOT)/make/custom/lpc40xx.inc
Index: c/src/lib/libbsp/arm/lpc24xx/preinstall.am
===================================================================
--- c/src/lib/libbsp/arm/lpc24xx/preinstall.am	(revision 8ae373235b316ff10c3b6f30ac1f2efed9bec011)
+++ c/src/lib/libbsp/arm/lpc24xx/preinstall.am	(revision 6cdc090ff0574a87fbfb17a7095d64583fc9c669)
@@ -174,2 +174,58 @@
 TMPINSTALL_FILES += $(PROJECT_LIB)/linkcmds
 
+$(PROJECT_LIB)/linkcmds.lpc17xx_ea_ram: startup/linkcmds.lpc17xx_ea_ram $(PROJECT_LIB)/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds.lpc17xx_ea_ram
+TMPINSTALL_FILES += $(PROJECT_LIB)/linkcmds.lpc17xx_ea_ram
+
+$(PROJECT_LIB)/linkcmds.lpc17xx_ea_rom_int: startup/linkcmds.lpc17xx_ea_rom_int $(PROJECT_LIB)/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds.lpc17xx_ea_rom_int
+TMPINSTALL_FILES += $(PROJECT_LIB)/linkcmds.lpc17xx_ea_rom_int
+
+$(PROJECT_LIB)/linkcmds.lpc17xx_plx800_ram: startup/linkcmds.lpc17xx_plx800_ram $(PROJECT_LIB)/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds.lpc17xx_plx800_ram
+TMPINSTALL_FILES += $(PROJECT_LIB)/linkcmds.lpc17xx_plx800_ram
+
+$(PROJECT_LIB)/linkcmds.lpc17xx_plx800_rom_int: startup/linkcmds.lpc17xx_plx800_rom_int $(PROJECT_LIB)/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds.lpc17xx_plx800_rom_int
+TMPINSTALL_FILES += $(PROJECT_LIB)/linkcmds.lpc17xx_plx800_rom_int
+
+$(PROJECT_LIB)/linkcmds.lpc2362: startup/linkcmds.lpc2362 $(PROJECT_LIB)/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds.lpc2362
+TMPINSTALL_FILES += $(PROJECT_LIB)/linkcmds.lpc2362
+
+$(PROJECT_LIB)/linkcmds.lpc23xx_tli800: startup/linkcmds.lpc23xx_tli800 $(PROJECT_LIB)/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds.lpc23xx_tli800
+TMPINSTALL_FILES += $(PROJECT_LIB)/linkcmds.lpc23xx_tli800
+
+$(PROJECT_LIB)/linkcmds.lpc24xx_ea: startup/linkcmds.lpc24xx_ea $(PROJECT_LIB)/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds.lpc24xx_ea
+TMPINSTALL_FILES += $(PROJECT_LIB)/linkcmds.lpc24xx_ea
+
+$(PROJECT_LIB)/linkcmds.lpc24xx_ncs_ram: startup/linkcmds.lpc24xx_ncs_ram $(PROJECT_LIB)/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds.lpc24xx_ncs_ram
+TMPINSTALL_FILES += $(PROJECT_LIB)/linkcmds.lpc24xx_ncs_ram
+
+$(PROJECT_LIB)/linkcmds.lpc24xx_ncs_rom_ext: startup/linkcmds.lpc24xx_ncs_rom_ext $(PROJECT_LIB)/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds.lpc24xx_ncs_rom_ext
+TMPINSTALL_FILES += $(PROJECT_LIB)/linkcmds.lpc24xx_ncs_rom_ext
+
+$(PROJECT_LIB)/linkcmds.lpc24xx_ncs_rom_int: startup/linkcmds.lpc24xx_ncs_rom_int $(PROJECT_LIB)/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds.lpc24xx_ncs_rom_int
+TMPINSTALL_FILES += $(PROJECT_LIB)/linkcmds.lpc24xx_ncs_rom_int
+
+$(PROJECT_LIB)/linkcmds.lpc24xx_plx800_ram: startup/linkcmds.lpc24xx_plx800_ram $(PROJECT_LIB)/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds.lpc24xx_plx800_ram
+TMPINSTALL_FILES += $(PROJECT_LIB)/linkcmds.lpc24xx_plx800_ram
+
+$(PROJECT_LIB)/linkcmds.lpc24xx_plx800_rom_int: startup/linkcmds.lpc24xx_plx800_rom_int $(PROJECT_LIB)/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds.lpc24xx_plx800_rom_int
+TMPINSTALL_FILES += $(PROJECT_LIB)/linkcmds.lpc24xx_plx800_rom_int
+
+$(PROJECT_LIB)/linkcmds.lpc40xx_ea_ram: startup/linkcmds.lpc40xx_ea_ram $(PROJECT_LIB)/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds.lpc40xx_ea_ram
+TMPINSTALL_FILES += $(PROJECT_LIB)/linkcmds.lpc40xx_ea_ram
+
+$(PROJECT_LIB)/linkcmds.lpc40xx_ea_rom_int: startup/linkcmds.lpc40xx_ea_rom_int $(PROJECT_LIB)/$(dirstamp)
+	$(INSTALL_DATA) $< $(PROJECT_LIB)/linkcmds.lpc40xx_ea_rom_int
+TMPINSTALL_FILES += $(PROJECT_LIB)/linkcmds.lpc40xx_ea_rom_int
+
Index: c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc40xx_ea_ram
===================================================================
--- c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc40xx_ea_ram	(revision 6cdc090ff0574a87fbfb17a7095d64583fc9c669)
+++ c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc40xx_ea_ram	(revision 6cdc090ff0574a87fbfb17a7095d64583fc9c669)
@@ -0,0 +1,1 @@
+INCLUDE linkcmds.lpc17xx_ea_ram
Index: c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc40xx_ea_rom_int
===================================================================
--- c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc40xx_ea_rom_int	(revision 6cdc090ff0574a87fbfb17a7095d64583fc9c669)
+++ c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc40xx_ea_rom_int	(revision 6cdc090ff0574a87fbfb17a7095d64583fc9c669)
@@ -0,0 +1,1 @@
+INCLUDE linkcmds.lpc17xx_ea_rom_int
