From mboxrd@z Thu Jan 1 00:00:00 1970 From: Przemyslaw Marczak Date: Fri, 24 Apr 2015 14:18:58 +0200 Subject: [U-Boot] [PATCH v4 00/16] Power(full) framework based on Driver Model In-Reply-To: References: <1427229051-20170-1-git-send-email-p.marczak@samsung.com> <1429553273-6453-1-git-send-email-p.marczak@samsung.com> <5538D89B.2070207@samsung.com> Message-ID: <553A34B2.408@samsung.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hello Simon, On 04/24/2015 06:48 AM, Simon Glass wrote: > Hi Przemyslaw, > > On 23 April 2015 at 05:33, Przemyslaw Marczak wrote: >> Hello Simon, >> >> >> On 04/22/2015 06:29 PM, Simon Glass wrote: >>> >>> Hi Przemyslaw, >>> >>> On 20 April 2015 at 12:07, Przemyslaw Marczak >>> wrote: >>>> >>>> Hello, >>>> Again the next version. The changes are described below each commit >>>> message. >>>> This is rebased on last u-boot-dm/master after apply this patchset: >>>> https://patchwork.ozlabs.org/patch/462775/ >>>> https://patchwork.ozlabs.org/patch/462777/ >>>> https://patchwork.ozlabs.org/patch/462776/ >>>> >>>> This all can be found in here: >>>> https://github.com/bobenstein/u-boot/tree/dm-pmic-v4 >>>> >>>> Best regards, >>>> >>>> Przemyslaw Marczak (16): >>>> exynos5: fix build break by adding CONFIG_POWER >>>> exynos4-common: remove the unsued CONFIG_CMD_PMIC >>>> lib: Kconfig: add entry for errno_str() function >>>> dm: pmic: add implementation of driver model pmic uclass >>>> dm: regulator: add implementation of driver model regulator uclass >>>> dm: pmic: add pmic command >>>> dm: regulator: add regulator command >>>> pmic: max77686 set the same compatible as in the kernel >>>> dm: pmic: add max77686 pmic driver >>>> dm: regulator: add max77686 regulator driver >>>> dm: regulator: add fixed voltage regulator driver >>>> doc: driver-model: pmic and regulator uclass documentation >>>> dm: board:samsung: power_init_board: add requirement of CONFIG_DM_PMIC >>>> odroid: board: add support to dm pmic api >>>> odroid: dts: add 'voltage-regulators' description to max77686 node >>>> odroid: config: enable dm pmic, dm regulator and max77686 driver >>>> >>>> Makefile | 3 +- >>>> arch/arm/dts/exynos4412-odroid.dts | 255 ++++++- >>>> arch/arm/dts/exynos4412-trats2.dts | 2 +- >>>> arch/arm/dts/exynos5250-smdk5250.dts | 2 +- >>>> arch/arm/dts/exynos5250-snow.dts | 2 +- >>>> board/samsung/common/board.c | 4 +- >>>> board/samsung/common/misc.c | 1 + >>>> board/samsung/odroid/odroid.c | 77 ++- >>>> common/Kconfig | 36 + >>>> common/Makefile | 4 + >>>> common/cmd_pmic.c | 231 +++++++ >>>> common/cmd_regulator.c | 403 +++++++++++ >>>> configs/odroid_defconfig | 8 +- >>>> doc/device-tree-bindings/pmic/max77686.txt | 36 + >>>> doc/device-tree-bindings/regulator/fixed.txt | 38 ++ >>>> doc/device-tree-bindings/regulator/max77686.txt | 70 ++ >>>> doc/device-tree-bindings/regulator/regulator.txt | 55 ++ >>>> doc/driver-model/pmic-framework.txt | 142 ++++ >>>> drivers/power/Kconfig | 8 + >>>> drivers/power/Makefile | 1 - >>>> drivers/power/pmic/Kconfig | 18 + >>>> drivers/power/pmic/Makefile | 2 + >>>> drivers/power/pmic/max77686.c | 87 +++ >>>> drivers/power/pmic/pmic-uclass.c | 158 +++++ >>>> drivers/power/pmic/pmic_max77686.c | 2 +- >>>> drivers/power/regulator/Kconfig | 33 + >>>> drivers/power/regulator/Makefile | 10 + >>>> drivers/power/regulator/fixed.c | 126 ++++ >>>> drivers/power/regulator/max77686.c | 825 >>>> +++++++++++++++++++++++ >>>> drivers/power/regulator/regulator-uclass.c | 300 +++++++++ >>>> include/configs/exynos4-common.h | 1 - >>>> include/configs/exynos5-common.h | 4 + >>>> include/configs/odroid.h | 5 - >>>> include/dm/uclass-id.h | 4 + >>>> include/power/max77686_pmic.h | 29 +- >>>> include/power/pmic.h | 189 ++++++ >>>> include/power/regulator.h | 384 +++++++++++ >>>> lib/Kconfig | 8 + >>>> lib/fdtdec.c | 2 +- >>>> 39 files changed, 3512 insertions(+), 53 deletions(-) >>>> create mode 100644 common/cmd_pmic.c >>>> create mode 100644 common/cmd_regulator.c >>>> create mode 100644 doc/device-tree-bindings/pmic/max77686.txt >>>> create mode 100644 doc/device-tree-bindings/regulator/fixed.txt >>>> create mode 100644 doc/device-tree-bindings/regulator/max77686.txt >>>> create mode 100644 doc/device-tree-bindings/regulator/regulator.txt >>>> create mode 100644 doc/driver-model/pmic-framework.txt >>>> create mode 100644 drivers/power/pmic/Kconfig >>>> create mode 100644 drivers/power/pmic/max77686.c >>>> create mode 100644 drivers/power/pmic/pmic-uclass.c >>>> create mode 100644 drivers/power/regulator/Kconfig >>>> create mode 100644 drivers/power/regulator/Makefile >>>> create mode 100644 drivers/power/regulator/fixed.c >>>> create mode 100644 drivers/power/regulator/max77686.c >>>> create mode 100644 drivers/power/regulator/regulator-uclass.c >>>> create mode 100644 include/power/regulator.h >>>> >>>> -- >>>> 1.9.1 >>>> >>> >>> I'm going to test this and apply to u-boot-dm/next while we wait for >>> you to finish the sandbox test code. I've made a few comments on the >>> series. They are minor so I don't want to do another whole spin of the >>> series (it takes time to review!), but you could do a fix-up patch or >>> two if you like. I could perhaps squash them in if you prefer that, >>> but honestly they are nits. >>> >>> It will be great to get this into mainline soon! >>> >>> Regards, >>> Simon >>> >> >> Thank you again for the review. I know, that it takes a time, especially >> when things are fully reworked. >> I have some other things to do now. So I think, that the end of the next >> week is reliable time to have the sandbox tests ready. >> >> I will try to resend the fixes today or tomorrow. >> >> One more question about the sandbox. >> >> What do you think about adding: "drivers/power/pmic/max77686-sandbox.c"? >> The read/write could be done for the file as in the sandbox SPI driver. >> Then it's no problem to enable the max77686 regulator for the sandbox. This >> could probably work without dump the real device, when keep the set -> get >> I/O order. > > I'd be more comfortable with a new pmic, a really simple 'fake' one > with just a few LDOs, maybe one BUCK. Enough to support some > reasonable tests. > > The problem with max77686 is that is it quite complicated, and when > writing and expanding tests, we really want things to be simple. > > Also for the tests, we really don't need anything elaborate. Try to > test the main functions. > > Regards, > Simon > Ok, I see. This should be easy. Best regards, -- Przemyslaw Marczak Samsung R&D Institute Poland Samsung Electronics p.marczak at samsung.com