Message ID | 1484559110-32221-1-git-send-email-Zhiqiang.Hou@nxp.com |
---|---|
State | Accepted |
Delegated to: | York Sun |
Headers | show |
On 01/16/2017 01:45 AM, Zhiqiang Hou wrote: > From: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> > > Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> > --- > V2: > - Generate the patch base on the latest code. > > arch/arm/cpu/armv8/Kconfig | 33 +++++++++++++++++++++++++++++++++ > arch/arm/cpu/armv8/Makefile | 2 +- > arch/arm/cpu/armv8/sec_firmware_asm.S | 4 ++-- > include/configs/ls1043ardb.h | 3 --- > include/configs/ls1046ardb.h | 4 ---- > 5 files changed, 36 insertions(+), 10 deletions(-) > > diff --git a/arch/arm/cpu/armv8/Kconfig b/arch/arm/cpu/armv8/Kconfig > index 22dce88..2ee5782 100644 > --- a/arch/arm/cpu/armv8/Kconfig > +++ b/arch/arm/cpu/armv8/Kconfig > @@ -21,6 +21,39 @@ config ARMV8_SPIN_TABLE > - Reserve the code for the spin-table and the release address > via a /memreserve/ region in the Device Tree. > > +menu "ARMv8 secure monitor firmware" > +config ARMV8_SEC_FIRMWARE_SUPPORT > + bool "Enable ARMv8 secure monitor firmware framework support" > + select OF_LIBFDT > + select FIT > + help > + This framework is aimed at making secure monitor firmware load > + process brief. > + Note: Only FIT format image is supported. > + You should prepare and provide the below information: > + - Address of secure firmware. > + - Address to hold the return address from secure firmware. > + - Secure firmware FIT image related information. > + Such as: SEC_FIRMWARE_FIT_IMAGE and SEC_FIRMEWARE_FIT_CNF_NAME > + - The target exception level that secure monitor firmware will > + return to. > + > +config SPL_ARMV8_SEC_FIRMWARE_SUPPORT > + bool "Enable ARMv8 secure monitor firmware framework support for SPL" > + select SPL_OF_LIBFDT > + select SPL_FIT > + help > + Say Y here to support this framework in SPL phase. > + > +config ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT > + bool "ARMv8 secure monitor firmware ERET address byteorder swap" > + depends on ARMV8_SEC_FIRMWARE_SUPPORT || SPL_ARMV8_SEC_FIRMWARE_SUPPORT > + help > + Say Y here when the endianness of the register or memory holding the > + Secure firmware exception return address is different with core's. > + > +endmenu > + Zhiqiang, After you move the macro to Kconfig, you should remove it from scripts/config_whitelist.txt. Please help me understand when and where ARMV8_SEC_FIRMWARE_SUPPORT is turned on? I am trying to resolve the conflict between this set and Prabhakar's patch for LS1012A PPA http://patchwork.ozlabs.org/patch/709650/. York
Hi York, Thanks for your comments! > -----Original Message----- > From: york sun > Sent: 2017年1月18日 3:04 > To: Z.Q. Hou <zhiqiang.hou@nxp.com>; u-boot@lists.denx.de; > albert.u.boot@aribaud.net; sjg@chromium.org; bmeng.cn@gmail.com; > hs@denx.de; yamada.masahiro@socionext.com; Ruchika Gupta > <ruchika.gupta@nxp.com>; eddy.petrisor@gmail.com; > s.temerkhanov@gmail.com; Prabhakar Kushwaha > <prabhakar.kushwaha@nxp.com>; sr@denx.de; van.freenix@gmail.com; > fgretief@spaceteq.co.za; rpjday@crashcourse.ca; trini@konsulko.com; > Priyanka Jain <priyanka.jain@nxp.com>; Mingkai Hu <mingkai.hu@nxp.com> > Subject: Re: [PATCHv2 1/4] kconfig: armv8: move armv8 sec_firmware > CONFIG_* to Kconfig > > On 01/16/2017 01:45 AM, Zhiqiang Hou wrote: > > From: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> > > > > Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> > > --- > > V2: > > - Generate the patch base on the latest code. > > > > arch/arm/cpu/armv8/Kconfig | 33 > +++++++++++++++++++++++++++++++++ > > arch/arm/cpu/armv8/Makefile | 2 +- > > arch/arm/cpu/armv8/sec_firmware_asm.S | 4 ++-- > > include/configs/ls1043ardb.h | 3 --- > > include/configs/ls1046ardb.h | 4 ---- > > 5 files changed, 36 insertions(+), 10 deletions(-) > > > > diff --git a/arch/arm/cpu/armv8/Kconfig b/arch/arm/cpu/armv8/Kconfig > > index 22dce88..2ee5782 100644 > > --- a/arch/arm/cpu/armv8/Kconfig > > +++ b/arch/arm/cpu/armv8/Kconfig > > @@ -21,6 +21,39 @@ config ARMV8_SPIN_TABLE > > - Reserve the code for the spin-table and the release address > > via a /memreserve/ region in the Device Tree. > > > > +menu "ARMv8 secure monitor firmware" > > +config ARMV8_SEC_FIRMWARE_SUPPORT > > + bool "Enable ARMv8 secure monitor firmware framework support" > > + select OF_LIBFDT > > + select FIT > > + help > > + This framework is aimed at making secure monitor firmware load > > + process brief. > > + Note: Only FIT format image is supported. > > + You should prepare and provide the below information: > > + - Address of secure firmware. > > + - Address to hold the return address from secure firmware. > > + - Secure firmware FIT image related information. > > + Such as: SEC_FIRMWARE_FIT_IMAGE and > SEC_FIRMEWARE_FIT_CNF_NAME > > + - The target exception level that secure monitor firmware will > > + return to. > > + > > +config SPL_ARMV8_SEC_FIRMWARE_SUPPORT > > + bool "Enable ARMv8 secure monitor firmware framework support for > SPL" > > + select SPL_OF_LIBFDT > > + select SPL_FIT > > + help > > + Say Y here to support this framework in SPL phase. > > + > > +config ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT > > + bool "ARMv8 secure monitor firmware ERET address byteorder swap" > > + depends on ARMV8_SEC_FIRMWARE_SUPPORT || > SPL_ARMV8_SEC_FIRMWARE_SUPPORT > > + help > > + Say Y here when the endianness of the register or memory holding the > > + Secure firmware exception return address is different with core's. > > + > > +endmenu > > + > > Zhiqiang, > > After you move the macro to Kconfig, you should remove it from > scripts/config_whitelist.txt. Shall I send an isolated patch to remove it? > Please help me understand when and where > ARMV8_SEC_FIRMWARE_SUPPORT is turned on? I am trying to resolve the > conflict between this set and Prabhakar's patch for LS1012A PPA > http://patchwork.ozlabs.org/patch/709650/. Select it under the config FSL_LS_PPA. Thanks, Zhiqiang
Reduced CC list. On 01/17/2017 06:23 PM, Z.Q. Hou wrote: > Hi York, > > Thanks for your comments! > >> -----Original Message----- >> From: york sun >> Sent: 2017年1月18日 3:04 >> To: Z.Q. Hou <zhiqiang.hou@nxp.com>; u-boot@lists.denx.de; >> albert.u.boot@aribaud.net; sjg@chromium.org; bmeng.cn@gmail.com; >> hs@denx.de; yamada.masahiro@socionext.com; Ruchika Gupta >> <ruchika.gupta@nxp.com>; eddy.petrisor@gmail.com; >> s.temerkhanov@gmail.com; Prabhakar Kushwaha >> <prabhakar.kushwaha@nxp.com>; sr@denx.de; van.freenix@gmail.com; >> fgretief@spaceteq.co.za; rpjday@crashcourse.ca; trini@konsulko.com; >> Priyanka Jain <priyanka.jain@nxp.com>; Mingkai Hu <mingkai.hu@nxp.com> >> Subject: Re: [PATCHv2 1/4] kconfig: armv8: move armv8 sec_firmware >> CONFIG_* to Kconfig >> >> On 01/16/2017 01:45 AM, Zhiqiang Hou wrote: >>> From: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> >>> >>> Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> >>> --- >>> V2: >>> - Generate the patch base on the latest code. >>> >>> arch/arm/cpu/armv8/Kconfig | 33 >> +++++++++++++++++++++++++++++++++ >>> arch/arm/cpu/armv8/Makefile | 2 +- >>> arch/arm/cpu/armv8/sec_firmware_asm.S | 4 ++-- >>> include/configs/ls1043ardb.h | 3 --- >>> include/configs/ls1046ardb.h | 4 ---- >>> 5 files changed, 36 insertions(+), 10 deletions(-) >>> >>> diff --git a/arch/arm/cpu/armv8/Kconfig b/arch/arm/cpu/armv8/Kconfig >>> index 22dce88..2ee5782 100644 >>> --- a/arch/arm/cpu/armv8/Kconfig >>> +++ b/arch/arm/cpu/armv8/Kconfig >>> @@ -21,6 +21,39 @@ config ARMV8_SPIN_TABLE >>> - Reserve the code for the spin-table and the release address >>> via a /memreserve/ region in the Device Tree. >>> >>> +menu "ARMv8 secure monitor firmware" >>> +config ARMV8_SEC_FIRMWARE_SUPPORT >>> + bool "Enable ARMv8 secure monitor firmware framework support" >>> + select OF_LIBFDT >>> + select FIT >>> + help >>> + This framework is aimed at making secure monitor firmware load >>> + process brief. >>> + Note: Only FIT format image is supported. >>> + You should prepare and provide the below information: >>> + - Address of secure firmware. >>> + - Address to hold the return address from secure firmware. >>> + - Secure firmware FIT image related information. >>> + Such as: SEC_FIRMWARE_FIT_IMAGE and >> SEC_FIRMEWARE_FIT_CNF_NAME >>> + - The target exception level that secure monitor firmware will >>> + return to. >>> + >>> +config SPL_ARMV8_SEC_FIRMWARE_SUPPORT >>> + bool "Enable ARMv8 secure monitor firmware framework support for >> SPL" >>> + select SPL_OF_LIBFDT >>> + select SPL_FIT >>> + help >>> + Say Y here to support this framework in SPL phase. >>> + >>> +config ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT >>> + bool "ARMv8 secure monitor firmware ERET address byteorder swap" >>> + depends on ARMV8_SEC_FIRMWARE_SUPPORT || >> SPL_ARMV8_SEC_FIRMWARE_SUPPORT >>> + help >>> + Say Y here when the endianness of the register or memory holding the >>> + Secure firmware exception return address is different with core's. >>> + >>> +endmenu >>> + >> >> Zhiqiang, >> >> After you move the macro to Kconfig, you should remove it from >> scripts/config_whitelist.txt. > > Shall I send an isolated patch to remove it? Not this time. I will remove it when I merge your patch. > >> Please help me understand when and where >> ARMV8_SEC_FIRMWARE_SUPPORT is turned on? I am trying to resolve the >> conflict between this set and Prabhakar's patch for LS1012A PPA >> http://patchwork.ozlabs.org/patch/709650/. > > Select it under the config FSL_LS_PPA. > You don't have any platform selecting this config, do you? Can you help Prabhakar to rebase his patch on top of yours? He has this config enabled for all three LS1012A platforms. York
Hi York, Thanks for your comments! > -----Original Message----- > From: york sun > Sent: 2017年1月18日 10:57 > To: Z.Q. Hou <zhiqiang.hou@nxp.com>; u-boot@lists.denx.de; Prabhakar > Kushwaha <prabhakar.kushwaha@nxp.com> > Subject: Re: [PATCHv2 1/4] kconfig: armv8: move armv8 sec_firmware > CONFIG_* to Kconfig > > Reduced CC list. > > On 01/17/2017 06:23 PM, Z.Q. Hou wrote: > > Hi York, > > > > Thanks for your comments! > > > >> -----Original Message----- > >> From: york sun > >> Sent: 2017年1月18日 3:04 > >> To: Z.Q. Hou <zhiqiang.hou@nxp.com>; u-boot@lists.denx.de; > >> albert.u.boot@aribaud.net; sjg@chromium.org; bmeng.cn@gmail.com; > >> hs@denx.de; yamada.masahiro@socionext.com; Ruchika Gupta > >> <ruchika.gupta@nxp.com>; eddy.petrisor@gmail.com; > >> s.temerkhanov@gmail.com; Prabhakar Kushwaha > >> <prabhakar.kushwaha@nxp.com>; sr@denx.de; van.freenix@gmail.com; > >> fgretief@spaceteq.co.za; rpjday@crashcourse.ca; trini@konsulko.com; > >> Priyanka Jain <priyanka.jain@nxp.com>; Mingkai Hu > >> <mingkai.hu@nxp.com> > >> Subject: Re: [PATCHv2 1/4] kconfig: armv8: move armv8 sec_firmware > >> CONFIG_* to Kconfig > >> > >> On 01/16/2017 01:45 AM, Zhiqiang Hou wrote: > >>> From: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> > >>> > >>> Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> > >>> --- > >>> V2: > >>> - Generate the patch base on the latest code. > >>> > >>> arch/arm/cpu/armv8/Kconfig | 33 > >> +++++++++++++++++++++++++++++++++ > >>> arch/arm/cpu/armv8/Makefile | 2 +- > >>> arch/arm/cpu/armv8/sec_firmware_asm.S | 4 ++-- > >>> include/configs/ls1043ardb.h | 3 --- > >>> include/configs/ls1046ardb.h | 4 ---- > >>> 5 files changed, 36 insertions(+), 10 deletions(-) > >>> > >>> diff --git a/arch/arm/cpu/armv8/Kconfig b/arch/arm/cpu/armv8/Kconfig > >>> index 22dce88..2ee5782 100644 > >>> --- a/arch/arm/cpu/armv8/Kconfig > >>> +++ b/arch/arm/cpu/armv8/Kconfig > >>> @@ -21,6 +21,39 @@ config ARMV8_SPIN_TABLE > >>> - Reserve the code for the spin-table and the release address > >>> via a /memreserve/ region in the Device Tree. > >>> > >>> +menu "ARMv8 secure monitor firmware" > >>> +config ARMV8_SEC_FIRMWARE_SUPPORT > >>> + bool "Enable ARMv8 secure monitor firmware framework support" > >>> + select OF_LIBFDT > >>> + select FIT > >>> + help > >>> + This framework is aimed at making secure monitor firmware load > >>> + process brief. > >>> + Note: Only FIT format image is supported. > >>> + You should prepare and provide the below information: > >>> + - Address of secure firmware. > >>> + - Address to hold the return address from secure firmware. > >>> + - Secure firmware FIT image related information. > >>> + Such as: SEC_FIRMWARE_FIT_IMAGE and > >> SEC_FIRMEWARE_FIT_CNF_NAME > >>> + - The target exception level that secure monitor firmware will > >>> + return to. > >>> + > >>> +config SPL_ARMV8_SEC_FIRMWARE_SUPPORT > >>> + bool "Enable ARMv8 secure monitor firmware framework support for > >> SPL" > >>> + select SPL_OF_LIBFDT > >>> + select SPL_FIT > >>> + help > >>> + Say Y here to support this framework in SPL phase. > >>> + > >>> +config ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT > >>> + bool "ARMv8 secure monitor firmware ERET address byteorder > swap" > >>> + depends on ARMV8_SEC_FIRMWARE_SUPPORT || > >> SPL_ARMV8_SEC_FIRMWARE_SUPPORT > >>> + help > >>> + Say Y here when the endianness of the register or memory holding > the > >>> + Secure firmware exception return address is different with core's. > >>> + > >>> +endmenu > >>> + > >> > >> Zhiqiang, > >> > >> After you move the macro to Kconfig, you should remove it from > >> scripts/config_whitelist.txt. > > > > Shall I send an isolated patch to remove it? > > Not this time. I will remove it when I merge your patch. Ok, thanks. > > > >> Please help me understand when and where > ARMV8_SEC_FIRMWARE_SUPPORT > >> is turned on? I am trying to resolve the conflict between this set > >> and Prabhakar's patch for LS1012A PPA > >> http://patchwork.ozlabs.org/patch/709650/. > > > > Select it under the config FSL_LS_PPA. > > > > You don't have any platform selecting this config, do you? Can you help > Prabhakar to rebase his patch on top of yours? He has this config enabled for > all three LS1012A platforms. I have added the 'select ARMV8_SEC_FIRMWARE_SUPPORT' under the FSL_LS_PPA in the 3rd patch of this patchset. Yes, I have sent the new method to enable PPA to Prabhakar. Thanks, Zhiqiang
On 01/17/2017 10:57 PM, Z.Q. Hou wrote: > Hi York, > > Thanks for your comments! > >> -----Original Message----- >> From: york sun >> Sent: 2017年1月18日 10:57 >> To: Z.Q. Hou <zhiqiang.hou@nxp.com>; u-boot@lists.denx.de; Prabhakar >> Kushwaha <prabhakar.kushwaha@nxp.com> >> Subject: Re: [PATCHv2 1/4] kconfig: armv8: move armv8 sec_firmware >> CONFIG_* to Kconfig >> >> Reduced CC list. >> >> On 01/17/2017 06:23 PM, Z.Q. Hou wrote: >>> Hi York, >>> >>> Thanks for your comments! >>> >>>> -----Original Message----- >>>> From: york sun >>>> Sent: 2017年1月18日 3:04 >>>> To: Z.Q. Hou <zhiqiang.hou@nxp.com>; u-boot@lists.denx.de; >>>> albert.u.boot@aribaud.net; sjg@chromium.org; bmeng.cn@gmail.com; >>>> hs@denx.de; yamada.masahiro@socionext.com; Ruchika Gupta >>>> <ruchika.gupta@nxp.com>; eddy.petrisor@gmail.com; >>>> s.temerkhanov@gmail.com; Prabhakar Kushwaha >>>> <prabhakar.kushwaha@nxp.com>; sr@denx.de; van.freenix@gmail.com; >>>> fgretief@spaceteq.co.za; rpjday@crashcourse.ca; trini@konsulko.com; >>>> Priyanka Jain <priyanka.jain@nxp.com>; Mingkai Hu >>>> <mingkai.hu@nxp.com> >>>> Subject: Re: [PATCHv2 1/4] kconfig: armv8: move armv8 sec_firmware >>>> CONFIG_* to Kconfig >>>> >>>> On 01/16/2017 01:45 AM, Zhiqiang Hou wrote: >>>>> From: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> >>>>> >>>>> Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> >>>>> --- >>>>> V2: >>>>> - Generate the patch base on the latest code. >>>>> >>>>> arch/arm/cpu/armv8/Kconfig | 33 >>>> +++++++++++++++++++++++++++++++++ >>>>> arch/arm/cpu/armv8/Makefile | 2 +- >>>>> arch/arm/cpu/armv8/sec_firmware_asm.S | 4 ++-- >>>>> include/configs/ls1043ardb.h | 3 --- >>>>> include/configs/ls1046ardb.h | 4 ---- >>>>> 5 files changed, 36 insertions(+), 10 deletions(-) >>>>> >>>>> diff --git a/arch/arm/cpu/armv8/Kconfig b/arch/arm/cpu/armv8/Kconfig >>>>> index 22dce88..2ee5782 100644 >>>>> --- a/arch/arm/cpu/armv8/Kconfig >>>>> +++ b/arch/arm/cpu/armv8/Kconfig >>>>> @@ -21,6 +21,39 @@ config ARMV8_SPIN_TABLE >>>>> - Reserve the code for the spin-table and the release address >>>>> via a /memreserve/ region in the Device Tree. >>>>> >>>>> +menu "ARMv8 secure monitor firmware" >>>>> +config ARMV8_SEC_FIRMWARE_SUPPORT >>>>> + bool "Enable ARMv8 secure monitor firmware framework support" >>>>> + select OF_LIBFDT >>>>> + select FIT >>>>> + help >>>>> + This framework is aimed at making secure monitor firmware load >>>>> + process brief. >>>>> + Note: Only FIT format image is supported. >>>>> + You should prepare and provide the below information: >>>>> + - Address of secure firmware. >>>>> + - Address to hold the return address from secure firmware. >>>>> + - Secure firmware FIT image related information. >>>>> + Such as: SEC_FIRMWARE_FIT_IMAGE and >>>> SEC_FIRMEWARE_FIT_CNF_NAME >>>>> + - The target exception level that secure monitor firmware will >>>>> + return to. >>>>> + >>>>> +config SPL_ARMV8_SEC_FIRMWARE_SUPPORT >>>>> + bool "Enable ARMv8 secure monitor firmware framework support for >>>> SPL" >>>>> + select SPL_OF_LIBFDT >>>>> + select SPL_FIT >>>>> + help >>>>> + Say Y here to support this framework in SPL phase. >>>>> + >>>>> +config ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT >>>>> + bool "ARMv8 secure monitor firmware ERET address byteorder >> swap" >>>>> + depends on ARMV8_SEC_FIRMWARE_SUPPORT || >>>> SPL_ARMV8_SEC_FIRMWARE_SUPPORT >>>>> + help >>>>> + Say Y here when the endianness of the register or memory holding >> the >>>>> + Secure firmware exception return address is different with core's. >>>>> + >>>>> +endmenu >>>>> + >>>> >>>> Zhiqiang, >>>> >>>> After you move the macro to Kconfig, you should remove it from >>>> scripts/config_whitelist.txt. >>> >>> Shall I send an isolated patch to remove it? >> >> Not this time. I will remove it when I merge your patch. > > Ok, thanks. > >>> >>>> Please help me understand when and where >> ARMV8_SEC_FIRMWARE_SUPPORT >>>> is turned on? I am trying to resolve the conflict between this set >>>> and Prabhakar's patch for LS1012A PPA >>>> http://patchwork.ozlabs.org/patch/709650/. >>> >>> Select it under the config FSL_LS_PPA. >>> >> >> You don't have any platform selecting this config, do you? Can you help >> Prabhakar to rebase his patch on top of yours? He has this config enabled for >> all three LS1012A platforms. > > I have added the 'select ARMV8_SEC_FIRMWARE_SUPPORT' under the FSL_LS_PPA in the 3rd patch of this patchset. > Yes, I have sent the new method to enable PPA to Prabhakar. Ah! I made a mistake when resolving the conflict. Glad I asked you. Thanks. York
> -----Original Message----- > From: york sun > Sent: 2017年1月19日 1:43 > To: Z.Q. Hou <zhiqiang.hou@nxp.com>; u-boot@lists.denx.de; Prabhakar > Kushwaha <prabhakar.kushwaha@nxp.com> > Subject: Re: [PATCHv2 1/4] kconfig: armv8: move armv8 sec_firmware > CONFIG_* to Kconfig > > On 01/17/2017 10:57 PM, Z.Q. Hou wrote: > > Hi York, > > > > Thanks for your comments! > > > >> -----Original Message----- > >> From: york sun > >> Sent: 2017年1月18日 10:57 > >> To: Z.Q. Hou <zhiqiang.hou@nxp.com>; u-boot@lists.denx.de; Prabhakar > >> Kushwaha <prabhakar.kushwaha@nxp.com> > >> Subject: Re: [PATCHv2 1/4] kconfig: armv8: move armv8 sec_firmware > >> CONFIG_* to Kconfig > >> > >> Reduced CC list. > >> > >> On 01/17/2017 06:23 PM, Z.Q. Hou wrote: > >>> Hi York, > >>> > >>> Thanks for your comments! > >>> > >>>> -----Original Message----- > >>>> From: york sun > >>>> Sent: 2017年1月18日 3:04 > >>>> To: Z.Q. Hou <zhiqiang.hou@nxp.com>; u-boot@lists.denx.de; > >>>> albert.u.boot@aribaud.net; sjg@chromium.org; bmeng.cn@gmail.com; > >>>> hs@denx.de; yamada.masahiro@socionext.com; Ruchika Gupta > >>>> <ruchika.gupta@nxp.com>; eddy.petrisor@gmail.com; > >>>> s.temerkhanov@gmail.com; Prabhakar Kushwaha > >>>> <prabhakar.kushwaha@nxp.com>; sr@denx.de; van.freenix@gmail.com; > >>>> fgretief@spaceteq.co.za; rpjday@crashcourse.ca; trini@konsulko.com; > >>>> Priyanka Jain <priyanka.jain@nxp.com>; Mingkai Hu > >>>> <mingkai.hu@nxp.com> > >>>> Subject: Re: [PATCHv2 1/4] kconfig: armv8: move armv8 sec_firmware > >>>> CONFIG_* to Kconfig > >>>> > >>>> On 01/16/2017 01:45 AM, Zhiqiang Hou wrote: > >>>>> From: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> > >>>>> > >>>>> Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> > >>>>> --- > >>>>> V2: > >>>>> - Generate the patch base on the latest code. > >>>>> > >>>>> arch/arm/cpu/armv8/Kconfig | 33 > >>>> +++++++++++++++++++++++++++++++++ > >>>>> arch/arm/cpu/armv8/Makefile | 2 +- > >>>>> arch/arm/cpu/armv8/sec_firmware_asm.S | 4 ++-- > >>>>> include/configs/ls1043ardb.h | 3 --- > >>>>> include/configs/ls1046ardb.h | 4 ---- > >>>>> 5 files changed, 36 insertions(+), 10 deletions(-) > >>>>> > >>>>> diff --git a/arch/arm/cpu/armv8/Kconfig > >>>>> b/arch/arm/cpu/armv8/Kconfig index 22dce88..2ee5782 100644 > >>>>> --- a/arch/arm/cpu/armv8/Kconfig > >>>>> +++ b/arch/arm/cpu/armv8/Kconfig > >>>>> @@ -21,6 +21,39 @@ config ARMV8_SPIN_TABLE > >>>>> - Reserve the code for the spin-table and the release address > >>>>> via a /memreserve/ region in the Device Tree. > >>>>> > >>>>> +menu "ARMv8 secure monitor firmware" > >>>>> +config ARMV8_SEC_FIRMWARE_SUPPORT > >>>>> + bool "Enable ARMv8 secure monitor firmware framework support" > >>>>> + select OF_LIBFDT > >>>>> + select FIT > >>>>> + help > >>>>> + This framework is aimed at making secure monitor firmware load > >>>>> + process brief. > >>>>> + Note: Only FIT format image is supported. > >>>>> + You should prepare and provide the below information: > >>>>> + - Address of secure firmware. > >>>>> + - Address to hold the return address from secure firmware. > >>>>> + - Secure firmware FIT image related information. > >>>>> + Such as: SEC_FIRMWARE_FIT_IMAGE and > >>>> SEC_FIRMEWARE_FIT_CNF_NAME > >>>>> + - The target exception level that secure monitor firmware will > >>>>> + return to. > >>>>> + > >>>>> +config SPL_ARMV8_SEC_FIRMWARE_SUPPORT > >>>>> + bool "Enable ARMv8 secure monitor firmware framework support for > >>>> SPL" > >>>>> + select SPL_OF_LIBFDT > >>>>> + select SPL_FIT > >>>>> + help > >>>>> + Say Y here to support this framework in SPL phase. > >>>>> + > >>>>> +config ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT > >>>>> + bool "ARMv8 secure monitor firmware ERET address byteorder > >> swap" > >>>>> + depends on ARMV8_SEC_FIRMWARE_SUPPORT || > >>>> SPL_ARMV8_SEC_FIRMWARE_SUPPORT > >>>>> + help > >>>>> + Say Y here when the endianness of the register or memory > >>>>> +holding > >> the > >>>>> + Secure firmware exception return address is different with core's. > >>>>> + > >>>>> +endmenu > >>>>> + > >>>> > >>>> Zhiqiang, > >>>> > >>>> After you move the macro to Kconfig, you should remove it from > >>>> scripts/config_whitelist.txt. > >>> > >>> Shall I send an isolated patch to remove it? > >> > >> Not this time. I will remove it when I merge your patch. > > > > Ok, thanks. > > > >>> > >>>> Please help me understand when and where > >> ARMV8_SEC_FIRMWARE_SUPPORT > >>>> is turned on? I am trying to resolve the conflict between this set > >>>> and Prabhakar's patch for LS1012A PPA > >>>> http://patchwork.ozlabs.org/patch/709650/. > >>> > >>> Select it under the config FSL_LS_PPA. > >>> > >> > >> You don't have any platform selecting this config, do you? Can you > >> help Prabhakar to rebase his patch on top of yours? He has this > >> config enabled for all three LS1012A platforms. > > > > I have added the 'select ARMV8_SEC_FIRMWARE_SUPPORT' under the > FSL_LS_PPA in the 3rd patch of this patchset. > > Yes, I have sent the new method to enable PPA to Prabhakar. > > Ah! I made a mistake when resolving the conflict. Glad I asked you. Thanks. All right! Thanks, Zhiqiang
On 01/16/2017 01:45 AM, Zhiqiang Hou wrote: > From: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> > > Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com> > --- > V2: > - Generate the patch base on the latest code. > This set is applied to fsl-qoriq master, awaiting upstream. Thanks. York
diff --git a/arch/arm/cpu/armv8/Kconfig b/arch/arm/cpu/armv8/Kconfig index 22dce88..2ee5782 100644 --- a/arch/arm/cpu/armv8/Kconfig +++ b/arch/arm/cpu/armv8/Kconfig @@ -21,6 +21,39 @@ config ARMV8_SPIN_TABLE - Reserve the code for the spin-table and the release address via a /memreserve/ region in the Device Tree. +menu "ARMv8 secure monitor firmware" +config ARMV8_SEC_FIRMWARE_SUPPORT + bool "Enable ARMv8 secure monitor firmware framework support" + select OF_LIBFDT + select FIT + help + This framework is aimed at making secure monitor firmware load + process brief. + Note: Only FIT format image is supported. + You should prepare and provide the below information: + - Address of secure firmware. + - Address to hold the return address from secure firmware. + - Secure firmware FIT image related information. + Such as: SEC_FIRMWARE_FIT_IMAGE and SEC_FIRMEWARE_FIT_CNF_NAME + - The target exception level that secure monitor firmware will + return to. + +config SPL_ARMV8_SEC_FIRMWARE_SUPPORT + bool "Enable ARMv8 secure monitor firmware framework support for SPL" + select SPL_OF_LIBFDT + select SPL_FIT + help + Say Y here to support this framework in SPL phase. + +config ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT + bool "ARMv8 secure monitor firmware ERET address byteorder swap" + depends on ARMV8_SEC_FIRMWARE_SUPPORT || SPL_ARMV8_SEC_FIRMWARE_SUPPORT + help + Say Y here when the endianness of the register or memory holding the + Secure firmware exception return address is different with core's. + +endmenu + config PSCI_RESET bool "Use PSCI for reset and shutdown" default y diff --git a/arch/arm/cpu/armv8/Makefile b/arch/arm/cpu/armv8/Makefile index 28ba786..1f1de4a 100644 --- a/arch/arm/cpu/armv8/Makefile +++ b/arch/arm/cpu/armv8/Makefile @@ -19,7 +19,7 @@ obj-y += cpu-dt.o ifndef CONFIG_SPL_BUILD obj-$(CONFIG_ARMV8_SPIN_TABLE) += spin_table.o spin_table_v8.o endif -obj-$(CONFIG_ARMV8_SEC_FIRMWARE_SUPPORT) += sec_firmware.o sec_firmware_asm.o +obj-$(CONFIG_$(SPL_)ARMV8_SEC_FIRMWARE_SUPPORT) += sec_firmware.o sec_firmware_asm.o obj-$(CONFIG_FSL_LAYERSCAPE) += fsl-layerscape/ obj-$(CONFIG_S32V234) += s32v234/ diff --git a/arch/arm/cpu/armv8/sec_firmware_asm.S b/arch/arm/cpu/armv8/sec_firmware_asm.S index 903195d..6bae15d 100644 --- a/arch/arm/cpu/armv8/sec_firmware_asm.S +++ b/arch/arm/cpu/armv8/sec_firmware_asm.S @@ -23,12 +23,12 @@ WEAK(_sec_firmware_entry) /* Set exception return address hold pointer */ adr x4, 1f mov x3, x4 -#ifdef SEC_FIRMWARE_ERET_ADDR_REVERT +#ifdef CONFIG_ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT rev w3, w3 #endif str w3, [x1] lsr x3, x4, #32 -#ifdef SEC_FIRMWARE_ERET_ADDR_REVERT +#ifdef CONFIG_ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT rev w3, w3 #endif str w3, [x2] diff --git a/include/configs/ls1043ardb.h b/include/configs/ls1043ardb.h index 71c26bd..cc9371a 100644 --- a/include/configs/ls1043ardb.h +++ b/include/configs/ls1043ardb.h @@ -10,9 +10,6 @@ #include "ls1043a_common.h" #if defined(CONFIG_FSL_LS_PPA) -#define CONFIG_ARMV8_SEC_FIRMWARE_SUPPORT -#define SEC_FIRMWARE_ERET_ADDR_REVERT - #define CONFIG_SYS_LS_PPA_FW_IN_XIP #ifdef CONFIG_SYS_LS_PPA_FW_IN_XIP #define CONFIG_SYS_LS_PPA_FW_ADDR 0x60500000 diff --git a/include/configs/ls1046ardb.h b/include/configs/ls1046ardb.h index 2fe8fc1..8ede24c 100644 --- a/include/configs/ls1046ardb.h +++ b/include/configs/ls1046ardb.h @@ -10,10 +10,6 @@ #include "ls1046a_common.h" #if defined(CONFIG_FSL_LS_PPA) -#define CONFIG_ARMV8_PSCI -#define CONFIG_ARMV8_SEC_FIRMWARE_SUPPORT -#define CONFIG_SYS_LS_PPA_DRAM_BLOCK_MIN_SIZE (1UL * 1024 * 1024) - #define CONFIG_SYS_LS_PPA_FW_IN_XIP #ifdef CONFIG_SYS_LS_PPA_FW_IN_XIP #define CONFIG_SYS_LS_PPA_FW_ADDR 0x40500000