From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753334AbcFTI3o (ORCPT ); Mon, 20 Jun 2016 04:29:44 -0400 Received: from regular1.263xmail.com ([211.150.99.130]:41941 "EHLO regular1.263xmail.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752131AbcFTI3Y (ORCPT ); Mon, 20 Jun 2016 04:29:24 -0400 X-263anti-spam: KSV:0;BIG:0;ABS:1;DNS:0;ATT:0;SPF:S; X-MAIL-GRAY: 0 X-MAIL-DELIVERY: 1 X-KSVirus-check: 0 X-ABS-CHECKED: 1 X-SKE-CHECKED: 1 X-ADDR-CHECKED: 0 X-RL-SENDER: andy.yan@rock-chips.com X-FST-TO: richard@nod.at X-SENDER-IP: 121.15.173.1 X-LOGIN-NAME: andy.yan@rock-chips.com X-UNIQUE-TAG: X-ATTACHMENT-NUM: 0 X-DNS-TYPE: 0 Subject: Re: [PATCH v9 2/4] power: reset: add reboot mode driver To: Krzysztof Kozlowski , robh+dt@kernel.org, heiko@sntech.de, john.stultz@linaro.org, arnd@arndb.de, bjorn.andersson@linaro.org References: <1466404490-3315-1-git-send-email-andy.yan@rock-chips.com> <1466404696-3464-1-git-send-email-andy.yan@rock-chips.com> <5767A4C0.3080902@samsung.com> Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, alexandre.belloni@free-electrons.com, dbaryshkov@gmail.com, sre@kernel.org, matthias.bgg@gmail.com, linux-pm@vger.kernel.org, mbrugger@suse.com, lorenzo.pieralisi@arm.com, moritz.fischer@ettus.com, richard@nod.at From: Andy Yan Message-ID: <5767A92E.5040602@rock-chips.com> Date: Mon, 20 Jun 2016 16:28:30 +0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.8.0 MIME-Version: 1.0 In-Reply-To: <5767A4C0.3080902@samsung.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Krzysztof: On 2016年06月20日 16:09, Krzysztof Kozlowski wrote: > On 06/20/2016 08:38 AM, Andy Yan wrote: >> This driver parses the reboot commands like "reboot bootloader" >> and "reboot recovery" to get a boot mode described in the >> device tree , then call the write interfae to store the boot >> mode in some place like special register or sram, which can >> be read by the bootloader after system reboot, then the bootloader >> can take different action according to the mode stored. >> >> This is commonly used on Android based devices, in order to >> reboot the device into fastboot or recovery mode. >> >> Reviewed-by: Matthias Brugger >> Reviewed-by: Moritz Fischer >> Tested-by: John Stultz >> Acked-by: John Stultz >> Signed-off-by: Andy Yan >> >> --- >> >> Changes in v9: >> - select MFD_SYSCON when syscon-reboot-mode driver enabled >> - refactoring error handling in reboot_mode_register >> >> Changes in v8: >> - do some cleanup when driver ubind >> >> Changes in v7: >> - address some suggestions from Krzysztof, make syscon-reboot-mode driver data self-contained. >> >> Changes in v6: None >> Changes in v5: >> - use two blank space under help in Kconfig >> - use unsigned int instead of int for member magic in struct mode_info >> >> Changes in v4: >> - make this driver depends on OF to avoid kbuild test error >> >> Changes in v3: >> - scan multi properities >> - add mask value for some platform which only use some bits of the register >> to store boot mode magic value >> >> Changes in v2: >> - move to dir drivers/power/reset/ >> - make syscon-reboot-mode a generic driver >> >> Changes in v1: >> - fix the embarrassed compile warning >> - correct the maskrom magic number >> - check for the normal reboot >> >> drivers/power/reset/Kconfig | 14 ++++ >> drivers/power/reset/Makefile | 2 + >> drivers/power/reset/reboot-mode.c | 128 +++++++++++++++++++++++++++++++ >> drivers/power/reset/reboot-mode.h | 14 ++++ >> drivers/power/reset/syscon-reboot-mode.c | 100 ++++++++++++++++++++++++ >> 5 files changed, 258 insertions(+) >> create mode 100644 drivers/power/reset/reboot-mode.c >> create mode 100644 drivers/power/reset/reboot-mode.h >> create mode 100644 drivers/power/reset/syscon-reboot-mode.c >> >> diff --git a/drivers/power/reset/Kconfig b/drivers/power/reset/Kconfig >> index 9bb2622..4ceaf74 100644 >> --- a/drivers/power/reset/Kconfig >> +++ b/drivers/power/reset/Kconfig >> @@ -183,5 +183,19 @@ config POWER_RESET_ZX >> help >> Reboot support for ZTE SoCs. >> >> +config REBOOT_MODE >> + tristate >> + >> +config SYSCON_REBOOT_MODE >> + bool "Generic SYSCON regmap reboot mode driver" > Why not tristate? I see many reset drivers in this directories use bool, so I follow them. > > Beside that the patch looks good. > > Best regards, > Krzysztof > >> + depends on OF >> + select REBOOT_MODE >> + select MFD_SYSCON >> + help >> + Say y here will enable reboot mode driver. This will >> + get reboot mode arguments and store it in SYSCON mapped >> + register, then the bootloader can read it to take different >> + action according to the mode. >> + > > >