9
0
Fork 0
Commit Graph

1859 Commits

Author SHA1 Message Date
Jean-Christophe PLAGNIOL-VILLARD 126c9b69cf device: introduce resource structure to simplify resource declaration
and add multi resource per device support

for now we keep the old map_base and size temporary but will switch all of
the used step by step to them resource way

and mirror the first resource to the map_base and size if available

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
2011-07-18 07:57:49 +08:00
Jean-Christophe PLAGNIOL-VILLARD 72685fe9e8 fix: commands/bootm.c:346:2: warning: statement with no effect
convert enable_interrupts() and disable_interrupts() to static inline
if no IRQ supoprt enable

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-07-17 17:42:21 +02:00
Franck Jullien 4c35079c1c spi: add bits_per_word to proxy structure
During the creation of a new spi device, we need to
have the possiblility to give the bits_per_word value
to master->setup.

As a matter of fact, spi master could check the spi
device bits_per_word and compare this value against its
capabilities.

Signed-off-by: Franck Jullien <franck.jullien@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-07-06 10:25:39 +02:00
Antony Pavlov 8a14eb2ead include/linux/stat.h: make struct stat unified
The current version of struct stat has been taken from an
ancient Linux Kernel. It looks different on different architectures
to support different userspace formats of struct stat. As we do
not have a userspace on barebox there is no need to keep different
versions.

Also, this unification make MIPS arch possible.

Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-06-28 08:36:37 +02:00
Carlo Caione 701edd4d98 shift and clocksource
Added clocks_calc_mult_shift()

Signed-off-by: Carlo Caione <carlo.caione@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-06-22 00:17:56 +02:00
Hubert Feurstein f568880f8f eeprom: add at25 eeprom driver
This commit adds support for most spi eeproms, such as the
Atmel at25 models.

Signed-off-by: Hubert Feurstein <h.feurstein@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-06-21 13:56:49 +02:00
Hubert Feurstein c0b9629867 spi: add more spi transfer functions
This commit adds the following spi transfer functions:
  - spi_write
  - spi_read
  - spi_write_then_read
  - spi_w8r8

The code has been ported from the linux kernel.

Signed-off-by: Hubert Feurstein <h.feurstein@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-06-21 13:56:49 +02:00
Hubert Feurstein 76f46b5619 spi: add platform_data pointer to spi_board_info
In the spi layer this pointer will be assigned to the
platform_data pointer of the new spi device, thus it can
be accessed in the drivers 'probe' handler.

Signed-off-by: Hubert Feurstein <h.feurstein@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-06-21 13:56:49 +02:00
Dirk Behme 59f06471ed pr_warn() must be pr_warning()
Fix the warning/error:

drivers/mci/mci-core.c: In function 'mci_card_probe':
drivers/mci/mci-core.c:1195: warning: implicit declaration of function 'pr_warn'
...
drivers/built-in.o: In function `mci_card_probe':
mc13892.c:(.text.mci_card_probe+0x68): undefined reference to `pr_warn'

Signed-off-by: Dirk Behme <dirk.behme@googlemail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-06-01 14:55:28 +02:00
Sascha Hauer cbe45748b2 Revert "fix printf warnings"
While getting rid of all the format(barebox_printf) warnings was nice,
it caused the printf calls in arch/sandbox/os/common.c to get directed
to the barebox versions rather than the libc ones causing a crash:

E.G. before this revert:
nm -a barebox|grep -w printf
0000000000404fa3 T print

And after:
nm -a barebox|grep -w printf
U printf@@GLIBC_2.2.5

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>

This reverts commit 6b082cfe9f.
2011-05-26 11:00:53 +02:00
Sascha Hauer 30eb4cdf17 Merge branch 'next' 2011-05-06 11:35:08 +02:00
Sascha Hauer 64476d2177 ARM: compile in image size and magic into barebox image
This is useful to detect a barebox image and to be able
to copy only the image size if barebox is stored on
raw partitions which are bigger than the image.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-05-06 08:53:26 +02:00
Marc Kleine-Budde 6b082cfe9f fix printf warnings
With sandbox printf is redefined as barebox_printf so that it does
not collide with the glibc printf. This leads to tons of

include/stdio.h:12:1: warning: ‘barebox_printf’ is an unrecognized format function type

warnings. This patch fixes this.

Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-25 11:15:52 +02:00
Sascha Hauer d354cee3d0 kfifo: kfifo_put takes a const buffer
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-12 09:54:56 +02:00
Sascha Hauer 8e8c61e786 move simple_itoa to libbb so that others can use it
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-12 09:54:56 +02:00
Sascha Hauer 9640c2b4a5 environment: make default env path configurable
Normally the default path to save the environment is /dev/env0. However,
we can't map a file in a fat filesystem to /dev/env0. So if we want to
store the environment in a file in fat we have to make it configurable.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-12 09:54:56 +02:00
Sascha Hauer c75ab78763 net: add a context to the packet handler
This is not yet used, but with this the different network
commands can get rid of their global data.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-12 09:54:56 +02:00
Sascha Hauer f880d7bc87 nand bb: add proper bb remove function
The old way happily removed cdev entries which were no bb dev
at all. Fix this by checking if the given device actually is
a bb device.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-12 09:54:56 +02:00
Sascha Hauer 2a37624950 malloc: put common memory functions to seperate file
These functions are needed independently of the specific
malloc implementation, so move them out.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-11 15:57:51 +02:00
Sascha Hauer 71a4899e18 env: Make environment variable support optional
Environment variables are only useful in interactive environments.
Make it optional on our way to support a noninteractive barebox.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-11 15:57:51 +02:00
Sascha Hauer 61f41e3c54 add block support
This adds a simple block layer to barebox. Reading and writing
to block devices can be painfully slow without caching, so
add a simple caching layer here.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-11 15:57:51 +02:00
Sascha Hauer 7c15f466df commands: seperate usb command from usb core
This patch makes the USB command optional and makes usb_rescan a
global function. This way we can use USB in noninteractive
environments.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-11 12:36:26 +02:00
Sascha Hauer 3f1ff6b730 move version_string to seperate file
In a noninteractive environment barebox will be compiled without
command support. So move version_string to a seperate file which
is compiled unconditionally.
Also, display the banner when the simple console support is used.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-11 12:36:08 +02:00
Sascha Hauer 5b27fcbde4 nand: remove unused header file
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-11 12:36:08 +02:00
Sascha Hauer 30be97aff2 devfs: factor out core devfs functionality
This makes it possible to compile without devfs. devfs_create/devfs_remove
is used by drivers and thus must still be present even without devfs support.
Also, this patch adds cdev_open/cdev_close/cdev_flush/cdev_ioctl calls to
work with devices without using the file api.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-11 12:36:07 +02:00
Sascha Hauer f1bb89fd9e fs: implement flush function
Once we have caching in file functions we need a way to sync
the the underlying devices.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-11 12:36:07 +02:00
Sascha Hauer 3efa8f7bed devfs: remove unused struct filep* argument from open/close
the cdev layer is under the file layer, so it should not use
struct filep*.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-11 12:36:07 +02:00
Sascha Hauer 5c44e3af24 fs: remove unused field 'type' from struct fs_driver_d
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-11 12:36:07 +02:00
Sascha Hauer 2e6a9440b9 nand: remove unused suspend/resume functions
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-04-04 16:40:16 +02:00
Baruch Siach c470225100 mtd/nand: increase page and oob size limits
Sync these limits with the Linux kernel. This allows support for NAND devices
with page size of 4k.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-03-18 08:29:21 +01:00
Sascha Hauer 3e48ef43ed Merge branch 'master' into next 2011-03-10 14:50:25 +01:00
Sascha Hauer f4491d7b04 kallsyms/printk: enable symbol printing support (%pS)
With this kallsyms finally start working at least on ARM. This
enables us resolving addresses into symbols which is particularly
useful in combination with stack unwinding support. As kallsyms
now compile and work we can remove the depends on BROKEN.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-03-10 14:50:16 +01:00
Juergen Beisert 1126f04e99 x86: Use the generic linker script initializing
Signed-off-by: Juergen Beisert <jbe@pengutronix.de>
2011-03-10 11:14:47 +01:00
Sascha Hauer 1979b5d49c reloc.h: remove linker variables which are now in asm/sections.h
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-01-17 11:05:14 +01:00
Sascha Hauer 92c1c6cfb1 add sections.h header file
The file location and variable names from the Linux Kernel have been
used here.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-01-17 11:04:24 +01:00
Sascha Hauer 2f0109b1bb Merge branch 'master' into next 2011-01-17 09:43:40 +01:00
Jean-Christophe PLAGNIOL-VILLARD be4146161b import swab.h arch implementation form linux v2.3.37
this will avoid __bswapsi2 issue see with gcc 4.5.1

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-01-17 09:39:16 +01:00
Sascha Hauer 0371229f3a usb: add missing byteorder include
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-01-07 10:38:36 +01:00
Krzysztof Halasa c5baa0edc4 Fix error handling with malloc, memalign etc. Introduce xmemalign().
The idea is to panic() when there is no memory available for normal
operation. Exception: code which can consume arbitrary amount of RAM
(example: files allocated in ramfs) must report error instead of panic().

This patch also fixes code which didn't check for NULL from malloc() etc.

Usage: malloc(), memalign() return NULL when out of RAM.
xmalloc(), xmemalign() always return non-NULL or panic().

Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2011-01-07 10:21:22 +01:00
Krzysztof Halasa 29ca79d0d5 Fix usage of __LITTLE_ENDIAN macro.
Fix usage of __LITTLE_ENDIAN macro.
Both __LITTLE_ENDIAN and __BIG_ENDIAN are always defined by
include/linux/byteorder/generic.h, checking for their existence is
pointless.

Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-21 09:02:41 +01:00
Krzysztof Halasa d66ae58cd8 Cosmetic fixes, including format attributes for printf() and friends.
Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-21 09:02:40 +01:00
Krzysztof Halasa 8f0daf3a7d Remove unused eth_get_name() prototype.
Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-21 09:02:40 +01:00
Juergen Beisert 30aa4efb57 Add the feature to change the video mode at runtime
This patch add the possibility to change the video mode at barebox's runtime
if the graphics driver in use supports it.

Signed-off-by: <jbe@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-21 08:26:08 +01:00
Juergen Beisert 799b06606b Add more useful generic macros
Stolen from the Linux kernel.

Signed-off-by: Juergen Beisert <jbe@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-21 08:26:08 +01:00
Sascha Hauer 50352ae9d9 Merge branch 'led' into next 2010-12-21 08:25:31 +01:00
Sascha Hauer 32558d1ae5 LED: Add LED trigger support
This patch allows to associate LEDs with certain triggers, such
as heartbeat or network activity.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-20 09:57:35 +01:00
Sascha Hauer 91d781f51d LED: Add gpio LED support
This patch adds support for registering gpios as LEDs.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-20 09:57:32 +01:00
Sascha Hauer 51271530d2 basic LED support
This patch adds core functionality for controlling LEDs.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-20 09:28:21 +01:00
Marc Kleine-Budde 0277a663bc Add generic poll infrastructure
Barebox does not have interrupt functionality. Nevertheless it's
sometimes useful to periodically call functions, like for example
a heartbeat LED or watchdog reset. Instead of cluttering the code
with calls to these functions this patch adds a generic polling
infrastructure. Code which might run for longer now can call
poller_call() periodically which in turn will call all registered
pollers.
This patch adds a call to poller_call in two generic pathes. First
of them is getc() which covers waiting for uart input. Second is
ctrlc() which should be called anyway from code which might run
for longer. So instead adding poller_call directly to your code,
consider checking ctrlc instead which also gives additional
convenience to the user.
The poller code is safe against reentrancy which means that it's
safe to call poller_call inside a poller.

Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-20 09:28:21 +01:00
Juergen Beisert f3d7fe0673 Add macro for correct rounding in integer devisions
Just stolen from Linux.

Signed-off-by: Juergen Beisert <jbe@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2010-12-14 15:15:06 +01:00