diff options
Diffstat (limited to 'arch')
35 files changed, 851 insertions, 117 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 687acca71d..38116becf5 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -10,7 +10,7 @@ config ARM config ARM_LINUX bool default y - depends on CMD_BOOTZ || CMD_BOOTU || CMD_BOOTM + depends on CMD_BOOTZ || CMD_BOOTU || BOOTM config HAVE_MACH_ARM_HEAD bool diff --git a/arch/arm/Makefile b/arch/arm/Makefile index 590a0d8f7b..7787cfed7d 100644 --- a/arch/arm/Makefile +++ b/arch/arm/Makefile @@ -142,8 +142,7 @@ KBUILD_IMAGE := barebox.s5p endif quiet_cmd_mlo ?= IFT $@ - cmd_mlo ?= scripts/omap_signGP $< $(TEXT_BASE) 1; \ - test -e $<.ift && mv $<.ift MLO + cmd_mlo ?= scripts/omap_signGP -o MLO -l $(TEXT_BASE) -c $< MLO: $(KBUILD_BINARY) $(call if_changed,mlo) diff --git a/arch/arm/boards/animeo_ip/init.c b/arch/arm/boards/animeo_ip/init.c index d46f64508d..2fee1ff616 100644 --- a/arch/arm/boards/animeo_ip/init.c +++ b/arch/arm/boards/animeo_ip/init.c @@ -19,6 +19,7 @@ #include <nand.h> #include <sizes.h> #include <linux/mtd/nand.h> +#include <linux/clk.h> #include <mach/board.h> #include <mach/at91sam9_smc.h> #include <gpio.h> @@ -26,6 +27,7 @@ #include <mach/io.h> #include <mach/at91_pmc.h> #include <mach/at91_rstc.h> +#include <local_mac_address.h> static bool animeo_ip_is_buco; static bool animeo_ip_is_io; @@ -136,6 +138,7 @@ static struct atmel_mci_platform_data __initdata animeo_ip_mci_data = { .slot_b = 1, .detect_pin = -EINVAL, .wp_pin = -EINVAL, + .devname = "microsd", }; static void animeo_ip_add_device_mci(void) @@ -146,6 +149,21 @@ static void animeo_ip_add_device_mci(void) static void animeo_ip_add_device_mci(void) {} #endif +/* + * USB Host port + */ +static struct at91_usbh_data __initdata animeo_ip_usbh_data = { + .ports = 2, + .vbus_pin = {AT91_PIN_PB15, -EINVAL}, + .vbus_pin_active_low = {0, 0}, + +}; + +static void animeo_ip_add_device_usb(void) +{ + at91_add_device_usbh_ohci(&animeo_ip_usbh_data); +} + struct gpio_bicolor_led leds[] = { { .gpio_c0 = AT91_PIN_PC17, @@ -210,12 +228,80 @@ static void animeo_ip_power_control(void) animeo_export_gpio_out(AT91_PIN_PC4, "power_save"); } +static void animeo_ip_phy_reset(void) +{ + unsigned long rstc; + int i; + struct clk *clk = clk_get(NULL, "macb_clk"); + + clk_enable(clk); + + for (i = AT91_PIN_PA12; i <= AT91_PIN_PA29; i++) + at91_set_gpio_input(i, 0); + + rstc = at91_sys_read(AT91_RSTC_MR) & AT91_RSTC_ERSTL; + + /* Need to reset PHY -> 500ms reset */ + at91_sys_write(AT91_RSTC_MR, AT91_RSTC_KEY | + (AT91_RSTC_ERSTL & (0x0d << 8)) | + AT91_RSTC_URSTEN); + + at91_sys_write(AT91_RSTC_CR, AT91_RSTC_KEY | AT91_RSTC_EXTRST); + + /* Wait for end hardware reset */ + while (!(at91_sys_read(AT91_RSTC_SR) & AT91_RSTC_NRSTL)) + ; + + /* Restore NRST value */ + at91_sys_write(AT91_RSTC_MR, AT91_RSTC_KEY | (rstc) | AT91_RSTC_URSTEN); +} + +#define MACB_SA1B 0x0098 +#define MACB_SA1T 0x009c + +static int animeo_ip_get_macb_ethaddr(u8 *addr) +{ + u32 top, bottom; + void __iomem *base = IOMEM(AT91SAM9260_BASE_EMAC); + + bottom = readl(base + MACB_SA1B); + top = readl(base + MACB_SA1T); + addr[0] = bottom & 0xff; + addr[1] = (bottom >> 8) & 0xff; + addr[2] = (bottom >> 16) & 0xff; + addr[3] = (bottom >> 24) & 0xff; + addr[4] = top & 0xff; + addr[5] = (top >> 8) & 0xff; + + /* valid and not private */ + if (is_valid_ether_addr(addr) && !(addr[0] & 0x02)) + return 0; + + return -EINVAL; +} + +static void animeo_ip_add_device_eth(void) +{ + u8 enetaddr[6]; + + if (!animeo_ip_get_macb_ethaddr(enetaddr)) + eth_register_ethaddr(0, enetaddr); + else + local_mac_address_register(0, "smf"); + + /* for usb asix */ + local_mac_address_register(1, "smf"); + + animeo_ip_phy_reset(); + at91_add_device_eth(0, &macb_pdata); +} + static int animeo_ip_devices_init(void) { animeo_ip_detect_version(); animeo_ip_power_control(); animeo_ip_add_device_nand(); - at91_add_device_eth(0, &macb_pdata); + animeo_ip_add_device_usb(); animeo_ip_add_device_mci(); animeo_ip_add_device_buttons(); animeo_ip_add_device_led(); @@ -234,6 +320,8 @@ static int animeo_ip_devices_init(void) devfs_add_partition("nand0", SZ_256K + SZ_32K, SZ_32K, DEVFS_PARTITION_FIXED, "env_raw"); dev_add_bb_dev("env_raw", "env0"); + animeo_ip_add_device_eth(); + return 0; } diff --git a/arch/arm/boards/beaglebone/lowlevel.c b/arch/arm/boards/beaglebone/lowlevel.c index 2ff7c7169c..e993c8928a 100644 --- a/arch/arm/boards/beaglebone/lowlevel.c +++ b/arch/arm/boards/beaglebone/lowlevel.c @@ -36,13 +36,13 @@ static const struct am33xx_cmd_control ddr2_cmd_ctrl = { }; static const struct am33xx_emif_regs ddr2_regs = { - .emif_read_latency = 0x5, - .emif_tim1 = 0x0666B3D6, - .emif_tim2 = 0x143731DA, - .emif_tim3 = 0x00000347, - .sdram_config = 0x43805332, - .sdram_config2 = 0x43805332, - .sdram_ref_ctrl = 0x0000081a, + .emif_read_latency = 0x100005, + .emif_tim1 = 0x0666B3C9, + .emif_tim2 = 0x243631CA, + .emif_tim3 = 0x0000033F, + .sdram_config = 0x41805332, + .sdram_config2 = 0x41805332, + .sdram_ref_ctrl = 0x0000081A, }; static const struct am33xx_ddr_data ddr2_data = { diff --git a/arch/arm/boards/edb93xx/edb93xx.c b/arch/arm/boards/edb93xx/edb93xx.c index 27ba90abfd..1388590267 100644 --- a/arch/arm/boards/edb93xx/edb93xx.c +++ b/arch/arm/boards/edb93xx/edb93xx.c @@ -24,6 +24,7 @@ #include <partition.h> #include <asm/armlinux.h> #include <io.h> +#include <malloc.h> #include <generated/mach-types.h> #include <mach/ep93xx-regs.h> #include "edb93xx.h" diff --git a/arch/arm/boards/freescale-mx23-evk/mx23-evk.c b/arch/arm/boards/freescale-mx23-evk/mx23-evk.c index 1714fddb6d..9ba32d3a1f 100644 --- a/arch/arm/boards/freescale-mx23-evk/mx23-evk.c +++ b/arch/arm/boards/freescale-mx23-evk/mx23-evk.c @@ -19,6 +19,7 @@ #include <gpio.h> #include <environment.h> #include <mci.h> +#include <linux/err.h> #include <asm/armlinux.h> #include <generated/mach-types.h> #include <mach/imx-regs.h> @@ -95,8 +96,11 @@ static int register_persistant_environment(void) } /* use the full partition as our persistent environment storage */ - return devfs_add_partition("disk0.1", 0, cdev->size, + cdev = devfs_add_partition("disk0.1", 0, cdev->size, DEVFS_PARTITION_FIXED, "env0"); + if (IS_ERR(cdev)) + return PTR_ERR(cdev); + return 0; } static int mx23_evk_devices_init(void) diff --git a/arch/arm/boards/freescale-mx28-evk/mx28-evk.c b/arch/arm/boards/freescale-mx28-evk/mx28-evk.c index 92f0a75655..fa631df95a 100644 --- a/arch/arm/boards/freescale-mx28-evk/mx28-evk.c +++ b/arch/arm/boards/freescale-mx28-evk/mx28-evk.c @@ -32,6 +32,8 @@ #include <mach/iomux.h> #include <mach/ocotp.h> #include <mach/devices.h> +#include <mach/usb.h> +#include <usb/fsl_usb2.h> #include <spi/spi.h> #include <asm/armlinux.h> @@ -135,6 +137,11 @@ static const uint32_t mx28evk_pads[] = { SSP2_D3 | VE_3_3V | PULLUP(1) | STRENGTH(S8MA), /* SS0 !CS */ SSP2_CMD | VE_3_3V | PULLUP(1) | STRENGTH(S8MA), /* MOSI DIO */ SSP2_SCK | VE_3_3V | PULLUP(1) | STRENGTH(S8MA), /* CLK */ + + /* USB VBUS1 ENABLE - default to ON */ + AUART2_RX_GPIO | VE_3_3V | PULLUP(0) | GPIO_OUT | GPIO_VALUE(1), + /* USB VBUS0 ENABLE - default to OFF */ + AUART2_TX_GPIO | VE_3_3V | PULLUP(0) | GPIO_OUT | GPIO_VALUE(0), }; static struct mxs_mci_platform_data mci_pdata = { @@ -247,6 +254,12 @@ static const struct spi_board_info mx28evk_spi_board_info[] = { } }; +#ifdef CONFIG_USB_GADGET_DRIVER_ARC +static struct fsl_usb2_platform_data usb_pdata = { + .operating_mode = FSL_USB2_DR_DEVICE, + .phy_mode = FSL_USB2_PHY_UTMI, +}; +#endif static int mx28_evk_devices_init(void) { int i; @@ -280,6 +293,14 @@ static int mx28_evk_devices_init(void) add_generic_device("mxs_spi", 2, NULL, IMX_SSP2_BASE, 0x2000, IORESOURCE_MEM, NULL); +#ifdef CONFIG_USB_GADGET_DRIVER_ARC + imx28_usb_phy0_enable(); + imx28_usb_phy1_enable(); + add_generic_usb_ehci_device(DEVICE_ID_DYNAMIC, IMX_USB1_BASE, NULL); + add_generic_device("fsl-udc", DEVICE_ID_DYNAMIC, NULL, IMX_USB0_BASE, + 0x200, IORESOURCE_MEM, &usb_pdata); +#endif + return 0; } device_initcall(mx28_evk_devices_init); diff --git a/arch/arm/boards/friendlyarm-tiny210/lowlevel.c b/arch/arm/boards/friendlyarm-tiny210/lowlevel.c index 96760945bc..d980957739 100644 --- a/arch/arm/boards/friendlyarm-tiny210/lowlevel.c +++ b/arch/arm/boards/friendlyarm-tiny210/lowlevel.c @@ -84,8 +84,6 @@ static __bare_init bool load_stage2(void *dest, size_t size) void __bare_init barebox_arm_reset_vector(void) { - uint32_t r; - arm_cpu_lowlevel_init(); #ifdef CONFIG_S3C_PLL_INIT diff --git a/arch/arm/boards/karo-tx28/tx28-stk5.c b/arch/arm/boards/karo-tx28/tx28-stk5.c index 2984d101eb..57cb0c3907 100644 --- a/arch/arm/boards/karo-tx28/tx28-stk5.c +++ b/arch/arm/boards/karo-tx28/tx28-stk5.c @@ -23,6 +23,7 @@ #include <io.h> #include <net.h> #include <asm/sections.h> +#include <linux/err.h> #include <mach/imx-regs.h> #include <mach/clock.h> #include <mach/mci.h> @@ -344,8 +345,11 @@ static int register_persistent_environment(void) } /* use the full partition as our persistent environment storage */ - return devfs_add_partition("disk0.1", 0, cdev->size, + cdev = devfs_add_partition("disk0.1", 0, cdev->size, DEVFS_PARTITION_FIXED, "env0"); + if (IS_ERR(cdev)) + return PTR_ERR(cdev); + return 0; } void tx28_get_ethaddr(void) diff --git a/arch/arm/boards/phytec-pfla02/lowlevel.c b/arch/arm/boards/phytec-pfla02/lowlevel.c index df92dba9bc..6596e924f8 100644 --- a/arch/arm/boards/phytec-pfla02/lowlevel.c +++ b/arch/arm/boards/phytec-pfla02/lowlevel.c @@ -50,7 +50,7 @@ static inline void setup_uart(void) writel(0x0000c34f, uartbase + 0xa8); writel(0x00000001, uartbase + 0x80); - PUTC_LL('>'); + putc_ll('>'); } extern char __dtb_imx6q_phytec_pbab01_start[]; diff --git a/arch/arm/boards/versatile/versatilepb.c b/arch/arm/boards/versatile/versatilepb.c index ebf36954e4..3df59bac10 100644 --- a/arch/arm/boards/versatile/versatilepb.c +++ b/arch/arm/boards/versatile/versatilepb.c @@ -28,6 +28,7 @@ #include <environment.h> #include <partition.h> #include <sizes.h> +#include <net/smc91111.h> static int vpb_console_init(void) { @@ -47,6 +48,10 @@ static int vpb_mem_init(void) } mem_initcall(vpb_mem_init); +static struct smc91c111_pdata net_pdata = { + .qemu_fixup = 1, +}; + static int vpb_devices_init(void) { add_cfi_flash_device(DEVICE_ID_DYNAMIC, VERSATILE_FLASH_BASE, VERSATILE_FLASH_SIZE, 0); @@ -55,7 +60,7 @@ static int vpb_devices_init(void) devfs_add_partition("nor0", 0x40000, 0x20000, DEVFS_PARTITION_FIXED, "env0"); add_generic_device("smc91c111", DEVICE_ID_DYNAMIC, NULL, VERSATILE_ETH_BASE, - 64 * 1024, IORESOURCE_MEM, NULL); + 64 * 1024, IORESOURCE_MEM, &net_pdata); armlinux_set_architecture(MACH_TYPE_VERSATILE_PB); armlinux_set_bootparams((void *)(0x00000100)); diff --git a/arch/arm/boards/vexpress/init.c b/arch/arm/boards/vexpress/init.c index 48bc11efec..72a3b08224 100644 --- a/arch/arm/boards/vexpress/init.c +++ b/arch/arm/boards/vexpress/init.c @@ -118,7 +118,7 @@ console_initcall(vexpress_console_init); static int vexpress_core_init(void) { - char *hostname; + char *hostname = "vexpress-unknown"; if (amba_is_arm_sp804(IOMEM(0x10011000))) { v2m_init = &vexpress_init_a9_legacy; diff --git a/arch/arm/configs/animeo_ip_defconfig b/arch/arm/configs/animeo_ip_defconfig index b2d73408ef..e076162b45 100644 --- a/arch/arm/configs/animeo_ip_defconfig +++ b/arch/arm/configs/animeo_ip_defconfig @@ -55,6 +55,8 @@ CONFIG_NET_NFS=y CONFIG_NET_PING=y CONFIG_MICREL_PHY=y CONFIG_DRIVER_NET_MACB=y +CONFIG_NET_USB=y +CONFIG_NET_USB_ASIX=y # CONFIG_SPI is not set CONFIG_MTD=y # CONFIG_MTD_OOB_DEVICE is not set @@ -64,6 +66,9 @@ CONFIG_NAND=y # CONFIG_NAND_ECC_HW_NONE is not set CONFIG_NAND_ATMEL=y CONFIG_UBI=y +CONFIG_USB=y +CONFIG_USB_OHCI=y +CONFIG_USB_OHCI_AT91=y CONFIG_MCI=y CONFIG_MCI_STARTUP=y CONFIG_MCI_ATMEL=y diff --git a/arch/arm/configs/imx28evk_defconfig b/arch/arm/configs/imx28evk_defconfig index 3b69d4d9a4..d06bac8236 100644 --- a/arch/arm/configs/imx28evk_defconfig +++ b/arch/arm/configs/imx28evk_defconfig @@ -26,8 +26,6 @@ CONFIG_CMD_ECHO_E=y CONFIG_CMD_BOOTM_SHOW_TYPE=y CONFIG_CMD_RESET=y CONFIG_CMD_GO=y -CONFIG_CMD_MTEST=y -CONFIG_CMD_MTEST_ALTERNATIVE=y CONFIG_CMD_SPLASH=y CONFIG_CMD_TIMEOUT=y CONFIG_CMD_PARTITION=y @@ -36,8 +34,9 @@ CONFIG_NET=y CONFIG_NET_DHCP=y CONFIG_NET_PING=y CONFIG_NET_RESOLV=y +CONFIG_DRIVER_SERIAL_AUART=y CONFIG_DRIVER_NET_FEC_IMX=y -# CONFIG_SPI is not set +CONFIG_DRIVER_SPI_MXS=y CONFIG_MTD=y CONFIG_NAND=y CONFIG_NAND_MXS=y diff --git a/arch/arm/cpu/mmu.c b/arch/arm/cpu/mmu.c index e3ea3b6b9e..fae83f38b5 100644 --- a/arch/arm/cpu/mmu.c +++ b/arch/arm/cpu/mmu.c @@ -285,7 +285,7 @@ static int mmu_init(void) ttb = (unsigned long *)((unsigned long)ttb & ~0x3fff); if (!request_sdram_region("ttb", (unsigned long)ttb, SZ_16K)) - pr_err("Error: Can't request SDRAM region for ttb\n"); + pr_err("Error: Can't request SDRAM region for ttb at %p\n", ttb); } else { ttb = memalign(0x10000, 0x4000); } diff --git a/arch/arm/dts/imx6q.dtsi b/arch/arm/dts/imx6q.dtsi index 5e6c7f35fe..beb8946fe2 100644 --- a/arch/arm/dts/imx6q.dtsi +++ b/arch/arm/dts/imx6q.dtsi @@ -18,6 +18,7 @@ cpu@0 { compatible = "arm,cortex-a9"; + device_type = "cpu"; reg = <0>; next-level-cache = <&L2>; operating-points = < @@ -39,18 +40,21 @@ cpu@1 { compatible = "arm,cortex-a9"; + device_type = "cpu"; reg = <1>; next-level-cache = <&L2>; }; cpu@2 { compatible = "arm,cortex-a9"; + device_type = "cpu"; reg = <2>; next-level-cache = <&L2>; }; cpu@3 { compatible = "arm,cortex-a9"; + device_type = "cpu"; reg = <3>; next-level-cache = <&L2>; }; diff --git a/arch/arm/lib/Makefile b/arch/arm/lib/Makefile index 3ea695c2f3..a32879537c 100644 --- a/arch/arm/lib/Makefile +++ b/arch/arm/lib/Makefile @@ -1,5 +1,5 @@ obj-$(CONFIG_ARM_LINUX) += armlinux.o -obj-$(CONFIG_CMD_BOOTM) += bootm.o +obj-$(CONFIG_BOOTM) += bootm.o obj-$(CONFIG_CMD_BOOTZ) += bootz.o obj-$(CONFIG_CMD_BOOTU) += bootu.o obj-y += div0.o diff --git a/arch/arm/lib/armlinux.c b/arch/arm/lib/armlinux.c index 40a63ea7e1..75d751bb4d 100644 --- a/arch/arm/lib/armlinux.c +++ b/arch/arm/lib/armlinux.c @@ -42,11 +42,9 @@ static struct tag *params; static void *armlinux_bootparams = NULL; -#ifndef CONFIG_ENVIRONMENT_VARIABLES static int armlinux_architecture; static u32 armlinux_system_rev; static u64 armlinux_system_serial; -#endif BAREBOX_MAGICVAR(armlinux_architecture, "ARM machine ID"); BAREBOX_MAGICVAR(armlinux_system_rev, "ARM system revision"); @@ -54,56 +52,41 @@ BAREBOX_MAGICVAR(armlinux_system_serial, "ARM system serial"); void armlinux_set_architecture(int architecture) { -#ifdef CONFIG_ENVIRONMENT_VARIABLES export_env_ull("armlinux_architecture", architecture); -#else armlinux_architecture = architecture; -#endif } int armlinux_get_architecture(void) { -#ifdef CONFIG_ENVIRONMENT_VARIABLES - return getenv_ull("armlinux_architecture"); -#else + getenv_uint("armlinux_architecture", &armlinux_architecture); + return armlinux_architecture; -#endif } void armlinux_set_revision(unsigned int rev) { -#ifdef CONFIG_ENVIRONMENT_VARIABLES export_env_ull("armlinux_system_rev", rev); -#else armlinux_system_rev = rev; -#endif } unsigned int armlinux_get_revision(void) { -#ifdef CONFIG_ENVIRONMENT_VARIABLES - return getenv_ull("armlinux_system_rev"); -#else + getenv_uint("armlinux_system_rev", &armlinux_system_rev); + return armlinux_system_rev; -#endif } void armlinux_set_serial(u64 serial) { -#ifdef CONFIG_ENVIRONMENT_VARIABLES export_env_ull("armlinux_system_serial", serial); -#else armlinux_system_serial = serial; -#endif } u64 armlinux_get_serial(void) { -#ifdef CONFIG_ENVIRONMENT_VARIABLES - return getenv_ull("armlinux_system_serial"); -#else + getenv_ull("armlinux_system_serial", &armlinux_system_serial); + return armlinux_system_serial; -#endif } #ifdef CONFIG_ARM_BOARD_APPEND_ATAG diff --git a/arch/arm/mach-at91/include/mach/board.h b/arch/arm/mach-at91/include/mach/board.h index d695020b74..aa0fdae141 100644 --- a/arch/arm/mach-at91/include/mach/board.h +++ b/arch/arm/mach-at91/include/mach/board.h @@ -150,6 +150,7 @@ struct atmel_mci_platform_data { unsigned bus_width; int detect_pin; int wp_pin; + char *devname; }; void at91_add_device_mci(short mmc_id, struct atmel_mci_platform_data *data); diff --git a/arch/arm/mach-mxs/include/mach/imx28-regs.h b/arch/arm/mach-mxs/include/mach/imx28-regs.h index fa8edd7d4b..088282963d 100644 --- a/arch/arm/mach-mxs/include/mach/imx28-regs.h +++ b/arch/arm/mach-mxs/include/mach/imx28-regs.h @@ -41,7 +41,8 @@ #define IMX_DBGUART_BASE 0x80074000 #define IMX_USBPHY0_BASE 0x8007c000 #define IMX_USBPHY1_BASE 0x8007e000 -#define IMX_USB_BASE 0x80080000 +#define IMX_USB0_BASE 0x80080000 +#define IMX_USB1_BASE 0x80090000 #define IMX_FEC0_BASE 0x800F0000 #define IMX_FEC1_BASE 0x800F4000 diff --git a/arch/arm/mach-omap/am33xx_generic.c b/arch/arm/mach-omap/am33xx_generic.c index 3690ce1438..3e2b6c4e15 100644 --- a/arch/arm/mach-omap/am33xx_generic.c +++ b/arch/arm/mach-omap/am33xx_generic.c @@ -43,30 +43,21 @@ void __noreturn reset_cpu(unsigned long addr) * The significance of the CPU revision depends upon the cpu type. * Latest known revision is considered default. * + * This function is called before barebox_arm_entry(), so avoid switch + * statements. + * * @return silicon version */ u32 am33xx_get_cpu_rev(void) { - u32 version, retval; - - version = (readl(AM33XX_IDCODE_REG) >> 28) & 0xF; - - switch (version) { - case 0: - retval = AM335X_ES1_0; - break; - case 1: - retval = AM335X_ES2_0; - break; - case 2: - /* - * Fall through the default case. - */ - default: - retval = AM335X_ES2_1; - } - - return retval; + u32 version = (readl(AM33XX_IDCODE_REG) >> 28) & 0xF; + + if (version == 0) + return AM335X_ES1_0; + else if (version == 1) + return AM335X_ES2_0; + else + return AM335X_ES2_1; } /** @@ -311,7 +302,7 @@ void am33xx_config_sdram(const struct am33xx_emif_regs *regs) writel(regs->sdram_ref_ctrl, AM33XX_EMIF4_0_REG(SDRAM_REF_CTRL)); writel(regs->sdram_ref_ctrl, AM33XX_EMIF4_0_REG(SDRAM_REF_CTRL_SHADOW)); - writel(regs->sdram_config, CM_EMIF_SDRAM_CONFIG); + writel(regs->sdram_config, AM33XX_EMIF4_0_REG(SDRAM_CONFIG)); } void am33xx_config_io_ctrl(int ioctrl) diff --git a/arch/arm/mach-omap/include/mach/generic.h b/arch/arm/mach-omap/include/mach/generic.h index ece8c2baea..b05fdeee91 100644 --- a/arch/arm/mach-omap/include/mach/generic.h +++ b/arch/arm/mach-omap/include/mach/generic.h @@ -2,12 +2,13 @@ #define _MACH_GENERIC_H /* I2C controller revisions */ -#define OMAP_I2C_REV_2 0x20 +#define OMAP_I2C_OMAP1_REV_2 0x20 /* I2C controller revisions present on specific hardware */ -#define OMAP_I2C_REV_ON_2430 0x36 -#define OMAP_I2C_REV_ON_3430 0x3C -#define OMAP_I2C_REV_ON_4430 0x40 +#define OMAP_I2C_REV_ON_2430 0x00000036 +#define OMAP_I2C_REV_ON_3430_3530 0x0000003C +#define OMAP_I2C_REV_ON_3630 0x00000040 +#define OMAP_I2C_REV_ON_4430_PLUS 0x50400002 #ifdef CONFIG_ARCH_OMAP #define cpu_is_omap2430() (1) @@ -56,6 +57,7 @@ static inline int omap_set_mmc_dev(const char *mmcdev) extern uint32_t omap_bootinfo[3]; void omap_save_bootinfo(void *data); +void __noreturn omap_start_barebox(void *barebox); void omap_set_bootmmc_devname(const char *devname); const char *omap_get_bootmmc_devname(void); diff --git a/arch/arm/mach-omap/omap_generic.c b/arch/arm/mach-omap/omap_generic.c index e7ca821212..79e37e2341 100644 --- a/arch/arm/mach-omap/omap_generic.c +++ b/arch/arm/mach-omap/omap_generic.c @@ -15,15 +15,70 @@ #include <common.h> #include <bootsource.h> #include <envfs.h> +#include <boot.h> #include <init.h> #include <io.h> #include <fs.h> #include <malloc.h> #include <linux/stat.h> +#include <mach/generic.h> +#include <mach/am33xx-silicon.h> +#include <mach/omap3-silicon.h> +#include <mach/omap4-silicon.h> -static char *omap_bootmmc_dev; +static void *omap_sram_start(void) +{ + if (cpu_is_am33xx()) + return (void *)AM33XX_SRAM0_START; + if (cpu_is_omap34xx()) + return (void *)OMAP3_SRAM_BASE; + if (cpu_is_omap4xxx()) + return (void *)OMAP44XX_SRAM_BASE; +} + +void __noreturn omap_start_barebox(void *barebox) +{ + int (*func)(void *) = barebox; + uint32_t *arg; + void *sramadr = omap_sram_start(); + + arg = (uint32_t *)&omap_bootinfo; + + memcpy(sramadr, &omap_bootinfo, sizeof(uint32_t) * 3); + + shutdown_barebox(); + func(sramadr); + hang(); +} + +#ifdef CONFIG_BOOTM +static int do_bootm_omap_barebox(struct image_data *data) +{ + void (*barebox)(uint32_t); -void omap_set_bootmmc_devname(char *devname) + barebox = read_file(data->os_file, NULL); + if (!barebox) + return -EINVAL; + + omap_start_barebox(barebox); +} + +static struct image_handler omap_barebox_handler = { + .name = "OMAP barebox", + .bootm = do_bootm_omap_barebox, + .filetype = filetype_arm_barebox, +}; + +static int omap_bootm_barebox(void) +{ + return register_image_handler(&omap_barebox_handler); +} +device_initcall(omap_bootm_barebox); +#endif + +const static char *omap_bootmmc_dev; + +void omap_set_bootmmc_devname(const char *devname) { omap_bootmmc_dev = devname; } @@ -37,7 +92,8 @@ const char *omap_get_bootmmc_devname(void) static int omap_env_init(void) { struct stat s; - char *diskdev, *partname; + char *partname; + const char *diskdev; int ret; if (bootsource_get() != BOOTSOURCE_MMC) @@ -68,10 +124,7 @@ static int omap_env_init(void) return 0; } - if (IS_ENABLED(CONFIG_OMAP_BUILD_IFT)) - default_environment_path = "/dev/defaultenv"; - else - default_environment_path = "/boot/barebox.env"; + default_environment_path = "/boot/barebox.env"; return 0; } diff --git a/arch/arm/mach-omap/xload.c b/arch/arm/mach-omap/xload.c index b4d1b55e57..69e3e42df6 100644 --- a/arch/arm/mach-omap/xload.c +++ b/arch/arm/mach-omap/xload.c @@ -188,8 +188,7 @@ static void *omap4_xload_boot_usb(void){ */ static __noreturn int omap_xload(void) { - int (*func)(void *) = NULL; - uint32_t *arg; + void *func; if (!barebox_part) barebox_part = &default_part; @@ -230,12 +229,7 @@ static __noreturn int omap_xload(void) while (1); } - arg = (uint32_t *)&omap_bootinfo; - - shutdown_barebox(); - func(arg); - - while (1); + omap_start_barebox(func); } int omap_set_barebox_part(struct omap_barebox_part *part) diff --git a/arch/arm/pbl/Makefile b/arch/arm/pbl/Makefile index dd3e94680b..bfa73b91a7 100644 --- a/arch/arm/pbl/Makefile +++ b/arch/arm/pbl/Makefile @@ -13,9 +13,17 @@ targets := zbarebox.lds zbarebox zbarebox.bin zbarebox.S \ # Make sure files are removed during clean extra-y += piggy.gzip piggy.lz4 piggy.lzo piggy.lzma piggy.xzkern piggy.shipped zbarebox.map +ifeq ($(CONFIG_CPU_BIG_ENDIAN),y) +FIX_SIZE=-b +else +FIX_SIZE= +endif + $(obj)/zbarebox.bin: $(obj)/zbarebox FORCE $(call if_changed,objcopy) $(call cmd,check_file_size,$(CONFIG_BAREBOX_MAX_IMAGE_SIZE)) + $(Q)$(kecho) ' Barebox: fix size' + $(Q)$(objtree)/scripts/fix_size -f $(objtree)/$@ -o 0x2c $(FIX_SIZE) $(Q)$(kecho) ' Barebox: $@ is ready' $(obj)/zbarebox.S: $(obj)/zbarebox FORCE diff --git a/arch/arm/tools/mach-types b/arch/arm/tools/mach-types index 325513f31a..01bc7aa20a 100644 --- a/arch/arm/tools/mach-types +++ b/arch/arm/tools/mach-types @@ -12,7 +12,7 @@ # # http://www.arm.linux.org.uk/developer/machines/?action=new # -# Last update: Mon May 14 09:28:07 2012 +# Last update: Wed Sep 25 08:48:26 2013 # # machine_is_xxx CONFIG_xxxx MACH_TYPE_xxx number # @@ -3006,6 +3006,7 @@ armada_xp_db MACH_ARMADA_XP_DB ARMADA_XP_DB 3036 spdm MACH_SPDM SPDM 3037 gtib MACH_GTIB GTIB 3038 dgm3240 MACH_DGM3240 DGM3240 3039 +iv_atlas_i_lpe MACH_ATLAS_I_LPE ATLAS_I_LPE 3040 htcmega MACH_HTCMEGA HTCMEGA 3041 tricorder MACH_TRICORDER TRICORDER 3042 tx28 MACH_TX28 TX28 3043 @@ -3279,7 +3280,7 @@ shenzhou MACH_SHENZHOU SHENZHOU 3319 cwme9210 MACH_CWME9210 CWME9210 3320 cwme9210js MACH_CWME9210JS CWME9210JS 3321 pgs_v1 MACH_PGS_SITARA PGS_SITARA 3322 -colibri_tegra2 MACH_COLIBRI_TEGRA2 COLIBRI_TEGRA2 3323 +colibri_t20 MACH_COLIBRI_TEGRA2 COLIBRI_TEGRA2 3323 w21 MACH_W21 W21 3324 polysat1 MACH_POLYSAT1 POLYSAT1 3325 dataway MACH_DATAWAY DATAWAY 3326 @@ -3811,7 +3812,7 @@ farleys MACH_FARLEYS FARLEYS 3856 efm32gg_dk3750 MACH_EFM32GG_DK3750 EFM32GG_DK3750 3857 zeus_board MACH_ZEUS_BOARD ZEUS_BOARD 3858 cc51 MACH_CC51 CC51 3859 -fxi_c210 MACH_FXI_C210 FXI_C210 3860 +cottoncandy MACH_FXI_C210 FXI_C210 3860 msm8627_cdp MACH_MSM8627_CDP MSM8627_CDP 3861 msm8627_mtp MACH_MSM8627_MTP MSM8627_MTP 3862 armadillo800eva MACH_ARMADILLO800EVA ARMADILLO800EVA 3863 @@ -4071,7 +4072,7 @@ tam335x MACH_TAM335X TAM335X 4116 grouper MACH_GROUPER GROUPER 4117 mpcsa21_9g20 MACH_MPCSA21_9G20 MPCSA21_9G20 4118 m6u_cpu MACH_M6U_CPU M6U_CPU 4119 -davinci_dp10 MACH_DAVINCI_DP10 DAVINCI_DP10 4120 +davinci_dp7 MACH_DAVINCI_DP10 DAVINCI_DP10 4120 ginkgo MACH_GINKGO GINKGO 4121 cgt_qmx6 MACH_CGT_QMX6 CGT_QMX6 4122 profpga MACH_PROFPGA PROFPGA 4123 @@ -4121,7 +4122,7 @@ msm8625_ffa MACH_MSM8625_FFA MSM8625_FFA 4166 vpu101 MACH_VPU101 VPU101 4167 operaul MACH_OPERA_UL OPERA_UL 4168 baileys MACH_BAILEYS BAILEYS 4169 -familybox MACH_FAMILYBOX FAMILYBOX 4170 +cloudbox MACH_FAMILYBOX FAMILYBOX 4170 ensemble_mx35 MACH_ENSEMBLE_MX35 ENSEMBLE_MX35 4171 sc_sps_1 MACH_SC_SPS_1 SC_SPS_1 4172 ucsimply_sam9260 MACH_UCSIMPLY_SAM9260 UCSIMPLY_SAM9260 4173 @@ -4148,3 +4149,577 @@ msm8625_evt MACH_MSM8625_EVT MSM8625_EVT 4193 mx53_sellwood MACH_MX53_SELLWOOD MX53_SELLWOOD 4194 somiq_am35 MACH_SOMIQ_AM35 SOMIQ_AM35 4195 somiq_am37 MACH_SOMIQ_AM37 SOMIQ_AM37 4196 +k2_plc_cl MACH_K2_PLC_CL K2_PLC_CL 4197 +tc2 MACH_TC2 TC2 4198 +dulex_j MACH_DULEX_J DULEX_J 4199 +stm_b2044 MACH_STM_B2044 STM_B2044 4200 +deluxe_j MACH_DELUXE_J DELUXE_J 4201 +mango2443 MACH_MANGO2443 MANGO2443 4202 +cp2dcg MACH_CP2DCG CP2DCG 4203 +cp2dtg MACH_CP2DTG CP2DTG 4204 +cp2dug MACH_CP2DUG CP2DUG 4205 +var_som_am33 MACH_VAR_SOM_AM33 VAR_SOM_AM33 4206 +pepper MACH_PEPPER PEPPER 4207 +mango2450 MACH_MANGO2450 MANGO2450 4208 +valente_wx_c9 MACH_VALENTE_WX_C9 VALENTE_WX_C9 4209 +minitv MACH_MINITV MINITV 4210 +u8540 MACH_U8540 U8540 4211 +iv_atlas_i_z7e MACH_IV_ATLAS_I_Z7E IV_ATLAS_I_Z7E 4212 +mx53_csb1733 MACH_COGENT_CSB1733 COGENT_CSB1733 4213 +mach_type_sky MACH_MACH_TYPE_SKY MACH_TYPE_SKY 4214 +bluesky MACH_BLUESKY BLUESKY 4215 +ngrouter MACH_NGROUTER NGROUTER 4216 +mx53_denetim MACH_MX53_DENETIM MX53_DENETIM 4217 +opal MACH_OPAL OPAL 4218 +gnet_us3gref MACH_GNET_US3GREF GNET_US3GREF 4219 +gnet_nc3g MACH_GNET_NC3G GNET_NC3G 4220 +gnet_ge3g MACH_GNET_GE3G GNET_GE3G 4221 +adp2 MACH_ADP2 ADP2 4222 +tqma28 MACH_TQMA28 TQMA28 4223 +kacom3 MACH_KACOM3 KACOM3 4224 +rrhdemo MACH_RRHDEMO RRHDEMO 4225 +protodug MACH_PROTODUG PROTODUG 4226 +lago MACH_LAGO LAGO 4227 +ktt30 MACH_KTT30 KTT30 4228 +ts43xx MACH_TS43XX TS43XX 4229 +mx6q_denso MACH_MX6Q_DENSO MX6Q_DENSO 4230 +comsat_gsmumts8 MACH_COMSAT_GSMUMTS8 COMSAT_GSMUMTS8 4231 +dreamx MACH_DREAMX DREAMX 4232 +thunderstonem MACH_THUNDERSTONEM THUNDERSTONEM 4233 +yoyopad MACH_YOYOPAD YOYOPAD 4234 +yoyopatient MACH_YOYOPATIENT YOYOPATIENT 4235 +a10l MACH_A10L A10L 4236 +mq60 MACH_MQ60 MQ60 4237 +linkstation_lsql MACH_LINKSTATION_LSQL LINKSTATION_LSQL 4238 +am3703gateway MACH_AM3703GATEWAY AM3703GATEWAY 4239 +accipiter MACH_ACCIPITER ACCIPITER 4240 +e1853 MACH_P1853 P1853 4241 +magnidug MACH_MAGNIDUG MAGNIDUG 4242 +hydra MACH_HYDRA HYDRA 4243 +sun3i MACH_SUN3I SUN3I 4244 +stm_b2078 MACH_STM_B2078 STM_B2078 4245 +at91sam9263deskv2 MACH_AT91SAM9263DESKV2 AT91SAM9263DESKV2 4246 +deluxe_r MACH_DELUXE_R DELUXE_R 4247 +p_98_v MACH_P_98_V P_98_V 4248 +p_98_c MACH_P_98_C P_98_C 4249 +davinci_am18xx_omn MACH_DAVINCI_AM18XX_OMN DAVINCI_AM18XX_OMN 4250 +socfpga_cyclone5 MACH_SOCFPGA_CYCLONE5 SOCFPGA_CYCLONE5 4251 +cabatuin MACH_CABATUIN CABATUIN 4252 +yoyopad_ft MACH_YOYOPAD_FT YOYOPAD_FT 4253 +dan2400evb MACH_DAN2400EVB DAN2400EVB 4254 +dan3400evb MACH_DAN3400EVB DAN3400EVB 4255 +edm_sf_imx6 MACH_EDM_SF_IMX6 EDM_SF_IMX6 4256 +edm_cf_imx6 MACH_EDM_CF_IMX6 EDM_CF_IMX6 4257 +vpos3xx MACH_VPOS3XX VPOS3XX 4258 +vulcano_9x5 MACH_VULCANO_9X5 VULCANO_9X5 4259 +spmp8000 MACH_SPMP8000 SPMP8000 4260 +catalina MACH_CATALINA CATALINA 4261 +rd88f5181l_fe MACH_RD88F5181L_FE RD88F5181L_FE 4262 +mx535_mx MACH_MX535_MX MX535_MX 4263 +armadillo840 MACH_ARMADILLO840 ARMADILLO840 4264 +spc9000baseboard MACH_SPC9000BASEBOARD SPC9000BASEBOARD 4265 +iris MACH_IRIS IRIS 4266 +protodcg MACH_PROTODCG PROTODCG 4267 +palmtree MACH_PALMTREE PALMTREE 4268 +novena MACH_NOVENA NOVENA 4269 +ma_um MACH_MA_UM MA_UM 4270 +ma_am MACH_MA_AM MA_AM 4271 +ems348 MACH_EMS348 EMS348 4272 +cm_fx6 MACH_CM_FX6 CM_FX6 4273 +arndale MACH_ARNDALE ARNDALE 4274 +q5xr5 MACH_Q5XR5 Q5XR5 4275 +willow MACH_WILLOW WILLOW 4276 +omap3621_odyv3 MACH_OMAP3621_ODYV3 OMAP3621_ODYV3 4277 +omapl138_presonus MACH_OMAPL138_PRESONUS OMAPL138_PRESONUS 4278 +dvf99 MACH_DVF99 DVF99 4279 +impression_j MACH_IMPRESSION_J IMPRESSION_J 4280 +qblissa9 MACH_QBLISSA9 QBLISSA9 4281 +robin_heliview10 MACH_ROBIN_HELIVIEW10 ROBIN_HELIVIEW10 4282 +sun7i MACH_SUN7I SUN7I 4283 +mx6q_hdmidongle MACH_MX6Q_HDMIDONGLE MX6Q_HDMIDONGLE 4284 +mx6_sid2 MACH_MX6_SID2 MX6_SID2 4285 +helios_v3 MACH_HELIOS_V3 HELIOS_V3 4286 +helios_v4 MACH_HELIOS_V4 HELIOS_V4 4287 +q7_imx6 MACH_Q7_IMX6 Q7_IMX6 4288 +odroidx MACH_ODROIDX ODROIDX 4289 +robpro MACH_ROBPRO ROBPRO 4290 +research59if_mk1 MACH_RESEARCH59IF_MK1 RESEARCH59IF_MK1 4291 +bobsleigh MACH_BOBSLEIGH BOBSLEIGH 4292 +dcshgwt3 MACH_DCSHGWT3 DCSHGWT3 4293 +gld1018 MACH_GLD1018 GLD1018 4294 +ev10 MACH_EV10 EV10 4295 +nitrogen6x MACH_NITROGEN6X NITROGEN6X 4296 +p_107_bb MACH_P_107_BB P_107_BB 4297 +evita_utl MACH_EVITA_UTL EVITA_UTL 4298 +falconwing MACH_FALCONWING FALCONWING 4299 +dct3 MACH_DCT3 DCT3 4300 +cpx2e_cell MACH_CPX2E_CELL CPX2E_CELL 4301 +amiro MACH_AMIRO AMIRO 4302 +mx6q_brassboard MACH_MX6Q_BRASSBOARD MX6Q_BRASSBOARD 4303 +dalmore MACH_DALMORE DALMORE 4304 +omap3_portal7cp MACH_OMAP3_PORTAL7CP OMAP3_PORTAL7CP 4305 +tegra_pluto MACH_TEGRA_PLUTO TEGRA_PLUTO 4306 +mx6sl_evk MACH_MX6SL_EVK MX6SL_EVK 4307 +m7 MACH_M7 M7 4308 +pxm2 MACH_PXM2 PXM2 4309 +haba_knx_lite MACH_HABA_KNX_LITE HABA_KNX_LITE 4310 +tai MACH_TAI TAI 4311 +prototd MACH_PROTOTD PROTOTD 4312 +dst_tonto MACH_DST_TONTO DST_TONTO 4313 +draco MACH_DRACO DRACO 4314 +dxr2 MACH_DXR2 DXR2 4315 +rut MACH_RUT RUT 4316 +am180x_wsc MACH_AM180X_WSC AM180X_WSC 4317 +deluxe_u MACH_DELUXE_U DELUXE_U 4318 +deluxe_ul MACH_DELUXE_UL DELUXE_UL 4319 +at91sam9260medths MACH_AT91SAM9260MEDTHS AT91SAM9260MEDTHS 4320 +matrix516 MACH_MATRIX516 MATRIX516 4321 +vid401x MACH_VID401X VID401X 4322 +helios_v5 MACH_HELIOS_V5 HELIOS_V5 4323 +playpaq2 MACH_PLAYPAQ2 PLAYPAQ2 4324 +igam MACH_IGAM IGAM 4325 +amico_i MACH_AMICO_I AMICO_I 4326 +amico_e MACH_AMICO_E AMICO_E 4327 +sentient_mm3_ck MACH_SENTIENT_MM3_CK SENTIENT_MM3_CK 4328 +smx6 MACH_SMX6 SMX6 4329 +pango MACH_PANGO PANGO 4330 +ns115_stick MACH_NS115_STICK NS115_STICK 4331 +bctrm3 MACH_BCTRM3 BCTRM3 4332 +doctorws MACH_DOCTORWS DOCTORWS 4333 +m2601 MACH_M2601 M2601 4334 +gco_mgmtt MACH_GRIDCO_TRINITY GRIDCO_TRINITY 4335 +pc73032 MACH_PC3032 PC3032 4336 +vgg1111 MACH_VGG1111 VGG1111 4337 +countach MACH_COUNTACH COUNTACH 4338 +visstrim_sm20 MACH_VISSTRIM_SM20 VISSTRIM_SM20 4339 +a639 MACH_A639 A639 4340 +spacemonkey MACH_SPACEMONKEY SPACEMONKEY 4341 +zpdu_stamp MACH_ZPDU_STAMP ZPDU_STAMP 4342 +htc_g7_clone MACH_HTC_G7_CLONE HTC_G7_CLONE 4343 +ft2080_corvus MACH_FT2080_CORVUS FT2080_CORVUS 4344 +fisland MACH_FISLAND FISLAND 4345 +zpdu MACH_ZPDU ZPDU 4346 +urt MACH_URT URT 4347 +conti_ovip MACH_CONTI_OVIP CONTI_OVIP 4348 +omapl138_nagra MACH_OMAPL138_NAGRA OMAPL138_NAGRA 4349 +da850_at3kp1 MACH_DA850_AT3KP1 DA850_AT3KP1 4350 +da850_at3kp2 MACH_DA850_AT3KP2 DA850_AT3KP2 4351 +surma MACH_SURMA SURMA 4352 +stm_b2092 MACH_STM_B2092 STM_B2092 4353 +mx535_ycr MACH_MX535_YCR MX535_YCR 4354 +m7_wl MACH_M7_WL M7_WL 4355 +m7_u MACH_M7_U M7_U 4356 +omap3_stndt_evm MACH_OMAP3_STNDT_EVM OMAP3_STNDT_EVM 4357 +m7_wlv MACH_M7_WLV M7_WLV 4358 +xam3517 MACH_XAM3517 XAM3517 4359 +a220 MACH_A220 A220 4360 +aclima_odie MACH_ACLIMA_ODIE ACLIMA_ODIE 4361 +vibble MACH_VIBBLE VIBBLE 4362 +k2_u MACH_K2_U K2_U 4363 +mx53_egf MACH_MX53_EGF MX53_EGF 4364 +novpek_imx53 MACH_NOVPEK_IMX53 NOVPEK_IMX53 4365 +novpek_imx6x MACH_NOVPEK_IMX6X NOVPEK_IMX6X 4366 +mx25_smartbox MACH_MX25_SMARTBOX MX25_SMARTBOX 4367 +eicg6410 MACH_EICG6410 EICG6410 4368 +picasso_e3 MACH_PICASSO_E3 PICASSO_E3 4369 +motonavigator MACH_MOTONAVIGATOR MOTONAVIGATOR 4370 +varioconnect2 MACH_VARIOCONNECT2 VARIOCONNECT2 4371 +deluxe_tw MACH_DELUXE_TW DELUXE_TW 4372 +kore3 MACH_KORE3 KORE3 4374 +mx6s_drs MACH_MX6S_DRS MX6S_DRS 4375 +cmimx6 MACH_CMIMX6 CMIMX6 4376 +roth MACH_ROTH ROTH 4377 +eq4ux MACH_EQ4UX EQ4UX 4378 +x1plus MACH_X1PLUS X1PLUS 4379 +modimx27 MACH_MODIMX27 MODIMX27 4380 +videon_hduac MACH_VIDEON_HDUAC VIDEON_HDUAC 4381 +blackbird MACH_BLACKBIRD BLACKBIRD 4382 +runmaster MACH_RUNMASTER RUNMASTER 4383 +ceres MACH_CERES CERES 4384 +nad435 MACH_NAD435 NAD435 4385 +ns115_proto_type MACH_NS115_PROTO_TYPE NS115_PROTO_TYPE 4386 +fs20_vcc MACH_FS20_VCC FS20_VCC 4387 +meson6tv_ref MACH_MESON6TV MESON6TV 4388 +meson6tv_skt MACH_MESON6TV_SKT MESON6TV_SKT 4389 +keystone MACH_KEYSTONE KEYSTONE 4390 +pcm052 MACH_PCM052 PCM052 4391 +rainbowg15_q7 MACH_TYPE TYPE 4392 +qrd_skud_prime MACH_QRD_SKUD_PRIME QRD_SKUD_PRIME 4393 +mx6_rainbow MACH_RAINBOWG15 RAINBOWG15 4394 +guf_santaro MACH_GUF_SANTARO GUF_SANTARO 4395 +sheepshead MACH_SHEEPSHEAD SHEEPSHEAD 4396 +mx6_iwg15m_mxm MACH_MX6_IWG15M_MXM MX6_IWG15M_MXM 4397 +mx6_iwg15m_q7 MACH_MX6_IWG15M_Q7 MX6_IWG15M_Q7 4398 +at91sam9263if8mic MACH_AT91SAM9263IF8MIC AT91SAM9263IF8MIC 4399 +ex MACH_EXCEL EXCEL 4400 +marcopolo MACH_MARCOPOLO MARCOPOLO 4401 +mx535_sdcr MACH_MX535_SDCR MX535_SDCR 4402 +mx53_csb2733 MACH_MX53_CSB2733 MX53_CSB2733 4403 +diva MACH_DIVA DIVA 4404 +ncr_7744 MACH_NCR_7744 NCR_7744 4405 +macallan MACH_MACALLAN MACALLAN 4406 +wnr3500 MACH_WNR3500 WNR3500 4407 +pgavrf MACH_PGAVRF PGAVRF 4408 +helios_v6 MACH_HELIOS_V6 HELIOS_V6 4409 +lcct MACH_LCCT LCCT 4410 +csndug MACH_CSNDUG CSNDUG 4411 +wandboard_imx6 MACH_WANDBOARD_IMX6 WANDBOARD_IMX6 4412 +omap4_jet MACH_OMAP4_JET OMAP4_JET 4413 +tegra_roth MACH_TEGRA_ROTH TEGRA_ROTH 4414 +m7dcg MACH_M7DCG M7DCG 4415 +m7dug MACH_M7DUG M7DUG 4416 +m7dtg MACH_M7DTG M7DTG 4417 +ap42x MACH_AP42X AP42X 4418 +var_som_mx6 MACH_VAR_SOM_MX6 VAR_SOM_MX6 4419 +pdlu MACH_PDLU PDLU 4420 +hydrogen MACH_HYDROGEN HYDROGEN 4421 +npa211e MACH_NPA211E NPA211E 4422 +arcadia MACH_ARCADIA ARCADIA 4423 +arcadia_l MACH_ARCADIA_L ARCADIA_L 4424 +msm8930dt MACH_MSM8930DT MSM8930DT 4425 +ktam3874 MACH_KTAM3874 KTAM3874 4426 +cec4 MACH_CEC4 CEC4 4427 +ape6evm MACH_APE6EVM APE6EVM 4428 +tx6 MACH_TX6 TX6 4429 +owen_som MACH_OWENSOM OWENSOM 4430 +cfa10037 MACH_CFA10037 CFA10037 4431 +nbrd_voip MACH_NATEKS_VOIP NATEKS_VOIP 4432 +ezp1000 MACH_EZP1000 EZP1000 4433 +wgr826v MACH_WGR826V WGR826V 4434 +exuma MACH_EXUMA EXUMA 4435 +fregate MACH_FREGATE FREGATE 4436 +osirisimx508 MACH_OSIRISIMX508 OSIRISIMX508 4437 +st_exigo MACH_ST_EXIGO ST_EXIGO 4438 +pismo MACH_PISMO PISMO 4439 +atc7 MACH_ATC7 ATC7 4440 +nspireclp MACH_NSPIRECLP NSPIRECLP 4441 +nspiretp MACH_NSPIRETP NSPIRETP 4442 +nspirecx MACH_NSPIRECX NSPIRECX 4443 +maya MACH_MAYA MAYA 4444 +wecct MACH_WECCT WECCT 4445 +m2s MACH_M2S M2S 4446 +msm8625q_evbd MACH_MSM8625Q_EVBD MSM8625Q_EVBD 4447 +tiny210 MACH_TINY210 TINY210 4448 +g3 MACH_G3 G3 4449 +hurricane MACH_HURRICANE HURRICANE 4450 +mx6_pod MACH_MX6_POD MX6_POD 4451 +elondcn MACH_ELONDCN ELONDCN 4452 +cwmx535 MACH_CWMX535 CWMX535 4453 +m7_wlj MACH_M7_WLJ M7_WLJ 4454 +qsp_arm MACH_QSP_ARM QSP_ARM 4455 +msm8625q_skud MACH_MSM8625Q_SKUD MSM8625Q_SKUD 4456 +htcmondrian MACH_HTCMONDRIAN HTCMONDRIAN 4457 +watson_ead MACH_WATSON_EAD WATSON_EAD 4458 +mitwoa MACH_MITWOA MITWOA 4459 +omap3_wolverine MACH_OMAP3_WOLVERINE OMAP3_WOLVERINE 4460 +mapletree MACH_MAPLETREE MAPLETREE 4461 +msm8625_fih_sae MACH_MSM8625_FIH_SAE MSM8625_FIH_SAE 4462 +epc35 MACH_EPC35 EPC35 4463 +smartrtu MACH_SMARTRTU SMARTRTU 4464 +rcm101 MACH_RCM101 RCM101 4465 +amx_imx53_mxx MACH_AMX_IMX53_MXX AMX_IMX53_MXX 4466 +crius MACH_CP3DCG CP3DCG 4467 +themis MACH_CP3DTG CP3DTG 4468 +uranus MACH_CP3DUG CP3DUG 4469 +acer_a12 MACH_ACER_A12 ACER_A12 4470 +sbc6x MACH_SBC6X SBC6X 4471 +u2 MACH_U2 U2 4472 +smdk4270 MACH_SMDK4270 SMDK4270 4473 +priscillag MACH_PRISCILLAG PRISCILLAG 4474 +priscillac MACH_PRISCILLAC PRISCILLAC 4475 +priscilla MACH_PRISCILLA PRISCILLA 4476 +innova_shpu_v2 MACH_INNOVA_SHPU_V2 INNOVA_SHPU_V2 4477 +auriga MACH_M7CDTU M7CDTU 4478 +mach_type_dep2410 MACH_MACH_TYPE_DEP2410 MACH_TYPE_DEP2410 4479 +bctre3 MACH_BCTRE3 BCTRE3 4480 +omap_m100 MACH_OMAP_M100 OMAP_M100 4481 +flo MACH_FLO FLO 4482 +nanobone MACH_NANOBONE NANOBONE 4483 +stm_b2105 MACH_STM_B2105 STM_B2105 4484 +omap4_bsc_bap_v3 MACH_OMAP4_BSC_BAP_V3 OMAP4_BSC_BAP_V3 4485 +ss1pam MACH_SS1PAM SS1PAM 4486 +caelum MACH_DLXP_WL DLXP_WL 4487 +primominiu MACH_PRIMOMINIU PRIMOMINIU 4488 +mrt_35hd_dualnas_e MACH_MRT_35HD_DUALNAS_E MRT_35HD_DUALNAS_E 4489 +kiwi MACH_KIWI KIWI 4490 +hw90496 MACH_HW90496 HW90496 4491 +mep2440 MACH_MEP2440 MEP2440 4492 +colibri_t30 MACH_COLIBRI_T30 COLIBRI_T30 4493 +cwv1 MACH_CWV1 CWV1 4494 +nsa325 MACH_NSA325 NSA325 4495 +camelopardalis MACH_DLXP_UL DLXP_UL 4496 +dpxmtc MACH_DPXMTC DPXMTC 4497 +tt_stuttgart MACH_TT_STUTTGART TT_STUTTGART 4498 +miranda_apcii MACH_MIRANDA_APCII MIRANDA_APCII 4499 +mx6q_moderox MACH_MX6Q_MODEROX MX6Q_MODEROX 4500 +mudskipper MACH_MUDSKIPPER MUDSKIPPER 4501 +urania MACH_URANIA URANIA 4502 +stm_b2112 MACH_STM_B2112 STM_B2112 4503 +ara MACH_GTOU GTOU 4504 +mx6q_ats_phoenix MACH_MX6Q_ATS_PHOENIX MX6Q_ATS_PHOENIX 4505 +stm_b2116 MACH_STM_B2116 STM_B2116 4506 +mythology MACH_MYTHOLOGY MYTHOLOGY 4507 +fc360v1 MACH_FC360V1 FC360V1 4508 +gps_sensor MACH_GPS_SENSOR GPS_SENSOR 4509 +gazelle MACH_GAZELLE GAZELLE 4510 +mpq8064_dma MACH_MPQ8064_DMA MPQ8064_DMA 4511 +wems_asd01 MACH_WEMS_ASD01 WEMS_ASD01 4512 +apalis_t30 MACH_APALIS_T30 APALIS_T30 4513 +mx6q_sbc35_c398 MACH_MX6Q_QSBC35_C398 MX6Q_QSBC35_C398 4514 +armstonea9 MACH_ARMSTONEA9 ARMSTONEA9 4515 +omap_blazetablet MACH_OMAP_BLAZETABLET OMAP_BLAZETABLET 4516 +ar6mxq MACH_AR6MXQ AR6MXQ 4517 +ar6mxs MACH_AR6MXS AR6MXS 4518 +deto_mx6apos MACH_DETO_APOS_MX6 DETO_APOS_MX6 4519 +gwventana MACH_GWVENTANA GWVENTANA 4520 +igep0033 MACH_IGEP0033 IGEP0033 4521 +antlia MACH_RACA RACA 4522 +apus MACH_APPLESODA APPLESODA 4523 +h52c1_concerto MACH_H52C1_CONCERTO H52C1_CONCERTO 4524 +fcmbrd MACH_FCMBRD FCMBRD 4525 +pcaaxs1 MACH_PCAAXS1 PCAAXS1 4526 +ls_orca MACH_LS_ORCA LS_ORCA 4527 +pcm051lb MACH_PCM051LB PCM051LB 4528 +mx6s_lp507_gvci MACH_MX6S_LP507_GVCI MX6S_LP507_GVCI 4529 +dido MACH_DIDO DIDO 4530 +swarco_itc3_9g20 MACH_SWARCO_ITC3_9G20 SWARCO_ITC3_9G20 4531 +robo_roady MACH_ROBO_ROADY ROBO_ROADY 4532 +rskrza1 MACH_RSKRZA1 RSKRZA1 4533 +swarco_sid MACH_SWARCO_SID SWARCO_SID 4534 +mx6_iwg15s_sbc MACH_MX6_IWG15S_SBC MX6_IWG15S_SBC 4535 +mx6q_camaro MACH_MX6Q_CAMARO MX6Q_CAMARO 4536 +hb6mxs MACH_HB6MXS HB6MXS 4537 +lager MACH_LAGER LAGER 4538 +lp8x4x MACH_LP8X4X LP8X4X 4539 +tegratab7 MACH_TEGRATAB7 TEGRATAB7 4540 +andromeda MACH_ANDROMEDA ANDROMEDA 4541 +bootes MACH_BOOTES BOOTES 4542 +nethmi MACH_NETHMI NETHMI 4543 +tegratab MACH_TEGRATAB TEGRATAB 4544 +som5_evb MACH_SOM5_EVB SOM5_EVB 4545 +venaticorum MACH_VENATICORUM VENATICORUM 4546 +stm_b2110 MACH_STM_B2110 STM_B2110 4547 +elux_hathor MACH_ELUX_HATHOR ELUX_HATHOR 4548 +helios_v7 MACH_HELIOS_V7 HELIOS_V7 4549 +xc10v1 MACH_XC10V1 XC10V1 4550 +cp2u MACH_CP2U CP2U 4551 +iap_f MACH_IAP_F IAP_F 4552 +iap_g MACH_IAP_G IAP_G 4553 +aae MACH_AAE AAE 4554 +pegasus MACH_PEGASUS PEGASUS 4555 +cygnus MACH_CYGNUS CYGNUS 4556 +centaurus MACH_CENTAURUS CENTAURUS 4557 +msm8930_qrd8930 MACH_MSM8930_QRD8930 MSM8930_QRD8930 4558 +quby_tim MACH_QUBY_TIM QUBY_TIM 4559 +zedi3250a MACH_ZEDI3250A ZEDI3250A 4560 +grus MACH_GRUS GRUS 4561 +apollo3 MACH_APOLLO3 APOLLO3 4562 +cowon_r7 MACH_COWON_R7 COWON_R7 4563 +tonga3 MACH_TONGA3 TONGA3 4564 +p535 MACH_P535 P535 4565 +sa3874i MACH_SA3874I SA3874I 4566 +mx6_navico_com MACH_MX6_NAVICO_COM MX6_NAVICO_COM 4567 +proxmobil2 MACH_PROXMOBIL2 PROXMOBIL2 4568 +ubinux1 MACH_UBINUX1 UBINUX1 4569 +istos MACH_ISTOS ISTOS 4570 +benvolio4 MACH_BENVOLIO4 BENVOLIO4 4571 +eco5_bx2 MACH_ECO5_BX2 ECO5_BX2 4572 +eukrea_cpuimx28sd MACH_EUKREA_CPUIMX28SD EUKREA_CPUIMX28SD 4573 +domotab MACH_DOMOTAB DOMOTAB 4574 +pfla03 MACH_PFLA03 PFLA03 4575 +et_cpu_301_16 MACH_ET_CPU_301_16 ET_CPU_301_16 4576 +skywalker MACH_SKYWALKER SKYWALKER 4577 +scorpius MACH_SCORPIUS SCORPIUS 4578 +capricornus MACH_CAPRICORNUS CAPRICORNUS 4579 +lyra MACH_LYRA LYRA 4580 +gatero MACH_GATERO GATERO 4581 +gatero01 MACH_GATERO01 GATERO01 4582 +z4dtg MACH_Z4DTG Z4DTG 4583 +lupus MACH_LUPUS LUPUS 4584 +leap101 MACH_LEAP101 LEAP101 4585 +cm_t335 MACH_CM_T335 CM_T335 4586 +pna MACH_PNA PNA 4587 +ecoforest_cpu2013 MACH_ECOFOREST_CPU2013 ECOFOREST_CPU2013 4588 +apq8064_dma MACH_APQ8064_DMA APQ8064_DMA 4589 +mx53_armour MACH_MX53_ARMOUR MX53_ARMOUR 4590 +eurofunk_aepl3 MACH_EUROFUNK_AEPL3 EUROFUNK_AEPL3 4591 +eurofunk_mhls3 MACH_EUROFUNK_MHLS3 EUROFUNK_MHLS3 4592 +eurofunk_e1if MACH_EUROFUNK_E1IF EUROFUNK_E1IF 4593 +lepus MACH_LEPUS LEPUS 4594 +bora MACH_BORA BORA 4595 +ads4011 MACH_ADS4011 ADS4011 4596 +beaver MACH_BEAVER BEAVER 4597 +imx233_iungo MACH_IMX233_IUNGO IMX233_IUNGO 4598 +cepheus MACH_CEPHEUS CEPHEUS 4599 +cetus MACH_CETUS CETUS 4600 +chamaeleon MACH_CHAMAELEON CHAMAELEON 4601 +ardbeg MACH_ARDBEG ARDBEG 4602 +ixora MACH_IXORA IXORA 4603 +juglans MACH_JUGLANS JUGLANS 4604 +canismajor MACH_CANISMAJOR CANISMAJOR 4605 +at91sam9263mib MACH_AT91SAM9263MIB AT91SAM9263MIB 4606 +cosino_9g35 MACH_COSINO_9G35 COSINO_9G35 4607 +tiny4412 MACH_TINY4412 TINY4412 4608 +balloon4 MACH_BALLOON4 BALLOON4 4609 +pgg MACH_PGG PGG 4610 +xxsq701 MACH_XXSQ701 XXSQ701 4611 +mx6_navico_rdr MACH_MX6_NAVICO_RDR MX6_NAVICO_RDR 4612 +phantom MACH_PHANTOM PHANTOM 4613 +canisminorh MACH_CANISMINORH CANISMINORH 4614 +carina MACH_CARINA CARINA 4615 +e1859 MACH_E1859 E1859 4616 +armstonea5 MACH_ARMSTONEA5 ARMSTONEA5 4617 +picocoma5 MACH_PICOCOMA5 PICOCOMA5 4618 +netdcua5 MACH_NETDCUA5 NETDCUA5 4619 +molly MACH_MOLLY MOLLY 4620 +maserati MACH_MASERATI MASERATI 4621 +mx53_idebx MACH_MX53_IDEBX MX53_IDEBX 4622 +mx53_c2cb MACH_MX53_C2CB MX53_C2CB 4623 +mipsee MACH_MIPSEE MIPSEE 4624 +seeklop MACH_SEEKLOP SEEKLOP 4625 +audisee MACH_AUDISEE AUDISEE 4626 +tx48 MACH_TX48 TX48 4627 +tl7689_pad_aurora MACH_TL7689_PAD_REF TL7689_PAD_REF 4628 +tl7689_pad_test MACH_TL7689_PAD_TEST TL7689_PAD_TEST 4629 +tl7689_phone_ref MACH_TL7689_PHONE_REF TL7689_PHONE_REF 4630 +tl7689_phone_test MACH_TL7689_PHONE_TEST TL7689_PHONE_TEST 4631 +swarco_scc_wks MACH_SWARCO_SCC_WKS SWARCO_SCC_WKS 4632 +accordo2 MACH_ACCORDO2 ACCORDO2 4633 +trizeps7 MACH_TRIZEPS7 TRIZEPS7 4634 +f100 MACH_F100 F100 4635 +armadillo410 MACH_ARMADILLO410 ARMADILLO410 4636 +tiny2416 MACH_TINY2416 TINY2416 4637 +tiny2451 MACH_TINY2451 TINY2451 4638 +mini2451 MACH_MINI2451 MINI2451 4639 +tiny5250 MACH_TINY5250 TINY5250 4640 +tiny3358 MACH_TINY3358 TINY3358 4641 +cassiopeia MACH_T6_UL T6_UL 4642 +columba MACH_T6_U T6_U 4643 +delphinus MACH_T6_ULA T6_ULA 4644 +crater MACH_T6_WL T6_WL 4645 +eridanus MACH_T6_WHL T6_WHL 4646 +circinus MACH_CIRCINUS CIRCINUS 4647 +socpk255 MACH_SOCPK255 SOCPK255 4648 +socprv270 MACH_SOCPRV270 SOCPRV270 4649 +socprc270 MACH_SOCPRC270 SOCPRC270 4650 +induses MACH_MACH_CP5DTU MACH_CP5DTU 4651 +hercules MACH_CP5DTU CP5DTU 4652 +horologium MACH_CP5DUG CP5DUG 4653 +hydrus MACH_CP5DWG CP5DWG 4654 +am335x_egf MACH_AM335X_EGF AM335X_EGF 4655 +azm9g45 MACH_AZM9G45 AZM9G45 4656 +azm335x MACH_AZM335X AZM335X 4657 +lynbrd MACH_LYNBRD LYNBRD 4658 +am35x_egf MACH_AM35X_EGF AM35X_EGF 4659 +sevulcan MACH_SEVULCAN SEVULCAN 4660 +ax8008m MACH_AX8008M AX8008M 4661 +ax8008mr MACH_AX8008MR AX8008MR 4662 +xynix MACH_XYNIX XYNIX 4663 +omap3621_odyv4 MACH_OMAP3621_ODYV4 OMAP3621_ODYV4 4664 +mx6_cameronet MACH_MX6_CAMERONET MX6_CAMERONET 4665 +omap4_dart MACH_OMAP4_DART OMAP4_DART 4666 +mx6q_enzo MACH_MX6Q_ENZO MX6Q_ENZO 4667 +ev_imx287micro MACH_EV_IMX287MICRO EV_IMX287MICRO 4668 +ev_imx287mini MACH_EV_IMX287MINI EV_IMX287MINI 4669 +mx53_cec2 MACH_MX53_CEC2 MX53_CEC2 4670 +helios_v8 MACH_HELIOS_V8 HELIOS_V8 4671 +helios_v9 MACH_HELIOS_V9 HELIOS_V9 4672 +cognac MACH_COGNAC COGNAC 4673 +zest MACH_ZEST ZEST 4674 +gc3 MACH_GC3 GC3 4675 +dad_media MACH_DAD_MEDIA DAD_MEDIA 4676 +htouch MACH_HTOUCH HTOUCH 4677 +spt7500baseboard MACH_SPT7500BASEBOARD SPT7500BASEBOARD 4678 +omap4_dart_evm MACH_OMAP4_DART_EVM OMAP4_DART_EVM 4679 +mx53_tlv MACH_MX53_TLV MX53_TLV 4680 +pdak2h MACH_PDAK2H PDAK2H 4681 +matrix513 MACH_MATRIX513 MATRIX513 4682 +livebox01 MACH_LIVEBOX01 LIVEBOX01 4683 +cevrza1l MACH_CEVRZA1L CEVRZA1L 4684 +b1010 MACH_B1010 B1010 4685 +fwtmk1 MACH_FWTMK1 FWTMK1 4686 +grenada MACH_GRENADA GRENADA 4687 +hassel MACH_HASSEL HASSEL 4688 +odroidxu MACH_ODROIDXU ODROIDXU 4689 +odroidu2 MACH_ODROIDU2 ODROIDU2 4690 +naiad MACH_NAIAD NAIAD 4691 +harrier MACH_HARRIER HARRIER 4692 +pcl052 MACH_PCL052 PCL052 4693 +libra2404 MACH_LIBRA2404 LIBRA2404 4694 +mx6_lemonboard MACH_MX6_LEMONBOARD MX6_LEMONBOARD 4695 +mx6_atlas MACH_MX6_ATLAS MX6_ATLAS 4696 +elecsys_z2 MACH_ELECSYS_Z2 ELECSYS_Z2 4697 +elecsys_z4 MACH_ELECSYS_Z4 ELECSYS_Z4 4698 +ipq806x_db149 MACH_IPQ806X_DB149 IPQ806X_DB149 4699 +pulsar MACH_PULSAR PULSAR 4700 +scalancem MACH_SCALANCEM SCALANCEM 4701 +na11 MACH_NA11 NA11 4702 +ipq806x_db147 MACH_IPQ806X_DB147 IPQ806X_DB147 4703 +ipq806x_ap148 MACH_IPQ806X_AP148 IPQ806X_AP148 4704 +amltd_imx6 MACH_AMLTD_IMX6 AMLTD_IMX6 4705 +pia_am335x MACH_PIA_AM335X PIA_AM335X 4706 +blade MACH_BLADE BLADE 4707 +matisse MACH_MATISSE MATISSE 4708 +ikebana MACH_IKEBANA IKEBANA 4709 +lf3000 MACH_LF3000 LF3000 4710 +carallon_stingray MACH_CARALLON_STINGRAY CARALLON_STINGRAY 4711 +mensa MACH_MENSA MENSA 4712 +ces_coreboard MACH_CES_COREBOARD CES_COREBOARD 4713 +vybrid_iwg16m_umxm MACH_VYBRID_IWG16M_UMXM VYBRID_IWG16M_UMXM 4714 +loki MACH_LOKI LOKI 4715 +pcm053 MACH_PCM053 PCM053 4716 +smm200 MACH_SMM200 SMM200 4717 +m507 MACH_M507 M507 4718 +orsoc_armsoc_8695 MACH_ORSOC_ARMSOC_8695 ORSOC_ARMSOC_8695 4719 +am335x_zy MACH_AM335X_ZY AM335X_ZY 4720 +arrakis MACH_ARRAKIS ARRAKIS 4721 +sxlt MACH_SXLT SXLT 4722 +ylcm MACH_YLCM YLCM 4723 +eagle6d MACH_EAGLE6D EAGLE6D 4724 +lcu1 MACH_LCU1 LCU1 4725 +mx6dl_iwg15m_q7 MACH_MX6DL_IWG15M_Q7 MX6DL_IWG15M_Q7 4726 +sbc_phyflex_am335 MACH_SBCPHYFLEXAM335 SBCPHYFLEXAM335 4727 +sbc_phycard_am335 MACH_SBCPHYCARDAM335 SBCPHYCARDAM335 4728 +sbc_phyflex_imx6 MACH_SBCPHYFLEXIMX6 SBCPHYFLEXIMX6 4729 +homeserverstick MACH_HOMESERVERSTICK HOMESERVERSTICK 4730 +ecxec MACH_ECXEC ECXEC 4731 +hh300 MACH_HH300 HH300 4732 +cpuca8 MACH_CPUCA8 CPUCA8 4733 +a0057_lsembeddedpc MACH_A0057_LSEMBEDDEDPC A0057_LSEMBEDDEDPC 4734 +iproc MACH_IPROC IPROC 4735 +nemesis_nfe MACH_NEMESIS_NFE NEMESIS_NFE 4736 +mabv3x25 MACH_MABV3X25 MABV3X25 4737 +octant MACH_OCTANT OCTANT 4738 +msm7x27_thunder MACH_MSM7X27_THUNDER MSM7X27_THUNDER 4739 +maxim MACH_MAXIM MAXIM 4740 +telematicctrlunit MACH_TELEMATICCTRLUNIT TELEMATICCTRLUNIT 4741 +mx6q_jcdbox MACH_MX6Q_JCDBOX MX6Q_JCDBOX 4742 +ckb_1808 MACH_CKB_1808 CKB_1808 4743 +ckb_3352 MACH_CKB_3352 CKB_3352 4744 +hikirk MACH_HIKIRK HIKIRK 4745 +dns320l MACH_DNS320L DNS320L 4746 +stm_b2120 MACH_STM_B2120 STM_B2120 4747 +stm_b2089 MACH_STM_B2089 STM_B2089 4748 +colibri_vf50 MACH_COLIBRI_VF50 COLIBRI_VF50 4749 +colibri_vf61 MACH_COLIBRI_VF61 COLIBRI_VF61 4750 +synergy2 MACH_SYNERGY2 SYNERGY2 4751 +pcm051_hmi MACH_PCM051_HMI PCM051_HMI 4752 +tek2 MACH_TEK2 TEK2 4753 +duckbill MACH_DUCKBILL DUCKBILL 4754 +mx50_seismic MACH_MX50_SEISMIC MX50_SEISMIC 4755 +twoface MACH_TWOFACE TWOFACE 4756 +t10 MACH_T10 T10 4757 +lib1313 MACH_LIB1313 LIB1313 4758 +himx MACH_HIMX HIMX 4759 +vcm30_t30 MACH_VCM30_T30 VCM30_T30 4760 +cornerview MACH_CORNERVIEW CORNERVIEW 4761 +p01600 MACH_P01600 P01600 4762 +axel MACH_AXEL AXEL 4763 +imx6_andy MACH_IMX6_ANDY IMX6_ANDY 4764 +nsa220 MACH_NSA220 NSA220 4765 +ti8168hsc1 MACH_TI8168HSC1 TI8168HSC1 4766 +dory MACH_DORY DORY 4767 +ecv4 MACH_ECV4 ECV4 4768 +webbg3flight MACH_WEBBG3FLIGHT WEBBG3FLIGHT 4769 +sbc_phycore_am335x MACH_SBC_PHYCORE_AM335X SBC_PHYCORE_AM335X 4770 +tsc MACH_TSC TSC 4771 diff --git a/arch/mips/boards/rzx50/Makefile b/arch/mips/boards/rzx50/Makefile index 9e14763111..ff1a655afe 100644 --- a/arch/mips/boards/rzx50/Makefile +++ b/arch/mips/boards/rzx50/Makefile @@ -1,2 +1 @@ -obj-y += board.o obj-$(CONFIG_DRIVER_SERIAL_NS16550) += serial.o diff --git a/arch/mips/boards/rzx50/board.c b/arch/mips/boards/rzx50/board.c deleted file mode 100644 index 9e655aba50..0000000000 --- a/arch/mips/boards/rzx50/board.c +++ /dev/null @@ -1,12 +0,0 @@ -#include <common.h> -#include <init.h> -#include <sizes.h> -#include <asm/memory.h> - -static int mem_init(void) -{ - mips_add_ram0(SZ_64M); - - return 0; -} -mem_initcall(mem_init); diff --git a/arch/mips/boards/rzx50/serial.c b/arch/mips/boards/rzx50/serial.c index 0038c1db40..566356aaa5 100644 --- a/arch/mips/boards/rzx50/serial.c +++ b/arch/mips/boards/rzx50/serial.c @@ -22,7 +22,6 @@ static int rzx50_console_init(void) { - barebox_set_model("Ritmix RZX-50"); barebox_set_hostname("rzx50"); /* Register the serial port */ diff --git a/arch/mips/configs/rzx50_defconfig b/arch/mips/configs/rzx50_defconfig index 7b759090f4..7691bae6e6 100644 --- a/arch/mips/configs/rzx50_defconfig +++ b/arch/mips/configs/rzx50_defconfig @@ -1,3 +1,5 @@ +CONFIG_BUILTIN_DTB=y +CONFIG_BUILTIN_DTB_NAME="rzx50" CONFIG_MACH_MIPS_XBURST=y CONFIG_JZ4750D_DEBUG_LL_UART1=y CONFIG_PBL_IMAGE=y @@ -27,6 +29,10 @@ CONFIG_CMD_UIMAGE=y CONFIG_CMD_RESET=y CONFIG_CMD_POWEROFF=y CONFIG_CMD_GO=y +CONFIG_CMD_OFTREE=y +CONFIG_CMD_OF_PROPERTY=y +CONFIG_CMD_OF_NODE=y +CONFIG_OFDEVICE=y # CONFIG_SPI is not set CONFIG_SHA1=y CONFIG_SHA224=y diff --git a/arch/mips/dts/rzx50.dts b/arch/mips/dts/rzx50.dts new file mode 100644 index 0000000000..69320ddbb3 --- /dev/null +++ b/arch/mips/dts/rzx50.dts @@ -0,0 +1,12 @@ +/dts-v1/; + +/include/ "skeleton.dtsi" + +/ { + model = "Ritmix RZX-50"; + compatible = "ritmix,rzx50"; + + memory { + reg = <0x00000000 0x4000000>; + }; +}; diff --git a/arch/mips/mach-bcm47xx/include/mach/debug_ll.h b/arch/mips/mach-bcm47xx/include/mach/debug_ll.h index 0703bb0f23..9927b4d945 100644 --- a/arch/mips/mach-bcm47xx/include/mach/debug_ll.h +++ b/arch/mips/mach-bcm47xx/include/mach/debug_ll.h @@ -30,8 +30,10 @@ static __inline__ void PUTC_LL(char ch) { - while (!(__raw_readb(DEBUG_LL_UART_ADDR + lsr) & LSR_THRE)); - __raw_writeb(ch, DEBUG_LL_UART_ADDR + rbr); + void *base = (void *)DEBUG_LL_UART_ADDR; + + while (!(__raw_readb(base + lsr) & LSR_THRE)); + __raw_writeb(ch, base + rbr); } #endif /* __INCLUDE_ARCH_DEBUG_LL_H__ */ diff --git a/arch/ppc/mach-mpc85xx/fdt.c b/arch/ppc/mach-mpc85xx/fdt.c index 4feae441e6..65de6f1104 100644 --- a/arch/ppc/mach-mpc85xx/fdt.c +++ b/arch/ppc/mach-mpc85xx/fdt.c @@ -70,9 +70,7 @@ static int fdt_stdout_setup(struct device_node *blob) goto error; } - for_each_console(cdev) - if ((cdev->f_active & (CONSOLE_STDIN | CONSOLE_STDOUT))) - break; + cdev = console_get_first_active(); if (cdev) sprintf(sername, "serial%d", cdev->dev->id); else diff --git a/arch/sandbox/board/console.c b/arch/sandbox/board/console.c index b0afa54d95..cd5ad57235 100644 --- a/arch/sandbox/board/console.c +++ b/arch/sandbox/board/console.c @@ -36,11 +36,6 @@ int barebox_register_console(char *name, int stdinfd, int stdoutfd) strcpy(dev->name, "console"); - if (stdinfd >= 0) - data->flags = CONSOLE_STDIN; - if (stdoutfd >= 0) - data->flags |= CONSOLE_STDOUT | CONSOLE_STDERR; - data->stdoutfd = stdoutfd; data->stdinfd = stdinfd; diff --git a/arch/sandbox/mach-sandbox/include/mach/linux.h b/arch/sandbox/mach-sandbox/include/mach/linux.h index 50d2721f77..98f9067046 100644 --- a/arch/sandbox/mach-sandbox/include/mach/linux.h +++ b/arch/sandbox/mach-sandbox/include/mach/linux.h @@ -23,7 +23,6 @@ int barebox_register_console(char *name_template, int stdinfd, int stdoutfd); struct linux_console_data { int stdinfd; int stdoutfd; - unsigned int flags; }; extern int sdl_xres; |