29 Apr, 2015

1 commit


26 Mar, 2015

1 commit

  • board/sunxi/board.c tries to set ldo3 to 2.8v however drivers/power/axp209.c
    contains an incorrect limit on ldo3 of 2.275v

    The origin of the incorrect limit seems likely due to some inconsistencies
    in the axp209 datasheet. ldo3 is described with different limits in
    different sections. register 0x29 uses 7 bits for voltage configuration
    while the 2.275v limit would apply if only 6 bits were used.
    Probably this is a cut&paste error from register 0x23

    The linux kernel driver has the correct limit and operation up to the 2.8v
    required by my board has been physically verified with a multimeter.

    Signed-off-by: Iain Paton
    Acked-by: Hans de Goede
    Signed-off-by: Hans de Goede

    Iain Paton
     

10 Mar, 2015

1 commit

  • Some of the AXP PMICs support VBUS detection, i.e. checking whether
    VBUS power input is available and usable (supplied by an external
    source). A few boards use this instead of a separate GPIO to detect
    VBUS on USB OTG.

    Signed-off-by: Chen-Yu Tsai
    Acked-by: Hans de Goede
    Signed-off-by: Hans de Goede

    Chen-Yu Tsai
     

02 Feb, 2015

2 commits


30 Jan, 2015

2 commits


22 Jan, 2015

2 commits

  • And also add Kconfig option for selecting ELDO3 voltage. The reason
    for having this option is that the Android kernel sets ELDO3 to
    1.2V when powering up LCD in the case if 'lcd_if' configuration
    variable is set to 6 (LCD_IF_EXT_DSI) in the FEX file. Most likely
    to supply power for a SSD2828 chip.

    However on the MSI Primo81 tablet, which is using this particular
    'lcd_if = 6' setup for LCD, setting the ELDO3 voltage appears to
    be unnecessary and it works regardless. Having no schematics of
    this tablet, I can only guess that 1.2V is supplied to SSD2828
    in some other way.

    Signed-off-by: Siarhei Siamashka
    Acked-by: Hans de Goede
    Signed-off-by: Hans de Goede

    Siarhei Siamashka
     
  • We do not use the axp209 interrupt, and at least in my mini-x (which does not
    have a power button) the pwr-button pin and the irq pin are soldered together,
    so if the axp209 keeps it irq asserted too long it will see a 10s pwr-button
    press and hard power off the board, disabling the irqs fixes this.

    Signed-off-by: Hans de Goede
    Acked-by: Ian Campbell

    Hans de Goede
     

16 Jan, 2015

1 commit


14 Jan, 2015

10 commits

  • The axp221 / axp223's N_VBUSEN pin can be configured as an output rather
    then an input, add axp_drivebus_enable() and _disable() functions to set
    the pin in output mode and control it.

    Signed-off-by: Hans de Goede
    Acked-by: Ian Campbell

    Hans de Goede
     
  • The voltage setting code knows it needs to call axp221_init before calling
    the various voltage setting functions.

    But users of axp utility functions like axp221_get_sid() do not know this,
    so the utility functions always call axp221_init() to ensure that the
    p2wi / rsb setup magic has been done.

    Since doing this repeatedly is quite expensive, add a check to axp221_init
    so that it only does the initialization once.

    Signed-off-by: Hans de Goede
    Acked-by: Ian Campbell

    Hans de Goede
     
  • ALDO2 is used to power LPDDR2 SDRAM on both the reference design and the
    Hummingbird A31, when this type of RAM is present.

    Signed-off-by: Chen-Yu Tsai
    Acked-by: Hans de Goede
    Signed-off-by: Hans de Goede

    Chen-Yu Tsai
     
  • Some boards use GPIO-s on the pmic, one example of this is the A13-OLinuXino
    board, which uses gpio0 of the axp209 for the lcd-power signal.

    This commit adds support for gpio pins on the AXP209 pmic, the sunxi_gpio.c
    changes are universal, adding gpio support for the other AXP pmics (when
    necessary) should be a matter of adding the necessary axp_gpio_foo functions
    to their resp. drivers, and add "#define AXP_GPIO" to their header file.

    Note this commit only adds support for the non device-model version of the
    gpio code, patches for adding support to the device-model version are very
    welcome.

    The string representation for these gpio-s is AXP0-#, the 0 in the AXP0 prefix
    is there in case we need to support gpio-s on more then 1 pmic in the future.
    At least A80 boards have 2 pmics, and we may end up needing to support gpio-s
    on both.

    Signed-off-by: Hans de Goede
    Acked-by: Ian Campbell

    Hans de Goede
     
  • Explicitly turn off unused voltages, rather then leaving them as is. Likewise
    explictly enabled the dcdc convertors, rather then assuming they are already
    enabled at boot.

    Signed-off-by: Hans de Goede
    Acked-by: Ian Campbell

    Hans de Goede
     
  • The dcdc1 voltage is typically used as generic 3.3V IO voltage for things like
    GPIO-s, sdcard interfaces, etc. On most boards this is undervolted to 3.0V to
    safe battery, but not on all, make it configurable so that we can use the
    same settings as the original firmware on all boards.

    Signed-off-by: Hans de Goede
    Acked-by: Ian Campbell

    Hans de Goede
     
  • Some of the ldo-s of the axp221 are used in the same way on most boards, add
    comments to the Kconfig help text to reflect this, and give them defaults
    matching their typical usage.

    Signed-off-by: Hans de Goede
    Acked-by: Ian Campbell

    Hans de Goede
     
  • The axp223 appears to be the same as the axp221, except that it uses the
    rsb to communicate rather then the p2wi. At least all the registers we use
    are 100% the same.

    Signed-off-by: Hans de Goede
    Acked-by: Ian Campbell

    Hans de Goede
     
  • For sun6i the SID is stored in the pmic, rather then in the SoC itself,
    add a function to retreive the sid.

    Signed-off-by: Hans de Goede
    Acked-by: Ian Campbell

    Hans de Goede
     
  • This regulator is used with AM437x IDK to feed
    VDD_MPU, without means to scale VDD_MPU we can't
    support higher frequencies.

    Signed-off-by: Felipe Balbi

    Felipe Balbi
     

19 Dec, 2014

1 commit


12 Dec, 2014

1 commit

  • This converts all Tegra boards over to use driver model for I2C. The driver
    is adjusted to use driver model and the following obsolete CONFIGs are
    removed:

    - CONFIG_SYS_I2C_INIT_BOARD
    - CONFIG_I2C_MULTI_BUS
    - CONFIG_SYS_MAX_I2C_BUS
    - CONFIG_SYS_I2C_SPEED
    - CONFIG_SYS_I2C

    This has been tested on:
    - trimslice (no I2C)
    - beaver
    - Jetson-TK1

    It has not been tested on Tegra 114 as I don't have that board.

    Acked-by: Heiko Schocher
    Signed-off-by: Simon Glass

    Simon Glass
     

09 Dec, 2014

1 commit


08 Dec, 2014

1 commit


05 Dec, 2014

2 commits


17 Nov, 2014

1 commit


13 Nov, 2014

1 commit

  • The A31 uses the AXP221 pmic for various voltages.

    Signed-off-by: Oliver Schinagl
    Signed-off-by: Hans de Goede
    Acked-by: Ian Campbell
    --
    Changes in v2:
    -Rebase
    Changes in v3:
    -Add support for all dldo and aldo-s
    -Add Kconfig option to select building AXP221 and to select voltage of
    dldo and aldo-s
    Changes in v4:
    -Add axp221_setbits helper function
    -Use symbolic names for enabled bits in CTRL1 - CTRL3 registers

    Oliver Schinagl
     

08 Nov, 2014

1 commit

  • The pmic_spi_free function isn't ever used, and as the frameworks stand
    today, cannot be, so remove it. Integrate the probe function into
    pmic_reg as it's not really a "probe" today. Finally, add an err label
    for the common failure cases.

    Cc: Lukasz Majewski
    Cc: Przemyslaw Marczak
    Cc: Stefano Babic
    Signed-off-by: Tom Rini
    Acked-by: Stefano Babic

    Tom Rini
     

31 Oct, 2014

1 commit

  • This enables the VMMC2 LDO, which powers the MMC2 device.
    When the device starts from MMC2, this has already been enabled by the BootROM,
    but when starting from peripheral boot (USB, UART), it is not the case.

    Signed-off-by: Paul Kocialkowski
    Acked-by: Pantelis Antoniou

    Paul Kocialkowski
     

13 Oct, 2014

1 commit


08 Oct, 2014

2 commits


25 Sep, 2014

1 commit


08 Aug, 2014

1 commit


28 Jul, 2014

1 commit


26 Jul, 2014

1 commit


19 Jul, 2014

2 commits

  • Add support for the x-powers axp152 pmic which is found on most A10s boards
    and enable it for the r7-tv-dongle board.

    Signed-off-by: Henrik Nordstrom
    Signed-off-by: Ian Campbell
    Signed-off-by: Hans de Goede
    Acked-by: Ian Campbell

    Hans de Goede
     
  • Add support for the x-powers axp209 pmic which is found on most A10, A13 and
    A20 boards.

    And enable AXP209 support for the Cubietruck and Cubieboard boards.

    Signed-off-by: Henrik Nordstrom
    Signed-off-by: Hans de Goede
    Acked-by: Ian Campbell

    Henrik Nordstrom
     

02 Jul, 2014

1 commit