All of lore.kernel.org
 help / color / mirror / Atom feed
From: Przemyslaw Marczak <p.marczak@samsung.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v3 13/17] doc: driver-model: pmic and regulator uclass documentation
Date: Fri, 03 Apr 2015 18:09:47 +0200	[thread overview]
Message-ID: <551EBB4B.8050708@samsung.com> (raw)
In-Reply-To: <CAPnjgZ2eLE9r05qcMg1FuN-_2bg0vLqzqgMkywTZ75WzJh0xAA@mail.gmail.com>

Hello Simon,

On 03/29/2015 03:08 PM, Simon Glass wrote:
> Hi Przemyslaw,
>
> On 24 March 2015 at 14:30, Przemyslaw Marczak <p.marczak@samsung.com> wrote:
>> Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
>> ---
>> Changes v2, V3:
>> - update documentation with the framework api changes
>> - remove doc file name 'dm' prefix
>> ---
>>   doc/driver-model/pmic-framework.txt | 350 ++++++++++++++++++++++++++++++++++++
>>   1 file changed, 350 insertions(+)
>>   create mode 100644 doc/driver-model/pmic-framework.txt
>>
>> diff --git a/doc/driver-model/pmic-framework.txt b/doc/driver-model/pmic-framework.txt
>> new file mode 100644
>> index 0000000..72651dc
>> --- /dev/null
>> +++ b/doc/driver-model/pmic-framework.txt
>> @@ -0,0 +1,350 @@
>> +#
>> +# (C) Copyright 2014-2015 Samsung Electronics
>> +# Przemyslaw Marczak <p.marczak@samsung.com>
>> +#
>> +# SPDX-License-Identifier:      GPL-2.0+
>> +#
>> +
>> +PMIC framework based on Driver Model
>> +====================================
>> +TOC:
>> +1. Introduction
>> +2. How does it work
>> +3. Pmic driver api
>> +4. Pmic driver
>> +5. Pmic command
>> +6. Regulator driver api
>> +7. Regulator driver
>> +8. Regulator command
>> +
>> +1. Introduction
>> +===============
>> +This is an introduction to driver-model multi uclass PMIC devices support.
>> +At present it is based on two uclass types:
>> +
>> +- UCLASS_PMIC      - basic uclass type for PMIC I/O, which provides common
>> +                     read/write interface.
>> +- UCLASS_REGULATOR - additional uclass type for specific PMIC features, which
>> +                     are various voltage regulators.
>> +
>> +New files:
>> +UCLASS_PMIC:
>> +- drivers/power/pmic-uclass.c
>> +- include/power/pmic.h
>> +UCLASS_REGULATOR:
>> +- drivers/power/regulator-uclass.c
>> +- include/power/regulator.h
>> +
>> +Commands:
>> +- lib/cmd_pmic.c
>> +- lib/cmd_regulator.c
>> +
>> +2. How doees it work
>> +====================
>> +The Power Management Integrated Circuits (PMIC) are used in embedded systems
>> +to provide stable, precise and specific voltage power source with over-voltage
>> +and thermal protection circuits.
>> +
>> +The single PMIC can provide various functionalities with single or multiple
>> +interfaces, like in the example below.
>> +
>> +-- SoC
>> + |
>> + |            ______________________________________
>> + | BUS 0     |       Multi interface PMIC IC        |--> LDO out 1
>> + | e.g.I2C0  |                                      |--> LDO out N
>> + |-----------|---- PMIC device 0 (READ/WRITE ops)   |
>> + | or SPI0   |    |_ REGULATOR device (ldo/... ops) |--> BUCK out 1
>> + |           |    |_ CHARGER device (charger ops)   |--> BUCK out M
>> + |           |    |_ MUIC device (microUSB con ops) |
>> + | BUS 1     |    |_ ...                            |---> BATTERY
>> + | e.g.I2C1  |                                      |
>> + |-----------|---- PMIC device 1 (READ/WRITE ops)   |---> USB in 1
>> + . or SPI1   |    |_ RTC device (rtc ops)           |---> USB in 2
>> + .           |______________________________________|---> USB out
>> + .
>> +
>> +Since U-Boot provides driver model features for I2C and SPI bus drivers,
>> +the PMIC devices should also support this. With the new basic uclass types
>> +for PMIC I/O and regulator features, PMIC drivers can simply provide common
>> +features, with multiple interface and instance support.
>> +
>> +Basic design assumptions:
>> +
>> +- Common I/O api - UCLASS_PMIC
>> +The main assumption is to use UCLASS_PMIC device to provide I/O interface,
>
> an I/O interface
>
>> +for devices other uclass types. It is no matter what is the type of device
>> +physical I/O interface.
>
> devices of other uclass types. It doesn't matter what type of physical
> I/O interface is used.
>
>
> Usually PMIC devices are using SPI or I2C interface,
>
> s/are using/use/
>
>> +but use of any other interface (e.g. when PMIC is not directly connected
>> +to the SoC) - is now possible. Drivers can use the same read/write api.
>> +
>> +- Common regulator api - UCLASS_REGULATOR
>> +For setting the attributes of verious types of regulators with common api,
>
> various
>
> with a common
>
>> +this uclass can be implemented. This allows to drive the each regulator output
>
> allows driving each regulator's output
>
>> +value, on/off state and custom defined operation modes. It also provides the
>
> custom-defined
>
> or perhaps just 'particular'
>
>> +user interface for all operations.
>> +For the very simple implementation, the regulator drivers are not required,
>
> For simple implementations, regulator drivers are not required, so the
> code can use pmic read/write directly.
>
>> +so the code could base on pmic read/write only.
>> +
>> +When board device-tree file includes pmic subnode and the U_Boot compatible
>> +driver exists, then the pmic device bind should looks like this:
>> +
>> +|_ root - will bind the device for I2C/SPI bus node
>> +  |_ i2c/spi - should bind a device for pmic node
>> +    |_ pmic (parent) - should bind child devices for its features
>> +      |_ regulator (child)
>> +      |_ charger   (child)
>> +      |_ other     (child)
>> +
>> +Usually PMIC design provides:
>> + - single I/O interface (single UCLASS_PMIC driver)
>> +   Then UCLASS_PMIC device should be a parent of all pmic devices, where each
>> +   is usually different uclass type, but need to access the same interface
>> +
>> + - multiple I/O interfaces (UCLASS_PMIC driver for each)
>> +   For each interface the UCLASS_PMIC device should be a parent of only those
>> +   devices (different uclass types), which needs to access the specified
>> +   interface.
>> +
>> +3. Pmic driver api
>> +===================
>> +To use the pmic API, config: CONFIG_DM_PMIC is required.
>> +The new driver API is very simple and is based on 'struct dm_pmic_ops',
>> +which define two basic operations: device read and write.
>> +
>> +The platform data is introduced as 'struct pmic_platdata', to keep an info
>> +about the device interface.
>> +
>> +The api is described in file: 'include/power/pmic.h'
>> +Getting the device:
>> +- by name  -  int pmic_get(char *name, struct udevice **pmic);
>> +
>> +Device I/O interface
>> +Can be used with UCLASS_PMIC devices:
>> +- Read from the device 'len' bytes at 'reg' into the buffer:
>> +  int pmic_read(struct udevice *dev, uint reg, uint8_t *buffer, int len);
>> +
>> +- Write to the device 'len' bytes at 'reg' from the buffer:
>> +  int pmic_write(struct udevice *dev, uint reg, uint8_t *buffer, int len);
>> +
>> +4. Pmic driver
>> +============================
>> +As an example of the pmic driver, please take a look into the MAX77686 driver
>> +'drivers/power/pmic/max77686.c' and the description in 'include/power/pmic.h'
>> +
>> +The pmic driver can be defined by U_BOOT_DRIVER() macro:
>> +
>> +U_BOOT_DRIVER(pmic_max77686) = {
>> +       .name = "max77686 pmic",
>> +       .id = UCLASS_PMIC,
>> +       .of_match = max77686_ids,     - Allows to bind by compatible
>> +       .bind = max77686_bind,        - Function called at device bind
>> +       .ops = &max77686_ops,         - Pmic api function calls
>> +       .platdata_auto_alloc_size = sizeof(struct pmic_platdata),
>> +};
>> +
>> +To bind the pmic device, field '.of_match' is required with proper compatible.
>> +
>> +Driver ops:
>> +.reg_count = MAX77686_NUM_OF_REGS - number of pmic registers
>> +.read = max77686_read() - allows to use pmic_read()
>> +.write = max77686_write() - allows to use pmic_write()
>> +
>> +Driver bind:
>> +- max77686_bind(): called on bind and calls pmic_child_node_scan() to bind the
>> +  childs which are int "voltage-regulators" subnode. The bind is done using
>> +  "voltage-regulators" property name.
>> +
>> +5. Pmic command
>> +===============
>> +To use the pmic command, config: CONFIG_DM_PMIC_CMD is required.
>> +The new pmic command allows to:
>> +- list pmic devices
>> +- choose the current device (like the mmc command)
>> +- read or write the pmic register
>> +- dump all pmic registers
>> +
>> +This command can use only UCLASS_PMIC devices, since this uclass is designed
>> +for pmic I/O operations only.
>> +
>> +Command options (pmic [option]):
>> +- list                     - list available PMICs
>> +- dev <id>                 - set id to current pmic device
>> +- pmic dump                - dump registers
>> +- pmic read <reg>          - read register
>> +- pmic write <reg> <value> - write register
>> +
>> +Example of usage:
>> +# pmic list           - chose one dev Id, e.g. 3
>> +# pmic dev 0          - set dev seq 0 as current device
>> +# pmic dump           - dump the registers of the current pmic dev
>> +# pmic read 0x0       - read the register at address 0x0
>> +# pmic write 0x0 0x1  - write 0x1 to the register at addres 0x0
>> +
>> +6. Regulator driver API
>> +===================================
>> +To use the regulator API, config: CONFIG_DM_REGULATOR is required.
>> +The api is described in file: 'include/power/regulator.h'
>> +The api is based on structure types:
>> +- 'dm_regulator_info' - dev->uc_priv (auto-allocated)
>> +- 'dm_regulator_mode' - included in regualtor info
>> +
>> +Regulator info keeps the constraints taken from the device-tree and also device
>> +modes set by the driver (single or array).
>> +
>> +The fixed-regulator common driver keeps provides private structure type, to keep
>> +its gpio attributes. The structure type 'fixed_regulator_priv' is keept in field
>
> kept
>
>> +'dev->priv' and is allocated by the driver.
>> +
>> +6.1 Regulator device-tree node:
>> +The regulator node should looks like in the example:
>> +ldo1 {
>> +        regulator-compatible = "LDO1"; (not used here, but required for bind)
>> +        regulator-name = "VDD_MMC_1.8V"; (mandatory) *
>> +        regulator-min-microvolt = <1000000>; (mandatory) *
>> +        regulator-max-microvolt = <1000000>; (mandatory) *
>> +        regulator-min-microamp = <1000>; (optional) *
>> +        regulator-max-microamp = <1000>; (optional) *
>> +        regulator-always-on; (optional) *
>> +        regulator-boot-on; (optional) *
>> +};
>> +
>> +For the fixed-voltage regulator, voltage min and max must be equal:
>> +VDD_MMC: regulator at 0 {
>> +        compatible = "regulator-fixed";
>> +        regulator-name = "VDD_MMC"; (mandatory) *
>> +        regulator-min-microvolt = <2800000>; (mandatory) *
>> +        regulator-max-microvolt = <2800000>; (mandatory) *
>> +        regulator-always-on; (optional)
>> +        regulator-boot-on; (optional)
>> +        gpio = <&gpc 1 GPIO_ACTIVE_HIGH>; (optional)
>> +        gpio-open-drain; (optional)
>> +        enable-active-high; (optional)
>> +        startup-delay-us
>> +};
>> +
>> +The attributes signed with '*' can be taken by the common function which is
>> +regulator_ofdata_to_platdata(). The rest attributes for fixed-regulator, are
>> +taken by the driver.
>> +
>> +6.2 Getting the device:
>> +- by name - int regulator_get(char *name, struct udevice **regulator);
>> +
>> +6.3 Device I/O interface
>> +According to the framework assumptions, where uclass pmic device is a parent
>> +of pmic devices other uclass types, the regulator devices should use uclass
>> +pmic interface, with the parent as the device, like this:
>> +- pmic_read(regulator->parent, some_reg, &some_buff, count);
>> +- pmic_write(regulator->parent, some_reg, &some_buff, count);
>> +
>> +6.4 Device regulator operations
>> +The regulator function calls are based on few data types:
>> +- enum regulator_type {...} - standard types: LDO, BUCK, DVS, FIXED
>> +- struct dm_regulator_info {...} - output name and value limits
>> +- struct dm_regulator_mode {...} - output operation mode value and name
>> +- struct dm_regulator_ops {...} - regulator driver function calls
>> +
>> +The first argument is always device. And the device uclass id must be always:
>> +- 'UCLASS_REGULATOR'
>> +
>> +Function details are described in regulator header. The basic features are:
>> +- regulator_info()            - get the regulator info structure
>> +- regulator_mode()            - get the regulator mode info structure
>> +- regulator_get/set_value()   - get/set the regulator output voltage
>> +- regulator_get/set_current() - get/set the regulator output current
>> +- regulator_get/set_enable()  - get/set the regulator output enable state
>> +- regulator_get/set_mode()    - get/set the regulator output operation mode
>> +
>> +7. Regulator driver
>> +======================================
>> +As an example of the regulator driver, please take a look into the MAX77686
>> +regulator driver (drivers/power/regulator/max77686.c). It implements two drivers
>> +for the buck and ldo regulators. The buck driver structure:
>> +
>> +U_BOOT_DRIVER(max77686_buck) = {
>> +        .name = "max77686 buck",
>> +        .id = UCLASS_REGULATOR,
>> +        .ops = &max77686_buck_ops,
>> +        .of_match = max77686_buck_ids,
>> +        .ofdata_to_platdata = max77686_buck_ofdata_to_platdata,
>> +};
>> +
>> +The device-tree buck compatibles:
>> +static const struct udevice_id max77686_buck_ids[] = {
>> +        { .compatible = "BUCK1", .data = 1 },
>> +        { .compatible = "BUCK2", .data = 2 },
>> +        ...
>> +        { }, (need always put null at the end)
>> +};
>> +
>> +For each compatible, the data is set as a number of buck. This allows to get
>> +the device number without parsing the compatible.
>> +
>> +The buck driver '.ofdata_to_platdata' call implementation:
>> +static int max77686_buck_ofdata_to_platdata(struct udevice *dev)
>> +{
>> +        struct dm_regulator_info *info = dev->uclass_priv;
>> +        int ret;
>> +
>> +       /* Get the regulation constraints by the common function */
>> +        ret = regulator_ofdata_to_platdata(dev);
>> +        if (ret)
>> +                return ret;
>> +
>> +        info->type = REGULATOR_TYPE_BUCK;
>> +        /**
>> +         * The device mode array is filled by internal driver function with
>> +         * the proper name for each mode id.
>> +         */
>> +        info->mode_count = max77686_buck_modes(dev2num(dev), &info->mode);
>> +
>> +        return 0;
>> +}
>> +
>> +And the call to regulator_ofdata_to_platdata() is responsible for filling the
>> +regulator output constraints, which are keepts in device-tree regulator nodes,
>> +e.g. 'arch/arm/dts/exynos4412-odroid.dts'
>> +
>> +For the I/O, this driver uses pmic_read/write calls, with the parent device
>> +as the first argument, e.g.: pmic_read(dev->parent, adr, &val, 1);
>> +
>> +8. Regulator command
>> +====================
>> +To use the pmic command, config: CONFIG_DM_REGULATOR_CMD is required.
>> +
>> +This command is based on driver model regulator api.
>> +User interface features:
>> +- list                   - list UCLASS regulator devices
>> +- regulator dev [id]     - show or [set] operating regulator device
>> +- regulator [info]       - print constraints info
>> +- regulator [status]     - print operating status
>> +- regulator [value] [-f] - print/[set] voltage value [uV] (force)
>> +- regulator [current]    - print/[set] current value [uA]
>> +- regulator [mode_id]    - print/[set] operating mode id
>> +- regulator [enable]     - enable the regulator output
>> +- regulator [disable]    - disable the regulator output
>> +
>> +If pmic device driver provides support to this another pmic uclass, then this
>> +command provides useful user interface. It was designed to allow safe I/O access
>> +to the pmic device, without the pmic documentation. If driver provide regulator
>> +output - value and mode info - then user can operate on it.
>> +
>> +Example of usage:
>> +regulator list              - look after regulator 'seq' number
>> +regulator dev 'seq'         - set current device
>> +regulator status            - show device status
>> +regulator info              - list device available regulation constraints
>> +regulator value             - prints device voltage value
>> +regulator value 1000000     - set device voltage value to 1000000 uV
>> +regulator value 1200000 -f  - if value exceeds limits - set force
>> +regulator mode              - print device operation mode id
>> +regulator mode 5            - set devices operation mode to '5' (mode id)
>> +
>> +The -f option (forcibly) or mode - only if descriptor is available
>
> I think something like this would be clearer:
>
> The -f option (forcibly) and 'mode' sub-command are only available if
> the regulator descriptor is available
>
>
>> +
>> +Note:
>> +The regulator descriptor, 'min' and 'max' limits prevents setting unsafe value.
>> +But sometimes it is useful to change the regulator value for some test - so the
>> +force option (-f) is available. This option is not available for change the mode
>> +since this depends on a pmic device design, but the required voltage value can
>> +change, e.g. if some hardware uses pins header.
>
> changed.
>
> What does "e..g. if some hardware uses pins header" mean? Can you
> reword that to be clearer?
>

Right, this was unclear.
I meant the hardware connected by I/O expansion header, which can be 
replaced by other. And each could be supplied by a different voltage value.

>> --
>> 1.9.1
>>
>
> Regards,
> Simon
>

I didn't clean this file too much, last time. Will fix in next version.
Thanks for help!
-- 
Przemyslaw Marczak
Samsung R&D Institute Poland
Samsung Electronics
p.marczak at samsung.com

  reply	other threads:[~2015-04-03 16:09 UTC|newest]

Thread overview: 218+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-08 20:48 [U-Boot] [PATCH 00/19] [RFC] Power(full) framework based on Driver Model Przemyslaw Marczak
2014-10-08 20:48 ` [U-Boot] [PATCH 01/19] lib: errno: introduce errno_str(): returns errno related message Przemyslaw Marczak
2014-10-09  6:46   ` Joakim Tjernlund
2014-10-09 16:23     ` Przemyslaw Marczak
2014-10-09 22:53       ` Simon Glass
2014-10-10  5:03       ` Joakim Tjernlund
2014-10-10 11:49         ` Przemyslaw Marczak
2014-10-22 15:31   ` Tom Rini
2014-12-11  3:25     ` Simon Glass
2014-12-11 10:11       ` Przemyslaw Marczak
2014-12-11 13:24         ` Simon Glass
2014-10-08 20:48 ` [U-Boot] [PATCH 02/19] exynos: config-common: enable errno_str() function Przemyslaw Marczak
2014-10-08 20:48 ` [U-Boot] [PATCH 03/19] exynos: config-common: enable generic fs command Przemyslaw Marczak
2014-10-08 20:48 ` [U-Boot] [PATCH 04/19] dm: pmic: add implementation of driver model pmic uclass Przemyslaw Marczak
2014-10-10  3:17   ` Simon Glass
2014-10-10 13:32     ` Przemyslaw Marczak
2014-10-10 23:18       ` Simon Glass
2014-10-20 15:44         ` Przemyslaw Marczak
2014-10-20 15:46           ` Simon Glass
2014-10-20 15:51             ` Przemyslaw Marczak
2014-11-06 22:34               ` Simon Glass
2014-11-12 10:29                 ` Przemyslaw Marczak
2014-11-12 15:26                   ` Simon Glass
2014-10-08 20:48 ` [U-Boot] [PATCH 05/19] dm: pmic: add implementation of driver model regulator uclass Przemyslaw Marczak
2014-10-10  3:10   ` Simon Glass
2014-10-10 13:41     ` Przemyslaw Marczak
2014-10-08 20:48 ` [U-Boot] [PATCH 06/19] dm: common: board_r: add call and weak of power_init_dm() Przemyslaw Marczak
2014-10-10  3:32   ` Simon Glass
2014-10-20 15:45     ` Przemyslaw Marczak
2014-10-08 20:48 ` [U-Boot] [PATCH 07/19] dm: pmic: add max77686 pmic driver Przemyslaw Marczak
2014-10-22 15:31   ` Tom Rini
2014-10-08 20:48 ` [U-Boot] [PATCH 08/19] dm: regulator: add max77686 regulator driver Przemyslaw Marczak
2014-10-22 15:32   ` Tom Rini
2014-10-08 20:48 ` [U-Boot] [PATCH 09/19] dm: pmic: new commands: pmic and regulator Przemyslaw Marczak
2014-10-22 15:32   ` Tom Rini
2014-10-08 20:48 ` [U-Boot] [PATCH 10/19] dm: board:samsung: power_init_board: add requirement of CONFIG_DM_PMIC Przemyslaw Marczak
2014-10-08 20:48 ` [U-Boot] [PATCH 11/19] doc: driver-model: pmic and regulator uclass documentation Przemyslaw Marczak
2014-10-10  3:36   ` Simon Glass
2014-10-10 13:45     ` Przemyslaw Marczak
2014-10-08 20:48 ` [U-Boot] [PATCH 12/19] samsung: board: lcd menu: check if any power framework is enabled Przemyslaw Marczak
2014-10-08 20:48 ` [U-Boot] [PATCH 13/19] samsung: misc: power_key_pressed: add support to dm pmic framework Przemyslaw Marczak
2014-10-10  3:37   ` Simon Glass
2014-10-08 20:48 ` [U-Boot] [PATCH 14/19] trats2: board: add support to dm pmic api Przemyslaw Marczak
2014-10-10  3:39   ` Simon Glass
2014-10-10 13:46     ` Przemyslaw Marczak
2014-10-08 20:48 ` [U-Boot] [PATCH 15/19] trats2: dts: max77686: add pmic alias and names cleanup Przemyslaw Marczak
2014-10-08 20:48 ` [U-Boot] [PATCH 16/19] trats2: config: enable dm pmic, dm regulator api, dm max77686 Przemyslaw Marczak
2014-10-10  3:40   ` Simon Glass
2014-10-10 13:50     ` Przemyslaw Marczak
2014-10-08 20:48 ` [U-Boot] [PATCH 17/19] odroid: board: add support to dm pmic api Przemyslaw Marczak
2014-10-08 20:48 ` [U-Boot] [PATCH 18/19] odroid: dts: add 'voltage-regulators' description to max77686 node Przemyslaw Marczak
2014-10-08 20:48 ` [U-Boot] [PATCH 19/19] odroid: config: enable dm pmic, dm regulator and max77686 driver Przemyslaw Marczak
2014-10-08 20:55 ` [U-Boot] [PATCH 00/19] [RFC] Power(full) framework based on Driver Model Przemyslaw Marczak
2014-10-09  6:05   ` Simon Glass
2014-10-09 15:04     ` Przemyslaw Marczak
2014-10-22 15:31 ` Tom Rini
2014-10-24 15:50   ` Przemyslaw Marczak
2014-10-27 12:41   ` Przemyslaw Marczak
2015-03-03 16:24 ` [U-Boot] [PATCH v2 00/12] " Przemyslaw Marczak
2015-03-03 16:24   ` [U-Boot] [PATCH v2 01/12] exynos5: fix build break by adding CONFIG_POWER Przemyslaw Marczak
2015-03-04 12:19     ` Minkyu Kang
2015-03-03 16:24   ` [U-Boot] [PATCH v2 02/12] dm: device: add function device_get_first_child_by_uclass_id() Przemyslaw Marczak
2015-03-06 14:11     ` Simon Glass
2015-03-25 16:08       ` Przemyslaw Marczak
2015-03-03 16:24   ` [U-Boot] [PATCH v2 03/12] dm: pmic: add implementation of driver model pmic uclass Przemyslaw Marczak
2015-03-06 14:11     ` Simon Glass
2015-03-25 16:08       ` Przemyslaw Marczak
2015-03-03 16:24   ` [U-Boot] [PATCH v2 04/12] dm: pmic: add implementation of driver model regulator uclass Przemyslaw Marczak
2015-03-06 14:12     ` Simon Glass
2015-03-25 16:08       ` Przemyslaw Marczak
2015-03-10 11:41     ` Robert Baldyga
2015-03-25 16:08       ` Przemyslaw Marczak
2015-03-03 16:24   ` [U-Boot] [PATCH v2 05/12] dm: pmic: new commands: pmic and regulator Przemyslaw Marczak
2015-03-06 14:13     ` Simon Glass
2015-03-25 16:08       ` Przemyslaw Marczak
2015-03-03 16:24   ` [U-Boot] [PATCH v2 06/12] dm: pmic: add max77686 pmic driver Przemyslaw Marczak
2015-03-03 16:24   ` [U-Boot] [PATCH v2 07/12] dm: regulator: add max77686 regulator driver Przemyslaw Marczak
2015-03-06 14:14     ` Simon Glass
2015-03-25 16:08       ` Przemyslaw Marczak
2015-03-03 16:24   ` [U-Boot] [PATCH v2 08/12] doc: driver-model: pmic and regulator uclass documentation Przemyslaw Marczak
2015-03-06 14:14     ` Simon Glass
2015-03-25 16:08       ` Przemyslaw Marczak
2015-03-03 16:24   ` [U-Boot] [PATCH v2 09/12] dm: board:samsung: power_init_board: add requirement of CONFIG_DM_PMIC Przemyslaw Marczak
2015-03-03 16:24   ` [U-Boot] [PATCH v2 10/12] odroid: board: add support to dm pmic api Przemyslaw Marczak
2015-03-06 14:14     ` Simon Glass
2015-03-25 16:09       ` Przemyslaw Marczak
2015-03-03 16:24   ` [U-Boot] [PATCH v2 11/12] odroid: dts: add 'voltage-regulators' description to max77686 node Przemyslaw Marczak
2015-03-03 16:24   ` [U-Boot] [PATCH v2 12/12] odroid: config: enable dm pmic, dm regulator and max77686 driver Przemyslaw Marczak
2015-03-06 14:15     ` Simon Glass
2015-03-03 16:30   ` [U-Boot] [PATCH v2 00/12] Power(full) framework based on Driver Model Przemyslaw Marczak
2015-03-03 16:40   ` Przemyslaw Marczak
2015-03-06 14:10   ` Simon Glass
2015-03-06 15:08     ` Przemyslaw Marczak
2015-03-06 19:58       ` Simon Glass
2015-03-10  2:12     ` Simon Glass
2015-03-25 16:09       ` Przemyslaw Marczak
2015-03-24 20:30   ` [U-Boot] [PATCH v3 00/17] " Przemyslaw Marczak
2015-03-24 20:30     ` [U-Boot] [PATCH v3 01/17] exynos5: fix build break by adding CONFIG_POWER Przemyslaw Marczak
2015-03-29 13:05       ` Simon Glass
2015-03-24 20:30     ` [U-Boot] [PATCH v3 02/17] fdt_ro.c: add new function: fdt_node_check_prop_compatible() Przemyslaw Marczak
2015-03-29 13:07       ` Simon Glass
2015-03-24 20:30     ` [U-Boot] [PATCH v3 03/17] dm: core: lists.c: add new function lists_bind_fdt_by_prop() Przemyslaw Marczak
2015-03-29 13:07       ` Simon Glass
2015-03-24 20:30     ` [U-Boot] [PATCH v3 04/17] lib: Kconfig: add entry for errno_str() function Przemyslaw Marczak
2015-03-29 13:07       ` Simon Glass
2015-03-24 20:30     ` [U-Boot] [PATCH v3 05/17] dm: pmic: add implementation of driver model pmic uclass Przemyslaw Marczak
2015-03-29 13:07       ` Simon Glass
2015-04-03 16:08         ` Przemyslaw Marczak
2015-04-05 18:30           ` Simon Glass
2015-03-24 20:30     ` [U-Boot] [PATCH v3 06/17] dm: regulator: add implementation of driver model regulator uclass Przemyslaw Marczak
2015-03-29 13:07       ` Simon Glass
2015-04-03 16:09         ` Przemyslaw Marczak
2015-04-05 18:30           ` Simon Glass
2015-04-07 15:31             ` Przemyslaw Marczak
2015-04-08  1:47               ` Simon Glass
2015-04-08  7:37                 ` Przemyslaw Marczak
2015-03-24 20:30     ` [U-Boot] [PATCH v3 07/17] dm: pmic: add pmic command Przemyslaw Marczak
2015-03-29 13:07       ` Simon Glass
2015-04-03 16:08         ` Przemyslaw Marczak
2015-03-24 20:30     ` [U-Boot] [PATCH v3 08/17] dm: regulator: add regulator command Przemyslaw Marczak
2015-03-29 13:07       ` Simon Glass
2015-04-03 16:08         ` Przemyslaw Marczak
2015-03-24 20:30     ` [U-Boot] [PATCH v3 09/17] pmic: max77686 set the same compatible as in the kernel Przemyslaw Marczak
2015-03-29 13:08       ` Simon Glass
2015-03-24 20:30     ` [U-Boot] [PATCH v3 10/17] dm: pmic: add max77686 pmic driver Przemyslaw Marczak
2015-03-29 13:08       ` Simon Glass
2015-03-24 20:30     ` [U-Boot] [PATCH v3 11/17] dm: regulator: add max77686 regulator driver Przemyslaw Marczak
2015-03-29 13:08       ` Simon Glass
2015-04-03 16:08         ` Przemyslaw Marczak
2015-03-24 20:30     ` [U-Boot] [PATCH v3 12/17] dm: regulator: add fixed voltage " Przemyslaw Marczak
2015-03-29 13:08       ` Simon Glass
2015-04-03 16:09         ` Przemyslaw Marczak
2015-03-24 20:30     ` [U-Boot] [PATCH v3 13/17] doc: driver-model: pmic and regulator uclass documentation Przemyslaw Marczak
2015-03-29 13:08       ` Simon Glass
2015-04-03 16:09         ` Przemyslaw Marczak [this message]
2015-03-24 20:30     ` [U-Boot] [PATCH v3 14/17] dm: board:samsung: power_init_board: add requirement of CONFIG_DM_PMIC Przemyslaw Marczak
2015-03-29 13:09       ` Simon Glass
2015-03-24 20:30     ` [U-Boot] [PATCH v3 15/17] odroid: board: add support to dm pmic api Przemyslaw Marczak
2015-03-29 13:08       ` Simon Glass
2015-04-03 16:09         ` Przemyslaw Marczak
2015-03-24 20:30     ` [U-Boot] [PATCH v3 16/17] odroid: dts: add 'voltage-regulators' description to max77686 node Przemyslaw Marczak
2015-03-29 13:10       ` Simon Glass
2015-03-24 20:30     ` [U-Boot] [PATCH v3 17/17] odroid: config: enable dm pmic, dm regulator and max77686 driver Przemyslaw Marczak
2015-03-29 13:10       ` Simon Glass
2015-04-03 16:10         ` Przemyslaw Marczak
2015-03-25  7:47     ` [U-Boot] [PATCH v3 00/17] Power(full) framework based on Driver Model Przemyslaw Marczak
2015-03-29 13:05     ` Simon Glass
2015-04-03 16:11       ` Przemyslaw Marczak
2015-04-05 18:30         ` Simon Glass
2015-04-20 18:07     ` [U-Boot] [PATCH v4 00/16] " Przemyslaw Marczak
2015-04-20 18:07       ` [U-Boot] [PATCH v4 01/16] exynos5: fix build break by adding CONFIG_POWER Przemyslaw Marczak
2015-04-22 16:29         ` Simon Glass
2015-04-22 17:08           ` Simon Glass
2015-04-20 18:07       ` [U-Boot] [PATCH v4 02/16] exynos4-common: remove the unsued CONFIG_CMD_PMIC Przemyslaw Marczak
2015-04-22 16:29         ` Simon Glass
2015-04-22 17:09           ` Simon Glass
2015-04-20 18:07       ` [U-Boot] [PATCH v4 03/16] lib: Kconfig: add entry for errno_str() function Przemyslaw Marczak
2015-04-22 16:29         ` Simon Glass
2015-04-22 17:09           ` Simon Glass
2015-04-20 18:07       ` [U-Boot] [PATCH v4 04/16] dm: pmic: add implementation of driver model pmic uclass Przemyslaw Marczak
2015-04-22 16:30         ` Simon Glass
2015-04-22 17:09           ` Simon Glass
2015-04-23 11:33           ` Przemyslaw Marczak
2015-04-24  4:51             ` Simon Glass
2015-04-20 18:07       ` [U-Boot] [PATCH v4 05/16] dm: regulator: add implementation of driver model regulator uclass Przemyslaw Marczak
2015-04-22 16:30         ` Simon Glass
2015-04-22 16:54           ` Simon Glass
2015-04-22 17:09             ` Simon Glass
2015-04-23 11:33           ` Przemyslaw Marczak
2015-04-20 18:07       ` [U-Boot] [PATCH v4 06/16] dm: pmic: add pmic command Przemyslaw Marczak
2015-04-22 16:30         ` Simon Glass
2015-04-22 17:09           ` Simon Glass
2015-04-20 18:07       ` [U-Boot] [PATCH v4 07/16] dm: regulator: add regulator command Przemyslaw Marczak
2015-04-22 16:30         ` Simon Glass
2015-04-22 17:09           ` Simon Glass
2015-04-23 11:33           ` Przemyslaw Marczak
2015-04-24  4:51             ` Simon Glass
2015-04-24 12:18               ` Przemyslaw Marczak
2015-04-24 12:34                 ` Simon Glass
2015-04-24 12:53                   ` Przemyslaw Marczak
2015-04-24 13:00                     ` Simon Glass
2015-04-20 18:07       ` [U-Boot] [PATCH v4 08/16] pmic: max77686 set the same compatible as in the kernel Przemyslaw Marczak
2015-04-22 16:30         ` Simon Glass
2015-04-22 17:09           ` Simon Glass
2015-04-20 18:07       ` [U-Boot] [PATCH v4 09/16] dm: pmic: add max77686 pmic driver Przemyslaw Marczak
2015-04-22 16:30         ` Simon Glass
2015-04-22 17:10           ` Simon Glass
2015-04-20 18:07       ` [U-Boot] [PATCH v4 10/16] dm: regulator: add max77686 regulator driver Przemyslaw Marczak
2015-04-22 16:31         ` Simon Glass
2015-04-22 17:10           ` Simon Glass
2015-04-20 18:07       ` [U-Boot] [PATCH v4 11/16] dm: regulator: add fixed voltage " Przemyslaw Marczak
2015-04-22 16:31         ` Simon Glass
2015-04-22 17:10           ` Simon Glass
2015-04-23 12:31         ` Przemyslaw Marczak
2015-04-23 12:36           ` Przemyslaw Marczak
2015-04-24  4:50           ` Simon Glass
2015-04-20 18:07       ` [U-Boot] [PATCH v4 12/16] doc: driver-model: pmic and regulator uclass documentation Przemyslaw Marczak
2015-04-22 16:31         ` Simon Glass
2015-04-22 17:10           ` Simon Glass
2015-04-23 11:33           ` Przemyslaw Marczak
2015-04-20 18:07       ` [U-Boot] [PATCH v4 13/16] dm: board:samsung: power_init_board: add requirement of CONFIG_DM_PMIC Przemyslaw Marczak
2015-04-22 16:31         ` Simon Glass
2015-04-22 17:10           ` Simon Glass
2015-04-23 11:33           ` Przemyslaw Marczak
2015-04-20 18:07       ` [U-Boot] [PATCH v4 14/16] odroid: board: add support to dm pmic api Przemyslaw Marczak
2015-04-22 16:31         ` Simon Glass
2015-04-22 17:11           ` Simon Glass
2015-04-23 11:33           ` Przemyslaw Marczak
2015-04-20 18:07       ` [U-Boot] [PATCH v4 15/16] odroid: dts: add 'voltage-regulators' description to max77686 node Przemyslaw Marczak
2015-04-22 16:31         ` Simon Glass
2015-04-22 17:11           ` Simon Glass
2015-04-20 18:07       ` [U-Boot] [PATCH v4 16/16] odroid: config: enable dm pmic, dm regulator and max77686 driver Przemyslaw Marczak
2015-04-22 16:31         ` Simon Glass
2015-04-22 17:11           ` Simon Glass
2015-04-22 16:29       ` [U-Boot] [PATCH v4 00/16] Power(full) framework based on Driver Model Simon Glass
2015-04-23 11:33         ` Przemyslaw Marczak
2015-04-24  4:48           ` Simon Glass
2015-04-24 12:18             ` Przemyslaw Marczak

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=551EBB4B.8050708@samsung.com \
    --to=p.marczak@samsung.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.