08 Mar, 2014

6 commits


05 Mar, 2014

34 commits

  • Tom Rini
     
  • omap_elm.h is a generic header used by OMAP ELM driver for all TI platfoms.
    Hence this file should be present in generic folder instead of architecture
    specific include folder.
    Build tested using: ./MAKEALL -s am33xx -s omap3 -s omap4 -s omap5

    Signed-off-by: Pekon Gupta

    pekon gupta
     
  • omap_gpmc.h is a generic header used by OMAP NAND driver for all TI platfoms.
    Hence this file should be present in generic folder instead of architecture
    specific include folder.
    Build tested using: ./MAKEALL -s am33xx -s omap3 -s omap4 -s omap5

    Signed-off-by: Pekon Gupta

    pekon gupta
     
  • Each SoC platform (AM33xx, OMAP3, OMAP4, OMAP5) has its own copy of GPMC related
    defines and declarations scattered in SoC platform specific header files
    like include/asm/arch-xx/cpu.h
    However, GPMC hardware remains same across all platforms thus this patch merges
    GPMC data scattered across different arch-xx specific header files into single
    header file include/asm/arch/omap_gpmc.h

    Build tested using: ./MAKEALL -s am33xx -s omap3 -s omap4 -s omap5

    Signed-off-by: Pekon Gupta

    pekon gupta
     
  • OMAP NAND driver can detect Page-size and OOB-size of NAND device from ONFI
    params or nand_id[] table. And based on that it defines ECC layout.
    This patch
    1) removes following board configs used for defining NAND ECC layout
    - GPMC_NAND_ECC_LP_x16_LAYOUT (for large page x16 NAND)
    - GPMC_NAND_ECC_LP_x8_LAYOUT (for large page x8 NAND)
    - GPMC_NAND_ECC_SP_x16_LAYOUT (for small page x16 NAND)
    - GPMC_NAND_ECC_SP_x8_LAYOUT (for small page x8 NAND)

    2) removes unused #defines in common omap_gpmc.h depending on above configs

    Build tested using: ./MAKEALL -s am33xx -s omap3 -s omap4 -s omap5

    Signed-off-by: Pekon Gupta

    pekon gupta
     
  • Currently there are two sets of omap_gpmc.h header files
    (a) arch/arm/include/asm/omap_gpmc.h
    common header file for all platforms, containing defines and declarations used
    by GPMC NAND driver.

    (b) arch/arm/include/asm/arch-xx/omap_gpmc.h
    SoC platform specific header file containing defines like ECC layout.

    This patch removes platform specific arch-xx/omap_gpmc.c because:
    - GPMC hardware engine is common for all SoC platforms hence only (a) is enough
    - ECC layout is now defined in omap_nand.c driver itself based on ecc-scheme
    selected. Hence all ECC layout declarations in (b) are redundant.

    Build tested using: ./MAKEALL -s am33xx -s omap3 -s omap4 -s omap5

    Signed-off-by: Pekon Gupta

    pekon gupta
     
  • Tom Rini
     
  • README.malta referred to board/malta, but malta has now been moved
    within board/imgtec/, so correct the path.

    Signed-off-by: James Hogan
    Cc: Daniel Schwierzeck
    Cc: Paul Burton

    James Hogan
     
  • Linux MIPS uses asm-generic/int-ll64.h in asm/types.h.
    Thus u64 and __u64 are defined as unsigned long long. Port this
    over to U-Boot.

    Signed-off-by: Daniel Schwierzeck

    Daniel Schwierzeck
     
  • There are no source files in board/synopsys/arcangel4/
    directory.

    Signed-off-by: Masahiro Yamada
    Cc: Alexey Brodkin

    Masahiro Yamada
     
  • U-Boot has compelled all boards to have
    board/${BOARD}/ or board/${VENDOR}/${BOARD}/ directory.

    Sometimes it does not seem suitable for some boards,
    for example Sandbox. (Is it a board?)

    And arcangel4 board has nothing to compile
    under the board directory.

    This commit makes the build system more flexible:
    If '' is given to the 6th column (=Board name) of boards.cfg,
    Kbuild will not descend into the board directory.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     
  • LOGO_BMP was never overwritten by board-specific or
    vendor-specific logos.

    Signed-off-by: Masahiro Yamada
    Reported-by: Bo Shen
    Tested-by: Bo Shen

    Masahiro Yamada
     
  • Programs in tools/ directory are usually built for the host.
    But some of them (mkimage, dumpimge, gen_eth_addr, etc.) are
    useful on the target OS too.

    Actually, prior to Kbuild, U-Boot could build tools for
    the target like follows:

    $ make _config
    $ export CROSS_COMPILE=
    $ make HOSTCC=${CROSS_COMPILE}gcc HOSTSTRIP=${CROSS_COMPILE}strip tools

    In Kbuild, we can no longer replace HOSTCC at the command line.

    In order to get back that feature, this commit adds "cross-tools" target.

    Usage:

    Build tools for the host
    $ make CROSS_COMPILE= tools

    Build tools for the target
    $ make CROSS_COMPILE= cross_tools

    Besides, "make cross_tools" strip tools programs because we
    generally expect smaller storages on embedded systems.

    Signed-off-by: Masahiro Yamada
    Reported-by: Heiko Schocher
    Cc: Wolfgang Denk
    Cc: Tom Rini
    Tested-by: Heiko Schocher
    Acked-by: Heiko Schocher

    Masahiro Yamada
     
  • The top Makefile must export HOST_TOOLS_ALL to use it
    in tools/Makefile.

    Signed-off-by: Masahiro Yamada
    Tested-by: Heiko Schocher
    Acked-by: Heiko Schocher

    Masahiro Yamada
     
  • config.tmp is not there.

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     
  • Ignore
    - board/cray/L1/bootscript.{c|image}
    - board/matrix_vision/mvblm7/bootscript.img
    - board/maxtir_vision/mvsmr/bootscript.img

    Signed-off-by: Masahiro Yamada
    Cc: Andre Schwarz

    Masahiro Yamada
     
  • The same outputs are generated with or without -I$(TOPDIR)/board.
    I cannot understand why it is necessary. Remove.

    Signed-off-by: Masahiro Yamada
    Cc: Daniel Hellstrom

    Masahiro Yamada
     
  • The syntax
    CROSS_COMIPLE ?=
    does not work because config.mk is parsed after
    exporting CROSS_COMPILE.

    Like Linux Kernel's arch/$(ARCH)/Makefile,
    we must write as follows:

    ifeq ($(CROSS_COMPILE),)
    CROSS_COMPILE :=
    endif

    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     
  • We had switched to Kbuild so now we can specify
    PLATFORM_LIBS/PLATFORM_LIBGCC with relative path.

    Signed-off-by: Masahiro Yamada
    Acked-by: Tom Rini
    Acked-by: Simon Glass
    Tested-by: Simon Glass

    Masahiro Yamada
     
  • Update to v3.14-rc4's version of checkpatch.pl. In doing so we drop the
    changes to top_of_kernel_tree() as we pass in --no-tree and drop our
    changes about MAINTAINERS as that's for reporting checkpatch.pl problems
    itself (and upstream has said they'll reword this section to be
    clearer).

    Signed-off-by: Tom Rini

    Tom Rini
     
  • Add 64-bit data for memory commands, such as md, mw, mm, cmp. The new
    size ".q " is introduced.

    For 64-bit architecture, 64-bit data is enabled by default, by detecting
    compiler __LP64__. It is optional for other architectures.

    Signed-off-by: York Sun

    York Sun
     
  • This documentation pertains to the planned implementation of driver model
    in U-Boot for each subsystem, but it has not been superseded. It is
    probably better to have this documentation in the source code for each
    subsystem where possible, so that docbook will pick it up. Where this does
    not make sense, new documentation can be placed in some suitable file in
    doc/driver-model.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • Now that named GPIO banks are supported, along with a way of obtaining
    the status of a GPIO (input or output), we can provide an enhanced
    GPIO command for driver model. Where the driver provides its own operation
    for obtaining the GPIO state, this is used, otherwise a generic version
    is sufficient.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • Convert sandbox over to use driver model GPIOs.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • Add driver model support for GPIOs. Since existing GPIO drivers do not use
    driver model, this feature must be enabled by CONFIG_DM_GPIO. After all
    GPO drivers are converted over we can perhaps remove this config.

    Tests are provided for the sandbox implementation, and are a sufficient
    sanity check for basic operation.

    The GPIO uclass understands the concept of named banks of GPIOs, with each
    GPIO device providing a single bank. Within each bank the GPIOs are numbered
    using an offset from 0 to n-1. For example a bank named 'b' with 20
    offsets will provide GPIOs named b0 to b19.

    Anonymous GPIO banks are also supported, and are just numbered without any
    prefix.

    Each time a GPIO driver is added to the uclass, the GPIOs are renumbered
    accordinging, so there is always a global GPIO numbering order.

    Signed-off-by: Simon Glass
    Signed-off-by: Marek Vasut
    Signed-off-by: Pavel Herrmann
    Signed-off-by: Viktor Křivák
    Signed-off-by: Tomas Hlavacek

    Simon Glass
     
  • As an example of how to write a uclass and a driver, provide a demo version
    of each, accessible through the 'demo' command.

    To use these with driver model, define CONFIG_CMD_DEMO and CONFIG_DM_DEMO.

    The two demo drivers are enabled with CONFIG_DM_DEMO_SIMPLE and
    CONFIG_DM_DEMO_SHAPE.

    Signed-off-by: Simon Glass
    Signed-off-by: Marek Vasut
    Signed-off-by: Pavel Herrmann
    Signed-off-by: Viktor Křivák
    Signed-off-by: Tomas Hlavacek

    Simon Glass
     
  • This command is not required for driver model operation, but can be useful
    for testing. It provides simple dumps of internal data structures.

    Signed-off-by: Simon Glass
    Signed-off-by: Marek Vasut
    Signed-off-by: Pavel Herrmann
    Signed-off-by: Viktor Křivák
    Signed-off-by: Tomas Hlavacek

    Simon Glass
     
  • Add some tests of driver model functionality. Coverage includes:

    - basic init
    - binding of drivers to devices using platform_data
    - automatic probing of devices when referenced
    - availability of platform data to devices
    - lifecycle from bind to probe to remove to unbind
    - renumbering within a uclass when devices are probed/removed
    - calling driver-defined operations
    - deactivation of drivers when removed
    - memory leak across creation and destruction of drivers/uclasses
    - uclass init/destroy methods
    - automatic probe/remove of children/parents when needed

    This function is enabled for sandbox, using CONFIG_DM_TEST.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • Make driver model available after relocation, by setting up data structures
    and scanning for devices using compiled-in platform_data and (when available)
    the device tree.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • Use driver model in sandbox to permit running of driver model unit test.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • Add driver model functionality for generic board.

    This includes data structures and base code for registering devices and
    uclasses (groups of devices with the same purpose, e.g. all I2C ports will
    be in the same uclass).

    The feature is enabled with CONFIG_DM.

    Signed-off-by: Simon Glass
    Signed-off-by: Marek Vasut
    Signed-off-by: Pavel Herrmann
    Signed-off-by: Viktor Křivák
    Signed-off-by: Tomas Hlavacek

    Simon Glass
     
  • This adds a README to help with understanding of this series.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • U-Boot already has a list implementation, and files which include both
    that and the yaffs implementation will get errors:

    In file included from ydirectenv.h:80:0,
    from yportenv.h:81,
    from yaffs_guts.h:19,
    from yaffs_allocator.h:19,
    from yaffs_allocator.c:14:
    yaffs_list.h:32:8: error: redefinition of ‘struct list_head’
    struct list_head {
    ^

    Remove the yaffs implementation.

    Signed-off-by: Simon Glass

    Simon Glass
     
  • U-Boot now uses errors defined in include/errno.h which are negative
    integers. Commands which fail need to report the error and return 1
    to indicate failure. Add this functionality in cmd_process_error().

    For now this merely reports the error number. It would be possible
    also to produce a helpful error message by storing the error strings
    in U-Boot.

    Signed-off-by: Simon Glass

    Simon Glass