18 Feb, 2014

1 commit


14 Feb, 2014

1 commit

  • KMSUGP1 is from a u-boot perspective (almost) identical to KMNUSA.
    The only difference is that the PCIe reset is connected to Kirkwood pin
    MPP7_PEX_RST_OUTn, we use a dedicated config flag KM_PCIE_RESET_MPP7.
    Such pin should theoretically be handled by the PCIe subsystem
    automatically, but this turned out not to be the case.
    So simply configure this PIN as a GPIO and issue a pulse manually.

    Signed-off-by: Gerlando Falauto
    Cc: Karlheinz Jerg
    Cc: Valentin Longchamp
    Cc: Holger Brunck
    Acked-by: Valentin Longchamp

    Gerlando Falauto
     

13 Feb, 2014

5 commits

  • Add set_fdthigh subcommand to "subbootcmds" (release) so to set "fdt_high"
    This is necessary on Kirkwood so that the FDT does not get relocated
    above the memory limit that the kernel cannot access
    (that is the memory part reserved for the switch).
    This was tested on NUSA1, where it is necessary, and on ETER1, where it
    doesn't seem to hurt.

    We want the scripts to also work with older versions of u-boot, where:
    a) set_fdthigh is not defined (will be default env for newer u-boots)
    b) the fdt will not be available

    For this reason, we use "set_fdthigh" to tell whether we are running
    a newer (FDT-aware) u-boot or not.
    So if "set_fdthigh" runs successfully or arch != arm we try loading
    the fdt; otherwise we proceed normally.

    Notice how, contrary to release mode, set_fdthigh will _not_ be part of
    subbootcmds for develop and ramfs, but will be executed as part of
    "tftpfdt".

    Since this is only needed for kirkwood cards, and it prevents the kernel
    from booting on QorIQ (though it seemed to work on ETER1), we change
    its definition in the default env for powerpc so that the value is only
    set on ARM.

    Signed-off-by: Valentin Longchamp
    Signed-off-by: Gerlando Falauto
    Signed-off-by: Holger Brunck
    Acked-by: Valentin Longchamp

    Gerlando Falauto
     
  • This consists of:
    a) Defining the addresses, enabling fdtsupport [arm]
    b) Defining "cramfsloadfdt" [arm,powerpc => common]
    c) Adding the FDT address to bootm [arm,powerpc => common]
    d) Defining "tftpfdt" in ramfs-,develop- [arm,powerpc >= common]

    This should work with 3.10 kernels, whether loaded through TFTP
    (with rootfs either through NFS or TFTP-ramfs) or from the NAND.

    The machid was left unchanged, this should keep compatibility with both
    older and newer kernels.

    Signed-off-by: Valentin Longchamp
    Signed-off-by: Gerlando Falauto
    Signed-off-by: Holger Brunck
    Acked-by: Valentin Longchamp

    Gerlando Falauto
     
  • miiphy_read and miiphy_write are returning 0 on success.

    Signed-off-by: Holger Brunck
    Acked-by: Valentin Longchamp

    Holger Brunck
     
  • Signed-off-by: Holger Brunck
    Acked-by: Valentin Longchamp

    Holger Brunck
     
  • CONFIG_BOOTCOUNT_LIMIT is used on all boards from this board series. So
    remove this unneeded define.

    Signed-off-by: Holger Brunck
    Acked-by: Valentin Longchamp

    Holger Brunck
     

04 Feb, 2014

6 commits

  • The PEXHC PCIe configuration mechanism ensures that the FPGA get
    configured at power-up. Since all the PCIe devices should be configured
    when the kernel start, u-boot has to take care that the FPGA gets
    configured also in other reset scenarios, mostly because of possible
    configuration change.

    The used mechanism is taken from the km_kirkwood design and adapted to
    the kmp204x case (slightly different HW and PCIe configuration).

    Signed-off-by: Valentin Longchamp
    Reviewed-by: York Sun

    Valentin Longchamp
     
  • On the previous HW revision (now unsupported), there was a need for
    external DMA signals and thus the I2C3/4 signals were used
    DMA1_DONE/ACK/REQ.

    These signals now are configured as GPIO[16:19].

    Signed-off-by: Valentin Longchamp
    Reviewed-by: York Sun

    Valentin Longchamp
     
  • According to the errata, some bits of an undocumented register in the
    DCSR must be set for every core in order to avoid a possible data or
    instruction corruption.

    This is required for the 2.0 revision of the P2041 that should be used
    as soon as available in our design.

    Signed-off-by: Valentin Longchamp
    Reviewed-by: York Sun

    Valentin Longchamp
     
  • This patch adds support for using some GPIOs that are connected to the
    I2C bus to force the bus lines state and perform some bus deblocking
    sequences.

    The KM common deblocking algorithm from board/keymile/common/common.c is
    used. The GPIO lines used for deblocking the I2C bus are some external
    GPIOs provided by the QRIO CPLD:
    - SCL = GPIOA_20
    - SDA = GPIOA_21

    The QRIO GPIOs act in an open-drain-like manner, for 0 the line is
    driven low and for 1 the GPIO is set as input and the line gets
    pulled-up.

    Signed-off-by: Rainer Boschung
    Signed-off-by: Valentin Longchamp
    Reviewed-by: York Sun

    Rainer Boschung
     
  • The QRIO GPIO functions can be of general interest. They are thus added
    to a qrio.c and their prototype are available from kmp204x.h. The QRIO
    prst function are also included in this file, as well as the functions
    required for the I2C deblocking support (open-drain).

    Signed-off-by: Valentin Longchamp
    [York Sun: Remove extra blank line in board/keymile/kmp204x/qrio.c]
    Signed-off-by: York Sun

    Valentin Longchamp
     
  • Make use of the QRIO1 32bit register at 0x20 as bootcounter register
    Check for BOOTCOUNT_MAGIC pattern when before bootcounter value is read

    Signed-off-by: Rainer Boschung
    Signed-off-by: Valentin Longchamp
    [York Sun: Minor change to commit message]
    Signed-off-by: York Sun

    Rainer Boschung
     

26 Nov, 2013

1 commit


18 Nov, 2013

2 commits


01 Nov, 2013

4 commits


25 Oct, 2013

3 commits

  • This patch introduces the support for Keymile's kmp204x reference
    design. This design is based on Freescale's P2040/P2041 SoC.

    The peripherals used by this design are:
    - DDR3 RAM with SPD support
    - SPI NOR Flash as boot medium
    - NAND Flash
    - 2 PCIe busses (hosts 1 and 3)
    - 3 FMAN Ethernet devices (FMAN1 DTSEC1/2/5)
    - 3 Local Bus windows, with one dedicated to the QRIO reset/power mgmt
    FPGA
    - 2 HW I2C busses
    - last but not least, the mandatory serial port

    The board/keymile/kmp204x code is mostly based on Freescale's P2041rdb
    support and was changed according to our design (that means essentially
    removing what is not present on the designs and a few adaptations).

    There is currently only one prototype board that is based on this design
    and this patch also introduces it. The board is called kmlion1.

    Signed-off-by: Stefan Bigler
    Signed-off-by: Valentin Longchamp

    kmp204x: update the ENV #define

    The comments had to be refined as well as the total size

    Signed-off-by: Valentin Longchamp
    [York Sun: fix ddr.c]
    Acked-by: York Sun

    Valentin Longchamp
     
  • This must be defined by a board support file that want to use the
    keymile common.c board_eth_init function that requires ethernet_present
    to be defined.

    Currently all the km architectures use it but the kmp204x architecture
    later supported in this series does use another board_eth_init function
    and thus does not define it.

    Signed-off-by: Valentin Longchamp

    Valentin Longchamp
     
  • This must be defined for all the keymile boards that use the common
    i2c_abort function that is used to "reset" the I2C bus. These are
    currently km82xx and km_arm boards.

    The km83xx boards use other functions and thus do not need this.

    This patch removes the CONFIG_SYS_I2C_INIT_BOARD from keymile-common.h
    and defines it for km_arm.h and km82xx.h.

    Signed-off-by: Valentin Longchamp

    Valentin Longchamp
     

15 Oct, 2013

1 commit


09 Oct, 2013

3 commits


24 Jul, 2013

2 commits


23 Jul, 2013

3 commits


10 Jun, 2013

1 commit


22 May, 2013

2 commits


10 May, 2013

1 commit

  • Many boot image configuration files refer to the
    appropriate documentation file, but these references
    contain typos in the directory and file name. Fix
    them. Also fix reference to doc/README.SPL file.

    Signed-off-by: Anatolij Gustschin
    Cc: Prafulla Wadaskar
    Cc: Stefano Babic
    Acked-by: Stefano Babic

    Anatolij Gustschin
     

09 Mar, 2013

2 commits


16 Feb, 2013

2 commits