17 Feb, 2015

2 commits


12 Feb, 2015

2 commits


10 Feb, 2015

28 commits

  • Tom Rini
     
  • Tom Rini
     
  • Conflicts:
    include/splash.h

    Signed-off-by: Tom Rini

    Tom Rini
     
  • Tom Rini
     
  • lcd_logo() currently performs tasks well beyond just displaying the logo.
    It has code which displays splash image, it has logic which determines
    when the different display features are displayed, and it is coupled with
    the lcd console because it holds the responsibility of returning the
    lcd console base address.

    Make lcd_logo() just about the logo by:
    * Moving splash image display code into a dedicated function
    * Moving the logic regarding when various features are displayed to
    lcd_clear() (which is arguably not the correct name for housing such
    code either, but it is currently the most fitting location code wise)
    * Move the responsibility of setting the console base address to
    lcd_clear() too.

    Signed-off-by: Nikita Kiryanov
    Reviewed-by: Simon Glass
    Tested-by: Bo Shen
    Tested-by: Josh Wu
    Cc: Bo Shen
    Cc: Simon Glass
    Cc: Anatolij Gustschin

    Nikita Kiryanov
     
  • We now have api functions that can support compiling simplefb code as its own
    module. Since this code is not part of the display functionality, extract it
    to its own file.

    Raspberry Pi is updated to accommodate the changes.

    Signed-off-by: Nikita Kiryanov
    Acked-by: Stephen Warren
    Reviewed-by: Simon Glass
    Tested-by: Bo Shen
    Tested-by: Josh Wu
    Cc: Simon Glass
    Cc: Anatolij Gustschin
    Cc: Stephen Warren

    Nikita Kiryanov
     
  • The name "bitmap_plot" is misleading because it implies that this is a generic
    function capable of dealing with any bitmap, but its implementation only works
    with the logo data.

    Rename the function to better reflect this.

    Signed-off-by: Nikita Kiryanov
    Reviewed-by: Simon Glass
    Tested-by: Bo Shen
    Tested-by: Josh Wu
    Cc: Simon Glass
    Cc: Anatolij Gustschin

    Nikita Kiryanov
     
  • This cleanup mostly focuses on removing unnecessary whitespace and comments
    which are superfluous and/or do not conform to the coding style.

    Signed-off-by: Nikita Kiryanov
    Reviewed-by: Simon Glass
    Tested-by: Bo Shen
    Tested-by: Josh Wu
    Cc: Simon Glass
    Cc: Anatolij Gustschin

    Nikita Kiryanov
     
  • Remove unused includes.

    Signed-off-by: Nikita Kiryanov
    Reviewed-by: Simon Glass
    Tested-by: Bo Shen
    Tested-by: Josh Wu
    Cc: Bo Shen
    Cc: Simon Glass
    Cc: Anatolij Gustschin

    Nikita Kiryanov
     
  • Reduce the lcd_display_bitmap #ifdef complexity by extracting Atmel-specific
    code for setting cmap for bitmap images into a new function lcd_set_cmap().
    A default version is implemented with the remainder of the code.

    Signed-off-by: Nikita Kiryanov
    Reviewed-by: Simon Glass
    Tested-by: Bo Shen
    Tested-by: Josh Wu
    Cc: Bo Shen
    Cc: Simon Glass
    Cc: Anatolij Gustschin

    Nikita Kiryanov
     
  • Get rid of platform-specific #ifdefs in bitmap_plot() by moving the generic
    case of setting cmap into the weak lcd_logo_set_cmap().

    Signed-off-by: Nikita Kiryanov
    Reviewed-by: Simon Glass
    Tested-by: Bo Shen
    Tested-by: Josh Wu
    Cc: Bo Shen
    Cc: Simon Glass
    Cc: Anatolij Gustschin

    Nikita Kiryanov
     
  • Reduce the bitmap_plot #ifdef complexity by extracting MPC823-specific code for
    setting cmap into its own implementation of lcd_logo_set_cmap(), implemented in
    mpc8xx_lcd.c. In the MPC823 implementation, ARRAY_SIZE(bmp_logo_palette) is
    switched for BMP_LOGO_COLORS to avoid having to include bmp_logo_data.h, which
    would cause a compilation error because the logo data and palette arrays would
    be defined twice.

    This is a step towards cleaning bitmap_plot() of platform-specific code.

    Signed-off-by: Nikita Kiryanov
    Reviewed-by: Simon Glass
    Tested-by: Bo Shen
    Tested-by: Josh Wu
    Cc: Simon Glass
    Cc: Anatolij Gustschin

    Nikita Kiryanov
     
  • Reduce the bitmap_plot #ifdef complexity by extracting Atmel-specific code for
    setting cmap into a new function lcd_logo_set_cmap(), which is implemented in
    atmel_lcdfb driver and defined as part of common/lcd.c api with a weak dummy
    version. In the Atmel implementation, ARRAY_SIZE(bmp_logo_palette) is
    switched for BMP_LOGO_COLORS to avoid having to include bmp_logo_data.h, which
    would cause a compilation error because the logo data and palette arrays would
    be defined twice.

    This is a step towards cleaning bitmap_plot() of platform-specific code.

    Signed-off-by: Nikita Kiryanov
    Reviewed-by: Simon Glass
    Tested-by: Bo Shen
    Tested-by: Josh Wu
    Cc: Bo Shen
    Cc: Simon Glass
    Cc: Anatolij Gustschin

    Nikita Kiryanov
     
  • Reduce the amount of platform-specific code in common/lcd.c by moving MPC823
    implementation of fb_put_byte() to mpc8xx_lcd.c. Since we must also have a
    default implementation for everybody else, make the remainder of the code
    into a weak function.

    Signed-off-by: Nikita Kiryanov
    Reviewed-by: Simon Glass
    Tested-by: Bo Shen
    Tested-by: Josh Wu
    Cc: Simon Glass
    Cc: Anatolij Gustschin

    Nikita Kiryanov
     
  • Reduce the amount of platform-specific code in common/lcd.c by moving Atmel
    implementation of fb_put_word() to atmel_lcdfb.c. Since we must also have a
    default implementation for everybody else, make the remainder of the code
    into a weak function.

    Signed-off-by: Nikita Kiryanov
    Reviewed-by: Simon Glass
    Acked-by: Bo Shen
    Tested-by: Bo Shen
    Tested-by: Josh Wu
    Cc: Bo Shen
    Cc: Simon Glass
    Cc: Anatolij Gustschin

    Nikita Kiryanov
     
  • configuration_get_cmap() is multiple platform-specific functions stuffed into
    one function. Split it into multiple versions, and move each version to the
    appropriate driver to reduce the #ifdef complexity.

    Signed-off-by: Nikita Kiryanov
    Reviewed-by: Simon Glass
    Tested-by: Bo Shen
    Tested-by: Josh Wu
    Cc: Bo Shen
    Cc: Simon Glass
    Cc: Anatolij Gustschin

    Nikita Kiryanov
     
  • common/lcd code is full of platform-specific code and definitions, which
    ideally should reside with the respective driver code. Take a step towards that
    goal by moving platform-specific structs from lcd.h to their own header files.

    The structs for the generic case (the #else for all the platform-specific
    cases) is retained in lcd.h as the default case.

    Signed-off-by: Nikita Kiryanov
    Reviewed-by: Simon Glass
    Tested-by: Bo Shen
    Tested-by: Josh Wu
    Cc: Bo Shen
    Cc: Simon Glass
    Cc: Anatolij Gustschin

    Nikita Kiryanov
     
  • Currently by running the following test:

    => setenv bootcmd reset
    => save
    => reset

    , we observe a hang after approximately 20-30 minutes of stress reboot test.

    Investigation of this issue revealed that when a single DDR chip select is used,
    the hang does not happen. It only happens when the two chip selects are active.

    MX53 reference manual states at "28.6.2 Memory ZQ calibration sequence":

    "The controller must keep the memory lines quiet (except for CK) for the ZQ
    calibration time as defined in the Jedec (512 cycles for ZQCL after reset, 256
    for other ZQCL and 64 for ZQCS)."

    According to the SDE_0 and SDE_1 bit descriptions from register ESDCTL_ESDCTL:

    "Writing 1 to SDE0 or SDE1 will initiate power up delays as JEDEC defines.
    Power up delays are a function of the configured memory type (DDR2/DDR3/LPDDR2)"

    So make sure to activate one chip select at time (CS0 first and then CS1 later),
    so that the required JEDEC delay is respected for each chip select.

    With this change applied the board has gone through three days of reboot stress
    test without any hang.

    Signed-off-by: Fabio Estevam
    Acked-by: Stefano Babic

    Fabio Estevam
     
  • When booting in JTAG mode, there is no way to use soft break-points, and
    no way of knowing when SPL has finished executing (so the user can issue
    a 'halt' command to load u-boot.bin for example)

    Add a debug output and simple loop to stop execution at the completion of
    the SPL initialisation as a pseudo break-point when booting in JTAG mode

    Signed-off-by: Graeme Russ

    Graeme Russ
     
  • Section 4.1.2 of Freescale Application Note AN4199 describes the
    configuration required to operate the mx28 from a 5V source without a
    battery.

    This patch changes the behaviour of the dropout control of the DC-DC
    converter (refer to section 11.12.9 of the mx28 Application Processor
    Reference Manual - Document Number: MCIMX28RM, Rev 2, 08/2013) to the
    following:
    - Always use 4P2 Linear Regulator if CONFIG_SYS_MXS_VDD5V_ONLY is defined
    - Switch between 4P2 Linear Regulator and Battery, using whichever has
    the highest voltage if CONFIG_SYS_MXS_VDD5V_ONLY isnot set (this is
    the same as the pre-patch behaviour)

    Signed-off-by: Graeme Russ
    Signed-off-by: Damien Gotfroi

    Graeme Russ
     
  • It is difficult to track down fail to boot issues in the mxs SPL.
    Implement the following to make it easier:
    - Add debug outputs to allow tracing of SPL progress in order to track
    where failure to boot occurs. DEUBUG and CONFIG_SPL_SERIAL_SUPPORT must
    be defined to enable debug output in SPL
    - Add TODO comments where it is not clear if the code is doing what it
    is meant to be doing, even tough the board boots properly (these comments
    refer to existing code, not to any code added by this patch)

    Signed-off-by: Graeme Russ

    Graeme Russ
     
  • Should use AIPS3 configuration address 0x0227C000 to set AIPS3,
    not the AIPS3 base address.
    Additional, replace AIPS1_BASE_ADDR to AIPS3_ARB_BASE_ADDR to align with
    AIPS1 and AIPS2, and resolve the AIPS3_ARB_BASE_ADDR undefine problem.

    Signed-off-by: Ye.Li

    Ye.Li
     
  • Add QuadSPI boot support to imximage tool.

    Note: The QuadSPI configuration parameters at offset 0x400 are not
    included in this patch. Need other tools to generate the parameters
    part.

    Signed-off-by: Ye.Li

    Ye.Li
     
  • Since a clock function setup_gpmi_io_clk is implemented for GPMI
    IO clock settings, change to use this common function in GPMI setup.

    Signed-off-by: Ye.Li
    Acked-by: Stefano Babic

    Ye.Li
     
  • Add more pfuze register offset.
    And switch mode definition.

    Signed-off-by: Peng Fan

    Peng Fan
     
  • "#define PFUZE100_SW1ABC_SETP(x) ((x - 3000) / 250)"
    This macro is for configuring SW1A/B/C Output Voltage easily.

    Signed-off-by: Peng Fan

    Peng Fan
     
  • Update fuse_bank0_regs structure according reference mannual.

    Signed-off-by: Peng Fan

    Peng Fan
     
  • Tom Rini
     

09 Feb, 2015

8 commits