summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/arm/cpu/cpuinfo.c2
-rw-r--r--arch/arm/mach-imx/include/mach/devices-imx1.h1
-rw-r--r--arch/arm/mach-imx/include/mach/devices-imx21.h1
-rw-r--r--arch/arm/mach-imx/include/mach/devices-imx25.h1
-rw-r--r--arch/arm/mach-imx/include/mach/devices-imx27.h1
-rw-r--r--arch/arm/mach-imx/include/mach/devices-imx35.h1
-rw-r--r--arch/arm/mach-imx/include/mach/devices-imx51.h3
-rw-r--r--arch/arm/mach-imx/include/mach/devices-imx53.h1
-rw-r--r--arch/arm/mach-imx/include/mach/devices-imx6.h1
-rw-r--r--arch/arm/mach-imx/include/mach/generic.h3
-rw-r--r--arch/arm/mach-imx/include/mach/iomux-v1.h2
-rw-r--r--arch/arm/mach-imx/include/mach/weim.h2
-rw-r--r--arch/ppc/boards/.gitignore1
-rw-r--r--common/globalvar.c4
-rw-r--r--common/hush.c2
-rw-r--r--drivers/gpio/gpiolib.c95
-rw-r--r--drivers/mci/imx.c2
-rw-r--r--drivers/net/fec_imx.c1
-rw-r--r--include/environment.h2
-rw-r--r--include/fb.h1
-rw-r--r--include/filetype.h2
-rw-r--r--include/globalvar.h4
-rw-r--r--include/i2c/i2c.h3
-rw-r--r--include/image.h2
-rw-r--r--include/linux/phy.h1
-rw-r--r--include/mfd/mc13xxx.h2
-rw-r--r--include/net.h2
-rw-r--r--include/notifier.h2
-rw-r--r--include/partition.h3
-rw-r--r--include/spi/spi.h1
30 files changed, 94 insertions, 55 deletions
diff --git a/arch/arm/cpu/cpuinfo.c b/arch/arm/cpu/cpuinfo.c
index 3c8fe4147f..8aea4b472d 100644
--- a/arch/arm/cpu/cpuinfo.c
+++ b/arch/arm/cpu/cpuinfo.c
@@ -155,7 +155,7 @@ static int do_cpuinfo(int argc, char *argv[])
implementer, architecture);
if (cache & (1 << 24)) {
- /* seperate I/D cache */
+ /* separate I/D cache */
printf("I-cache: ");
decode_cache(cache & 0xfff);
printf("D-cache: ");
diff --git a/arch/arm/mach-imx/include/mach/devices-imx1.h b/arch/arm/mach-imx/include/mach/devices-imx1.h
index 391c1a9c8e..e4185bc281 100644
--- a/arch/arm/mach-imx/include/mach/devices-imx1.h
+++ b/arch/arm/mach-imx/include/mach/devices-imx1.h
@@ -1,4 +1,5 @@
#include <mach/devices.h>
+#include <mach/imx1-regs.h>
static inline struct device_d *imx1_add_uart0(void)
{
diff --git a/arch/arm/mach-imx/include/mach/devices-imx21.h b/arch/arm/mach-imx/include/mach/devices-imx21.h
index ad7ee5ed02..5b2dfd7505 100644
--- a/arch/arm/mach-imx/include/mach/devices-imx21.h
+++ b/arch/arm/mach-imx/include/mach/devices-imx21.h
@@ -1,5 +1,6 @@
#include <mach/devices.h>
+#include <mach/imx21-regs.h>
static inline struct device_d *imx21_add_uart0(void)
{
diff --git a/arch/arm/mach-imx/include/mach/devices-imx25.h b/arch/arm/mach-imx/include/mach/devices-imx25.h
index a655be9564..5b582b88cd 100644
--- a/arch/arm/mach-imx/include/mach/devices-imx25.h
+++ b/arch/arm/mach-imx/include/mach/devices-imx25.h
@@ -1,5 +1,6 @@
#include <mach/devices.h>
+#include <mach/imx25-regs.h>
static inline struct device_d *imx25_add_i2c0(struct i2c_platform_data *pdata)
{
diff --git a/arch/arm/mach-imx/include/mach/devices-imx27.h b/arch/arm/mach-imx/include/mach/devices-imx27.h
index d6c884a30a..87a3a7cc1c 100644
--- a/arch/arm/mach-imx/include/mach/devices-imx27.h
+++ b/arch/arm/mach-imx/include/mach/devices-imx27.h
@@ -1,5 +1,6 @@
#include <mach/devices.h>
+#include <mach/imx27-regs.h>
static inline struct device_d *imx27_add_spi0(struct spi_imx_master *pdata)
{
diff --git a/arch/arm/mach-imx/include/mach/devices-imx35.h b/arch/arm/mach-imx/include/mach/devices-imx35.h
index 912c41872e..766610de9d 100644
--- a/arch/arm/mach-imx/include/mach/devices-imx35.h
+++ b/arch/arm/mach-imx/include/mach/devices-imx35.h
@@ -1,5 +1,6 @@
#include <mach/devices.h>
+#include <mach/imx35-regs.h>
static inline struct device_d *imx35_add_i2c0(struct i2c_platform_data *pdata)
{
diff --git a/arch/arm/mach-imx/include/mach/devices-imx51.h b/arch/arm/mach-imx/include/mach/devices-imx51.h
index ec8467ae9c..00644788a7 100644
--- a/arch/arm/mach-imx/include/mach/devices-imx51.h
+++ b/arch/arm/mach-imx/include/mach/devices-imx51.h
@@ -1,6 +1,7 @@
-#include <mach/devices.h>
#include <sizes.h>
+#include <mach/devices.h>
+#include <mach/imx51-regs.h>
static inline struct device_d *imx51_add_spi0(struct spi_imx_master *pdata)
{
diff --git a/arch/arm/mach-imx/include/mach/devices-imx53.h b/arch/arm/mach-imx/include/mach/devices-imx53.h
index 5bdcf32291..df14654865 100644
--- a/arch/arm/mach-imx/include/mach/devices-imx53.h
+++ b/arch/arm/mach-imx/include/mach/devices-imx53.h
@@ -1,5 +1,6 @@
#include <mach/devices.h>
+#include <mach/imx53-regs.h>
static inline struct device_d *imx53_add_spi0(struct spi_imx_master *pdata)
{
diff --git a/arch/arm/mach-imx/include/mach/devices-imx6.h b/arch/arm/mach-imx/include/mach/devices-imx6.h
index b6b538a95b..7d41d7f02b 100644
--- a/arch/arm/mach-imx/include/mach/devices-imx6.h
+++ b/arch/arm/mach-imx/include/mach/devices-imx6.h
@@ -1,4 +1,5 @@
#include <mach/devices.h>
+#include <mach/imx6-regs.h>
static inline struct device_d *imx6_add_uart0(void)
{
diff --git a/arch/arm/mach-imx/include/mach/generic.h b/arch/arm/mach-imx/include/mach/generic.h
index 189b32f2c3..9958cb2f3f 100644
--- a/arch/arm/mach-imx/include/mach/generic.h
+++ b/arch/arm/mach-imx/include/mach/generic.h
@@ -1,6 +1,9 @@
#ifndef __MACH_GENERIC_H
#define __MACH_GENERIC_H
+#include <linux/compiler.h>
+#include <linux/types.h>
+
u64 imx_uid(void);
void imx25_boot_save_loc(void __iomem *ccm_base);
diff --git a/arch/arm/mach-imx/include/mach/iomux-v1.h b/arch/arm/mach-imx/include/mach/iomux-v1.h
index 55fbcdb94e..49dcecd1de 100644
--- a/arch/arm/mach-imx/include/mach/iomux-v1.h
+++ b/arch/arm/mach-imx/include/mach/iomux-v1.h
@@ -1,6 +1,8 @@
#ifndef __MACH_IOMUX_V1_H__
#define __MACH_IOMUX_V1_H__
+#include <linux/compiler.h>
+
#define GPIO_PIN_MASK 0x1f
#define GPIO_PORT_SHIFT 5
diff --git a/arch/arm/mach-imx/include/mach/weim.h b/arch/arm/mach-imx/include/mach/weim.h
index 8d572dc0bf..3fbbb6ba8e 100644
--- a/arch/arm/mach-imx/include/mach/weim.h
+++ b/arch/arm/mach-imx/include/mach/weim.h
@@ -1,6 +1,8 @@
#ifndef __MACH_WEIM_H
#define __MACH_WEIM_H
+#include <linux/types.h>
+
void imx27_setup_weimcs(size_t cs, unsigned upper, unsigned lower,
unsigned additional);
diff --git a/arch/ppc/boards/.gitignore b/arch/ppc/boards/.gitignore
new file mode 100644
index 0000000000..d1165788c9
--- /dev/null
+++ b/arch/ppc/boards/.gitignore
@@ -0,0 +1 @@
+barebox.lds
diff --git a/common/globalvar.c b/common/globalvar.c
index a8aaa72553..abcd881adf 100644
--- a/common/globalvar.c
+++ b/common/globalvar.c
@@ -22,7 +22,7 @@ int globalvar_add(const char *name,
* get a concatenated string of all globalvars beginning with 'match'.
* This adds whitespaces between the different globalvars
*/
-char *globalvar_get_match(const char *match, const char *seperator)
+char *globalvar_get_match(const char *match, const char *separator)
{
char *val = NULL;
struct param_d *param;
@@ -31,7 +31,7 @@ char *globalvar_get_match(const char *match, const char *seperator)
if (!strncmp(match, param->name, strlen(match))) {
const char *p = dev_get_param(&global_device, param->name);
if (val) {
- char *new = asprintf("%s%s%s", val, seperator, p);
+ char *new = asprintf("%s%s%s", val, separator, p);
free(val);
val = new;
} else {
diff --git a/common/hush.c b/common/hush.c
index b5e111a019..a3235ba19f 100644
--- a/common/hush.c
+++ b/common/hush.c
@@ -1959,7 +1959,7 @@ BAREBOX_CMD_START(getopt)
BAREBOX_CMD_END
#endif
-BAREBOX_MAGICVAR(PATH, "colon seperated list of pathes to search for executables");
+BAREBOX_MAGICVAR(PATH, "colon separated list of pathes to search for executables");
#ifdef CONFIG_HUSH_FANCY_PROMPT
BAREBOX_MAGICVAR(PS1, "hush prompt");
#endif
diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
index 6398268eae..ca6e8adab4 100644
--- a/drivers/gpio/gpiolib.c
+++ b/drivers/gpio/gpiolib.c
@@ -1,3 +1,5 @@
+#define pr_fmt(fmt) "gpiolib: " fmt
+
#include <init.h>
#include <common.h>
#include <command.h>
@@ -32,20 +34,30 @@ static int gpio_ensure_requested(struct gpio_info *gi, int gpio)
return gpio_request(gpio, "gpio");
}
+static struct gpio_info *gpio_to_desc(unsigned gpio)
+{
+ if (gpio_is_valid(gpio))
+ if (gpio_desc[gpio].chip)
+ return &gpio_desc[gpio];
+
+ pr_warning("invalid GPIO %d\n", gpio);
+
+ return NULL;
+}
+
int gpio_request(unsigned gpio, const char *label)
{
- struct gpio_info *gi = &gpio_desc[gpio];
- struct gpio_chip *chip = gi->chip;
+ struct gpio_info *gi = gpio_to_desc(gpio);
int ret;
- if (!gpio_is_valid(gpio))
- return -EINVAL;
- if (!chip)
- return -EINVAL;
+ if (!gi)
+ return -ENODEV;
+
if (gi->requested)
return -EBUSY;
- if (chip->ops->request) {
- ret = chip->ops->request(chip, gpio - chip->base);
+
+ if (gi->chip->ops->request) {
+ ret = gi->chip->ops->request(gi->chip, gpio - gi->chip->base);
if (ret)
return ret;
}
@@ -58,17 +70,16 @@ int gpio_request(unsigned gpio, const char *label)
void gpio_free(unsigned gpio)
{
- struct gpio_info *gi = &gpio_desc[gpio];
- struct gpio_chip *chip = gi->chip;
+ struct gpio_info *gi = gpio_to_desc(gpio);
- if (!gpio_is_valid(gpio))
- return;
- if (!chip)
+ if (!gi)
return;
+
if (!gi->requested)
return;
- if (chip->ops->free)
- chip->ops->free(chip, gpio - chip->base);
+
+ if (gi->chip->ops->free)
+ gi->chip->ops->free(gi->chip, gpio - gi->chip->base);
gi->requested = false;
free(gi->label);
@@ -76,75 +87,71 @@ void gpio_free(unsigned gpio)
void gpio_set_value(unsigned gpio, int value)
{
- struct gpio_info *gi = &gpio_desc[gpio];
- struct gpio_chip *chip = gi->chip;
+ struct gpio_info *gi = gpio_to_desc(gpio);
- if (!gpio_is_valid(gpio))
- return;
- if (!chip)
+ if (!gi)
return;
+
if (gpio_ensure_requested(gi, gpio))
return;
- if (!chip->ops->set)
- return;
- chip->ops->set(chip, gpio - chip->base, value);
+
+ if (gi->chip->ops->set)
+ gi->chip->ops->set(gi->chip, gpio - gi->chip->base, value);
}
EXPORT_SYMBOL(gpio_set_value);
int gpio_get_value(unsigned gpio)
{
- struct gpio_info *gi = &gpio_desc[gpio];
- struct gpio_chip *chip = gi->chip;
+ struct gpio_info *gi = gpio_to_desc(gpio);
int ret;
- if (!gpio_is_valid(gpio))
- return -EINVAL;
- if (!chip)
+ if (!gi)
return -ENODEV;
+
ret = gpio_ensure_requested(gi, gpio);
if (ret)
return ret;
- if (!chip->ops->get)
+
+ if (!gi->chip->ops->get)
return -ENOSYS;
- return chip->ops->get(chip, gpio - chip->base);
+ return gi->chip->ops->get(gi->chip, gpio - gi->chip->base);
}
EXPORT_SYMBOL(gpio_get_value);
int gpio_direction_output(unsigned gpio, int value)
{
- struct gpio_info *gi = &gpio_desc[gpio];
- struct gpio_chip *chip = gi->chip;
+ struct gpio_info *gi = gpio_to_desc(gpio);
int ret;
- if (!gpio_is_valid(gpio))
- return -EINVAL;
- if (!chip)
+ if (!gi)
return -ENODEV;
+
ret = gpio_ensure_requested(gi, gpio);
if (ret)
return ret;
- if (!chip->ops->direction_output)
+
+ if (!gi->chip->ops->direction_output)
return -ENOSYS;
- return chip->ops->direction_output(chip, gpio - chip->base, value);
+ return gi->chip->ops->direction_output(gi->chip, gpio - gi->chip->base,
+ value);
}
EXPORT_SYMBOL(gpio_direction_output);
int gpio_direction_input(unsigned gpio)
{
- struct gpio_info *gi = &gpio_desc[gpio];
- struct gpio_chip *chip = gi->chip;
+ struct gpio_info *gi = gpio_to_desc(gpio);
int ret;
- if (!gpio_is_valid(gpio))
- return -EINVAL;
- if (!chip)
+ if (!gi)
return -ENODEV;
+
ret = gpio_ensure_requested(gi, gpio);
if (ret)
return ret;
- if (!chip->ops->direction_input)
+
+ if (!gi->chip->ops->direction_input)
return -ENOSYS;
- return chip->ops->direction_input(chip, gpio - chip->base);
+ return gi->chip->ops->direction_input(gi->chip, gpio - gi->chip->base);
}
EXPORT_SYMBOL(gpio_direction_input);
diff --git a/drivers/mci/imx.c b/drivers/mci/imx.c
index c98596434e..2bf48eb1d3 100644
--- a/drivers/mci/imx.c
+++ b/drivers/mci/imx.c
@@ -2,7 +2,7 @@
* This is a driver for the SDHC controller found in Freescale MX2/MX3
* SoCs. It is basically the same hardware as found on MX1 (imxmmc.c).
* Unlike the hardware found on MX1, this hardware just works and does
- * not need all the quirks found in imxmmc.c, hence the seperate driver.
+ * not need all the quirks found in imxmmc.c, hence the separate driver.
*
* Copyright (C) 2009 Ilya Yanok, <yanok@emcraft.com>
* Copyright (C) 2008 Sascha Hauer, Pengutronix <s.hauer@pengutronix.de>
diff --git a/drivers/net/fec_imx.c b/drivers/net/fec_imx.c
index 1a85d15b7b..25d8d8eef5 100644
--- a/drivers/net/fec_imx.c
+++ b/drivers/net/fec_imx.c
@@ -707,6 +707,7 @@ static int fec_probe(struct device_d *dev)
if (dev->device_node) {
ret = fec_probe_dt(dev, fec);
+ fec->phy_addr = -1;
} else if (pdata) {
fec->interface = pdata->xcv_type;
fec->phy_init = pdata->phy_init;
diff --git a/include/environment.h b/include/environment.h
index 7bdd213a52..ae1ecf5bd6 100644
--- a/include/environment.h
+++ b/include/environment.h
@@ -20,6 +20,8 @@
#ifndef _ENVIRONMENT_H_
#define _ENVIRONMENT_H_
+#include <linux/list.h>
+
/**
* Managment of a environment variable
*/
diff --git a/include/fb.h b/include/fb.h
index 23d6c6d025..df4ba8ebe7 100644
--- a/include/fb.h
+++ b/include/fb.h
@@ -3,6 +3,7 @@
#include <ioctl.h>
#include <param.h>
+#include <driver.h>
#define FB_VISUAL_TRUECOLOR 2 /* True color */
#define FB_VISUAL_PSEUDOCOLOR 3 /* Pseudo color (like atari) */
diff --git a/include/filetype.h b/include/filetype.h
index ee777acf99..c73c64aa60 100644
--- a/include/filetype.h
+++ b/include/filetype.h
@@ -1,6 +1,8 @@
#ifndef __FILE_TYPE_H
#define __FILE_TYPE_H
+#include <linux/string.h>
+
/*
* List of file types we know
*/
diff --git a/include/globalvar.h b/include/globalvar.h
index ddf885f18e..e3098bc403 100644
--- a/include/globalvar.h
+++ b/include/globalvar.h
@@ -8,7 +8,7 @@ int globalvar_add(const char *name,
int (*set)(struct device_d *dev, struct param_d *p, const char *val),
const char *(*get)(struct device_d *, struct param_d *p),
unsigned long flags);
-char *globalvar_get_match(const char *match, const char *seperator);
+char *globalvar_get_match(const char *match, const char *separator);
void globalvar_set_match(const char *match, const char *val);
#else
static inline int globalvar_add_simple(const char *name)
@@ -24,7 +24,7 @@ static inline int globalvar_add(const char *name,
return 0;
}
-static inline char *globalvar_get_match(const char *match, const char *seperator)
+static inline char *globalvar_get_match(const char *match, const char *separator)
{
return NULL;
}
diff --git a/include/i2c/i2c.h b/include/i2c/i2c.h
index 7b59a5102d..dab8dc59e0 100644
--- a/include/i2c/i2c.h
+++ b/include/i2c/i2c.h
@@ -16,6 +16,9 @@
#ifndef I2C_I2C_H
#define I2C_I2C_H
+#include <driver.h>
+#include <linux/types.h>
+
#ifndef DOXYGEN_SHOULD_SKIP_THIS
/*
diff --git a/include/image.h b/include/image.h
index 219419b12b..0c8a4b138d 100644
--- a/include/image.h
+++ b/include/image.h
@@ -89,7 +89,7 @@
#define IH_ARCH IH_ARCH_PPC
#elif defined(__ARM__)
#define IH_ARCH IH_ARCH_ARM
-#elif defined(__I386__) || defined(__x86_64__)
+#elif defined(__I386__) || defined(__x86_64__) || defined(__i386__)
#define IH_ARCH IH_ARCH_I386
#elif defined(__mips__)
#define IH_ARCH IH_ARCH_MIPS
diff --git a/include/linux/phy.h b/include/linux/phy.h
index 99c96390c7..8e60758ca3 100644
--- a/include/linux/phy.h
+++ b/include/linux/phy.h
@@ -15,6 +15,7 @@
#ifndef __PHY_H
#define __PHY_H
+#include <driver.h>
#include <linux/list.h>
#include <linux/ethtool.h>
#include <linux/mii.h>
diff --git a/include/mfd/mc13xxx.h b/include/mfd/mc13xxx.h
index 59042ebee6..cba85890c1 100644
--- a/include/mfd/mc13xxx.h
+++ b/include/mfd/mc13xxx.h
@@ -12,6 +12,8 @@
#ifndef __MFD_MC13XXX_H
#define __MFD_MC13XXX_H
+#include <linux/types.h>
+
#define MC13XXX_REG_IDENTIFICATION 0x07
#define MC13783_REG_INT_STATUS0 0x00
diff --git a/include/net.h b/include/net.h
index bb6b8fa281..72f02ce117 100644
--- a/include/net.h
+++ b/include/net.h
@@ -19,7 +19,9 @@
#include <stdlib.h>
#include <clock.h>
#include <led.h>
+#include <xfuncs.h>
#include <linux/phy.h>
+#include <linux/string.h> /* memcpy */
#include <asm/byteorder.h> /* for nton* / ntoh* stuff */
/* How often do we retry to send packages */
diff --git a/include/notifier.h b/include/notifier.h
index cb2be5f548..c83e28b156 100644
--- a/include/notifier.h
+++ b/include/notifier.h
@@ -1,6 +1,8 @@
#ifndef __NOTIFIER_H
#define __NOTIFIER_H
+#include <linux/list.h>
+
/*
* Notifer chains loosely based on the according Linux framework
*/
diff --git a/include/partition.h b/include/partition.h
index 8ad7490d85..32570530eb 100644
--- a/include/partition.h
+++ b/include/partition.h
@@ -1,7 +1,7 @@
#ifndef __PARTITION_H
#define __PARTITION_H
-struct device_d;
+#include <driver.h>
struct partition {
int num;
@@ -18,4 +18,3 @@ struct partition {
};
#endif /* __PARTITION_H */
-
diff --git a/include/spi/spi.h b/include/spi/spi.h
index 3da13e85ec..45fd22ce26 100644
--- a/include/spi/spi.h
+++ b/include/spi/spi.h
@@ -4,6 +4,7 @@
#ifndef DOXYGEN_SHOULD_SKIP_THIS
#include <driver.h>
+#include <linux/string.h>
struct spi_board_info {
char *name;