11 Mar, 2019

1 commit

  • We are currently using SC_R_LAST as a marker for imx8 power domain tree
    nodes without a resource attached. This value is compiled into dtb as
    part of the linux build and used by uboot.

    The SC_R_LAST constant changes frequently as SCFW resources are added
    (by design) and every time we need to update linux and uboot headers
    together or boot can fail.

    Fix this by replacing SC_R_LAST usage with a new constant SC_R_NONE
    defined to be 0xFFF0.

    Signed-off-by: Leonard Crestez
    Reviewed-by: Peng Fan
    (cherry picked from commit 93f302a6642adedfdd6336b22d08f32284539e35)

    Leonard Crestez
     

19 Feb, 2019

1 commit

  • When fspi is assigned to M4, we have to let the fspi probe failed when
    its power domain is failed to power up. Because not all devices have power
    domain (for example, external devices on the board). Current checking
    resource owner in power domain probe is not good, change to check it in
    power on.

    Signed-off-by: Ye Li
    (cherry picked from commit b62b82ad595a744f07306db4b88d644ae024872a)

    Ye Li
     

12 Feb, 2019

1 commit


14 Jun, 2018

1 commit

  • For all the devices used and set ACTIVE in U-Boot, U-Boot needs
    to power off all of them without the check of resource owner.

    When we create software partition before booting Linux, the resource
    own checkw will return false, and cause the power domain not powered
    off. If without the check of resource owner, the power domain in
    the other software partition could be powered off with parent
    partition could access child partition resources.

    Signed-off-by: Peng Fan
    (cherry picked from commit 3e29e8adace18035850be9d56cc277c64a221e85)

    Peng Fan
     

13 Jun, 2018

2 commits


23 May, 2018

1 commit


27 Apr, 2018

4 commits

  • Add off-on-delay-us for fixed regulator.

    Signed-off-by: Peng Fan
    (cherry picked from commit 53856166e9df6d2e204c5d0f3469b9333ecf734e)

    Peng Fan
     
  • Add power_domain_lookup_name interface to power domain uclass to find
    a power domain device by its DTB node name, not using its associated
    client device.

    Through this interface, we can operate the power domain devices directly.
    This is needed for non-DM drivers.

    Reviewed-by: Peng Fan
    Signed-off-by: Ye Li
    (cherry picked from commit f5fcb1903d935c2e1037b6a1fc61f1c290818727)

    Ye Li
     
  • Add the power domain DM driver for i.MX8, that it depends on the DTB
    power domain trees to generate the power domain provider devices. Users
    needs add power domain trees with property "compatible = "nxp,imx8-pd";"

    - When power on one PD device, the driver will power on its ancestor PD devices
    in power domain tree.

    - When power off on PD device, the driver will check its child PD devices first,
    only all child PD devices are off, then power off the current PD device. Then the
    driver checks sibling PD devices. If sibling PD devices are off, then it will power
    off parent PD device.

    - There is no counter maintained in this driver, but a state to hold current on/off
    state. So the request and free functions are empty.

    - The power domain implemetation in i.MX8 DTB set the "#power-domain-cells" to 0, so
    there is no ID binding with each PD device. We don't use "id" variable in
    struct power_domain. At same time, we have to set of_xlate to empty to bypass standard
    of_xlate in uclass driver.

    Reviewed-by: Peng Fan
    Signed-off-by: Ye Li
    (cherry picked from commit 19c5632dc481d0fe983a4699d263bc9fc14edfcf)

    Ye Li
     
  • Allow the dm driver be omited by SPL.
    Fix wrong config name for pfuze100 regulator.

    Signed-off-by: Peng Fan
    Signed-off-by: Ye Li

    Peng Fan
     

05 Mar, 2018

1 commit

  • Thomas reported U-Boot failed to build host tools if libfdt-devel
    package is installed because tools include libfdt headers from
    /usr/include/ instead of using internal ones.

    This commit moves the header code:
    include/libfdt.h -> include/linux/libfdt.h
    include/libfdt_env.h -> include/linux/libfdt_env.h

    and replaces include directives:
    #include -> #include
    #include -> #include

    Reported-by: Thomas Petazzoni
    Signed-off-by: Masahiro Yamada

    Masahiro Yamada
     

04 Feb, 2018

1 commit


24 Jan, 2018

2 commits


12 Jan, 2018

1 commit


01 Jan, 2018

1 commit


13 Dec, 2017

2 commits

  • Texas Instrument's TPS65910 PMIC contains 3 buck DC-DC converts, one
    boost DC-DC converter and 8 LDOs. This patch implements driver model
    support for the TPS65910 PMIC and its regulators making the get/set
    API for regulator value/enable available.
    This patch depends on the patch "am33xx: Add a function to query MPU
    voltage in uV" to build correctly. For boards relying on the DT
    include file tps65910.dtsi the v3 patch "power: extend prefix match
    to regulator-name property" and an appropriate regulator naming is
    also required.

    Signed-off-by: Felix Brack
    Reviewed-by: Simon Glass

    Felix Brack
     
  • This patch extends pmic_bind_children prefix matching. In addition to
    the node name the property regulator-name is used while trying to match
    prefixes. This allows assigning different drivers to regulator nodes
    named regulator@1 and regulator@10 for example.
    I have discarded the idea of using other properties then regulator-name
    as I do not see any benefit in using property compatible or even
    regulator-compatible. Of course I am open to change this if there are
    good reasons to do so.

    Signed-off-by: Felix Brack
    Reviewed-by: Simon Glass

    Felix Brack
     

04 Oct, 2017

1 commit

  • U-Boot widely uses error() as a bit noisier variant of printf().

    This macro causes name conflict with the following line in
    include/linux/compiler-gcc.h:

    # define __compiletime_error(message) __attribute__((error(message)))

    This prevents us from using __compiletime_error(), and makes it
    difficult to fully sync BUILD_BUG macros with Linux. (Notice
    Linux's BUILD_BUG_ON_MSG is implemented by using compiletime_assert().)

    Let's convert error() into now treewide-available pr_err().

    Done with the help of Coccinelle, excluing tools/ directory.

    The semantic patch I used is as follows:

    //
    @@@@
    -error
    +pr_err
    (...)
    //

    Signed-off-by: Masahiro Yamada
    Reviewed-by: Simon Glass
    [trini: Re-run Coccinelle]
    Signed-off-by: Tom Rini

    Masahiro Yamada
     

01 Oct, 2017

1 commit


22 Sep, 2017

1 commit


19 Sep, 2017

1 commit


12 Sep, 2017

3 commits


01 Aug, 2017

2 commits


29 Jul, 2017

3 commits

  • Convert this PMIC driver to driver model and fix up other users. The
    regulator and GPIO functions are now handled by separate drivers.

    Update nyan-big to work correct. Three boards will need to be updated by
    the maintainers: apalis-tk1, cei-tk1-som. Also the TODO in the code re
    as3722_sd_set_voltage() needs to be completed.

    Signed-off-by: Simon Glass
    Reviewed-by: Lukasz Majewski
    Tested-by: Marcel Ziswiler
    Tested-on: Jetson-TK1
    Tested-by: Stephen Warren

    Simon Glass
     
  • This pmic includes GPIOs which should have their own driver. Add
    a driver to support these.

    Signed-off-by: Simon Glass
    Reviewed-by: Lukasz Majewski
    Tested-by: Marcel Ziswiler
    Tested-on: Beaver, Jetson-TK1
    Tested-by: Stephen Warren

    Simon Glass
     
  • This pmic includes regulators which should have their own driver. Add
    a driver to support these.

    Signed-off-by: Simon Glass
    Reviewed-by: Lukasz Majewski
    Tested-by: Marcel Ziswiler
    Tested-on: Beaver, Jetson-TK1
    Tested-by: Stephen Warren

    Simon Glass
     

27 Jul, 2017

2 commits

  • The regulator_enable() should be called from upper layer like
    regulators_enable_boot_on(), remove it from pwm regulator driver.

    Signed-off-by: Kever Yang
    Acked-by: Philipp Tomsich
    Reviewed-by: Philipp Tomsich
    [fixed up typo in commit message:]
    Signed-off-by: Philipp Tomsich

    Kever Yang
     
  • The rkpwm reg order has fixed by below patch:
    e3ef41d rockchip: pwm: fix the register layout for the PWM controller

    We need to correct the parameter order for pwm_set_config() to make
    the pwm regulator works correctly.

    Signed-off-by: Kever Yang
    Acked-by: Philipp Tomsich
    Reviewed-by: Philipp Tomsich

    Kever Yang
     

19 Jul, 2017

7 commits