Merge branch 'master' into next
This commit is contained in:
commit
fdc889de61
2
Makefile
2
Makefile
|
@ -1,5 +1,5 @@
|
|||
VERSION = 2012
|
||||
PATCHLEVEL = 02
|
||||
PATCHLEVEL = 04
|
||||
SUBLEVEL = 0
|
||||
EXTRAVERSION =
|
||||
NAME = Amissive Actinocutious Kiwi
|
||||
|
|
|
@ -28,6 +28,7 @@
|
|||
#include <fs.h>
|
||||
#include <fcntl.h>
|
||||
#include <io.h>
|
||||
#include <sizes.h>
|
||||
#include <asm/hardware.h>
|
||||
#include <mach/at91_pmc.h>
|
||||
#include <mach/board.h>
|
||||
|
@ -116,7 +117,7 @@ static int at91rm9200ek_devices_init(void)
|
|||
|
||||
at91_add_device_eth(0, ðer_pdata);
|
||||
|
||||
add_cfi_flash_device(0, AT91_CHIPSELECT_0, 0, 0);
|
||||
add_cfi_flash_device(0, AT91_CHIPSELECT_0, SZ_8M, 0);
|
||||
/* USB Host */
|
||||
at91_add_device_usbh_ohci(&ek_usbh_data);
|
||||
ek_device_add_leds();
|
||||
|
|
|
@ -4,7 +4,7 @@ if MACH_MINI2440
|
|||
config MINI2440_VIDEO
|
||||
bool
|
||||
select VIDEO
|
||||
select DRIVER_VIDEO_S3C
|
||||
select DRIVER_VIDEO_S3C24XX
|
||||
|
||||
config MINI2440_VIDEO_N35
|
||||
bool "Support N35 display (240x320)"
|
||||
|
|
|
@ -40,11 +40,12 @@ autoboot_timeout=3
|
|||
|
||||
bootargs="console=ttymxc0,115200"
|
||||
|
||||
nor_parts="256k(barebox)ro,128k(bareboxenv),2M(kernel),-(root)"
|
||||
nor_parts="512k(barebox)ro,128k(bareboxenv),2M(kernel),-(root)"
|
||||
rootfs_mtdblock_nor=3
|
||||
|
||||
nand_parts="256k(barebox)ro,128k(bareboxenv),2M(kernel),-(root)"
|
||||
nand_parts="512k(barebox)ro,128k(bareboxenv),2M(kernel),-(root)"
|
||||
rootfs_mtdblock_nand=7
|
||||
nand_device="mxc_nand"
|
||||
|
||||
# set a fancy prompt (if support is compiled in)
|
||||
PS1="\e[1;32mbarebox@\e[1;31m\h:\w\e[0m "
|
||||
|
|
|
@ -135,7 +135,7 @@ static int pcm038_mem_init(void)
|
|||
{
|
||||
arm_add_mem_device("ram0", 0xa0000000, 128 * 1024 * 1024);
|
||||
|
||||
add_mem_device("ram0", 0xc8000000, 512 * 1024, /* Can be up to 2MiB */
|
||||
add_mem_device("ram1", 0xc8000000, 512 * 1024, /* Can be up to 2MiB */
|
||||
IORESOURCE_MEM_WRITEABLE);
|
||||
return 0;
|
||||
}
|
||||
|
@ -268,16 +268,20 @@ static int pcm038_devices_init(void)
|
|||
case GPCR_BOOT_16BIT_NAND_2k:
|
||||
case GPCR_BOOT_16BIT_NAND_512:
|
||||
case GPCR_BOOT_8BIT_NAND_512:
|
||||
devfs_add_partition("nand0", 0x00000, 0x40000, PARTITION_FIXED, "self_raw");
|
||||
devfs_add_partition("nand0", 0x00000, 0x80000,
|
||||
PARTITION_FIXED, "self_raw");
|
||||
dev_add_bb_dev("self_raw", "self0");
|
||||
|
||||
devfs_add_partition("nand0", 0x40000, 0x20000, PARTITION_FIXED, "env_raw");
|
||||
devfs_add_partition("nand0", 0x80000, 0x100000,
|
||||
PARTITION_FIXED, "env_raw");
|
||||
dev_add_bb_dev("env_raw", "env0");
|
||||
envdev = "NAND";
|
||||
break;
|
||||
default:
|
||||
devfs_add_partition("nor0", 0x00000, 0x40000, PARTITION_FIXED, "self0");
|
||||
devfs_add_partition("nor0", 0x40000, 0x20000, PARTITION_FIXED, "env0");
|
||||
devfs_add_partition("nor0", 0x00000, 0x80000,
|
||||
PARTITION_FIXED, "self0");
|
||||
devfs_add_partition("nor0", 0x80000, 0x100000,
|
||||
PARTITION_FIXED, "env0");
|
||||
protect_file("/dev/env0", 1);
|
||||
|
||||
envdev = "NOR";
|
||||
|
|
|
@ -123,7 +123,7 @@ static void __init pm_add_device_dm9000(void)
|
|||
IORESOURCE_MEM_16BIT, &dm9000_data);
|
||||
}
|
||||
#else
|
||||
static void __init ek_add_device_dm9000(void) {}
|
||||
static void __init pm_add_device_dm9000(void) {}
|
||||
#endif /* CONFIG_DRIVER_NET_DM9K */
|
||||
|
||||
static int pm9261_mem_init(void)
|
||||
|
|
|
@ -296,9 +296,9 @@ void at91_add_device_mci(short mmc_id, struct atmel_mci_platform_data *data) {}
|
|||
|
||||
#if defined(CONFIG_DRIVER_SPI_ATMEL)
|
||||
/* SPI */
|
||||
static const unsigned spi0_standard_cs[4] = { AT91_PIN_PB3, AT91_PIN_PB18, AT91_PIN_PB19, AT91_PIN_PD27 };
|
||||
static unsigned spi0_standard_cs[4] = { AT91_PIN_PB3, AT91_PIN_PB18, AT91_PIN_PB19, AT91_PIN_PD27 };
|
||||
|
||||
static const unsigned spi1_standard_cs[4] = { AT91_PIN_PB17, AT91_PIN_PD28, AT91_PIN_PD18, AT91_PIN_PD19 };
|
||||
static unsigned spi1_standard_cs[4] = { AT91_PIN_PB17, AT91_PIN_PD28, AT91_PIN_PD18, AT91_PIN_PD19 };
|
||||
|
||||
static struct at91_spi_platform_data spi_pdata[] = {
|
||||
[0] = {
|
||||
|
|
|
@ -87,8 +87,6 @@ static int imx_25_35_boot_save_loc(void)
|
|||
return 0;
|
||||
}
|
||||
coredevice_initcall(imx_25_35_boot_save_loc);
|
||||
|
||||
BAREBOX_MAGICVAR(barebox_loc, "The source barebox has been booted from");
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_ARCH_IMX27)
|
||||
|
@ -114,6 +112,6 @@ static int imx_27_boot_save_loc(void)
|
|||
return 0;
|
||||
}
|
||||
coredevice_initcall(imx_27_boot_save_loc);
|
||||
#endif
|
||||
|
||||
BAREBOX_MAGICVAR(barebox_loc, "The source barebox has been booted from");
|
||||
#endif
|
||||
|
|
|
@ -240,11 +240,13 @@
|
|||
#define IMX_CS4_BASE 0xD4000000
|
||||
#define IMX_CS5_BASE 0xD6000000
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
static inline void imx27_setup_weimcs(size_t cs, unsigned upper, unsigned lower, unsigned addional)
|
||||
{
|
||||
CSxU(cs) = upper;
|
||||
CSxL(cs) = lower;
|
||||
CSxA(cs) = addional;
|
||||
}
|
||||
#endif /* __ASSEMBLY__ */
|
||||
|
||||
#endif /* _IMX27_REGS_H */
|
||||
|
|
|
@ -63,9 +63,13 @@
|
|||
|
||||
/* control pad's pull up / bit keeper feature */
|
||||
#define PE (1 << 10)
|
||||
#define BK (1 << 11) /* FIXME useful to distinguish? */
|
||||
#define PE_PRESENT(x) (!!((x) & PE))
|
||||
#define BK_PRESENT(x) (!!((x) & BK))
|
||||
#define PULLUP(x) ((x) << 13)
|
||||
#define BITKEEPER(x) ((x) << 14)
|
||||
#define GET_PULLUP(x) (!!((x) & (1 << 13)))
|
||||
#define GET_BITKEEPER(x) (!!((x) & BITKEEPER(1)))
|
||||
|
||||
/* control pad's voltage feature */
|
||||
#define VE (1 << 14)
|
||||
|
|
|
@ -22,4 +22,8 @@ typedef union {
|
|||
long long ll;
|
||||
} DWunion;
|
||||
|
||||
long long __lshrdi3(long long u, word_type b);
|
||||
long long __ashldi3(long long u, word_type b);
|
||||
long long __ashrdi3(long long u, word_type b);
|
||||
|
||||
#endif /* __ASM_LIBGCC_H */
|
||||
|
|
|
@ -144,6 +144,7 @@ SECTIONS
|
|||
.text : AT ( LOADADDR(.bootstrapping) + SIZEOF(.bootstrapping) ) {
|
||||
/* do not align here! It may fails with the LOADADDR! */
|
||||
_stext = .;
|
||||
_text = .;
|
||||
*(.text_entry*)
|
||||
__bare_init_start = .;
|
||||
*(.text_bare_init*)
|
||||
|
|
|
@ -11,7 +11,7 @@ if [ ! -e "$part" ]; then
|
|||
fi
|
||||
|
||||
if [ x$mode = xtftp -o x$mode = xnfs ]; then
|
||||
if [ x$ip = xdhcp ]; then
|
||||
if [ x$ip = xdhcp -o x$ip = "xdhcp-barebox" ]; then
|
||||
dhcp
|
||||
fi
|
||||
|
||||
|
|
|
@ -119,7 +119,9 @@ int mtd_ioctl(struct cdev *cdev, int request, void *buf)
|
|||
int ret = 0;
|
||||
struct mtd_info *mtd = cdev->priv;
|
||||
struct mtd_info_user *user = buf;
|
||||
#if (defined(CONFIG_NAND_ECC_HW) || defined(CONFIG_NAND_ECC_SOFT))
|
||||
struct mtd_ecc_stats *ecc = buf;
|
||||
#endif
|
||||
struct region_info_user *reg = buf;
|
||||
|
||||
switch (request) {
|
||||
|
|
|
@ -57,6 +57,9 @@ static int intel_flash_write_cfibuffer (struct flash_info *info, ulong dest, con
|
|||
int retcode;
|
||||
void *src = (void*)cp;
|
||||
void *dst = (void *)dest;
|
||||
/* reduce width due to possible alignment problems */
|
||||
const unsigned long ptr = (unsigned long)dest | (unsigned long)cp | info->portwidth;
|
||||
const int width = ptr & -ptr;
|
||||
|
||||
sector = find_sector (info, dest);
|
||||
flash_write_cmd (info, sector, 0, FLASH_CMD_CLEAR_STATUS);
|
||||
|
@ -68,22 +71,27 @@ static int intel_flash_write_cfibuffer (struct flash_info *info, ulong dest, con
|
|||
return retcode;
|
||||
|
||||
/* reduce the number of loops by the width of the port */
|
||||
cnt = len >> (info->portwidth - 1);
|
||||
cnt = len / width;
|
||||
|
||||
flash_write_cmd(info, sector, 0, (u32)cnt - 1);
|
||||
flash_write_cmd(info, sector, 0, cnt - 1);
|
||||
while (cnt-- > 0) {
|
||||
if (bankwidth_is_1(info)) {
|
||||
switch (width) {
|
||||
case 1:
|
||||
flash_write8(flash_read8(src), dst);
|
||||
src += 1, dst += 1;
|
||||
} else if (bankwidth_is_2(info)) {
|
||||
break;
|
||||
case 2:
|
||||
flash_write16(flash_read16(src), dst);
|
||||
src += 2, dst += 2;
|
||||
} else if (bankwidth_is_4(info)) {
|
||||
break;
|
||||
case 4:
|
||||
flash_write32(flash_read32(src), dst);
|
||||
src += 4, dst += 4;
|
||||
} else if (bankwidth_is_8(info)) {
|
||||
break;
|
||||
case 8:
|
||||
flash_write64(flash_read64(src), dst);
|
||||
src += 8, dst += 8;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -153,7 +153,7 @@ static int s3c_serial_probe(struct device_d *dev)
|
|||
struct s3c_uart *priv;
|
||||
struct console_device *cdev;
|
||||
|
||||
priv = xzalloc(sizeof(struct console_device));
|
||||
priv = xzalloc(sizeof(struct s3c_uart));
|
||||
cdev = &priv->cdev;
|
||||
priv->regs = dev_request_mem_region(dev, 0);
|
||||
dev->priv = priv;
|
||||
|
|
|
@ -1260,7 +1260,7 @@ static void pxa27x_change_configuration(struct pxa_udc *udc, int config)
|
|||
udc->driver->setup(&udc->gadget, &req);
|
||||
}
|
||||
|
||||
static void pxa27x_change_interface(struct pxa_udc *udc, int iface, int alt)
|
||||
static void __maybe_unused pxa27x_change_interface(struct pxa_udc *udc, int iface, int alt)
|
||||
{
|
||||
struct usb_ctrlrequest req;
|
||||
|
||||
|
@ -1473,9 +1473,9 @@ static struct pxa_udc memory = {
|
|||
}
|
||||
};
|
||||
|
||||
static int pxa27x_udc_poller(struct poller_struct *poller)
|
||||
static void pxa27x_udc_poller(struct poller_struct *poller)
|
||||
{
|
||||
return usb_gadget_poll();
|
||||
usb_gadget_poll();
|
||||
}
|
||||
static struct poller_struct poller = {
|
||||
.func = pxa27x_udc_poller
|
||||
|
|
|
@ -37,7 +37,7 @@ config DRIVER_VIDEO_S3C24XX
|
|||
help
|
||||
Add support for the S3C244x LCD controller.
|
||||
|
||||
if DRIVER_VIDEO_S3C
|
||||
if DRIVER_VIDEO_S3C24XX
|
||||
|
||||
config DRIVER_VIDEO_S3C_VERBOSE
|
||||
bool "S3C244x verbose framebuffer info"
|
||||
|
|
24
lib/string.c
24
lib/string.c
|
@ -420,30 +420,6 @@ void * memset(void * s,int c,size_t count)
|
|||
#endif
|
||||
EXPORT_SYMBOL(memset);
|
||||
|
||||
#ifndef __HAVE_ARCH_BCOPY
|
||||
/**
|
||||
* bcopy - Copy one area of memory to another
|
||||
* @src: Where to copy from
|
||||
* @dest: Where to copy to
|
||||
* @count: The size of the area.
|
||||
*
|
||||
* Note that this is the same as memcpy(), with the arguments reversed.
|
||||
* memcpy() is the standard, bcopy() is a legacy BSD function.
|
||||
*
|
||||
* You should not use this function to access IO space, use memcpy_toio()
|
||||
* or memcpy_fromio() instead.
|
||||
*/
|
||||
char * bcopy(const char * src, char * dest, int count)
|
||||
{
|
||||
char *tmp = dest;
|
||||
|
||||
while (count--)
|
||||
*tmp++ = *src++;
|
||||
|
||||
return dest;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifndef __HAVE_ARCH_MEMCPY
|
||||
/**
|
||||
* memcpy - Copy one area of memory to another
|
||||
|
|
Loading…
Reference in New Issue