* [PATCH] mmc: sdhci-esdhc-imx: Enable boot partition access from DT @ 2014-09-02 15:49 Jean-Michel Hautbois 2014-09-03 2:59 ` Dong Aisheng 2014-09-03 8:30 ` Ulf Hansson 0 siblings, 2 replies; 7+ messages in thread From: Jean-Michel Hautbois @ 2014-09-02 15:49 UTC (permalink / raw) To: linux-mmc, linux-kernel, devicetree Cc: rmk+kernel, shawn.guo, b29396, peter.griffin, tgih.jun, h80.chung, ulf.hansson, chris, galak, ijc+devicetree, mark.rutland, pawel.moll, robh+dt, Jean-Michel Hautbois This property is useful when we don't want to access boot partitions on eMMC Signed-off-by: Jean-Michel Hautbois <jean-michel.hautbois@vodalys.com> --- Documentation/devicetree/bindings/mmc/mmc.txt | 1 + drivers/mmc/host/sdhci-esdhc-imx.c | 8 ++++++++ include/linux/platform_data/mmc-esdhc-imx.h | 1 + 3 files changed, 10 insertions(+) diff --git a/Documentation/devicetree/bindings/mmc/mmc.txt b/Documentation/devicetree/bindings/mmc/mmc.txt index 431716e..59cc854 100644 --- a/Documentation/devicetree/bindings/mmc/mmc.txt +++ b/Documentation/devicetree/bindings/mmc/mmc.txt @@ -40,6 +40,7 @@ Optional properties: - mmc-hs200-1_2v: eMMC HS200 mode(1.2V I/O) is supported - mmc-hs400-1_8v: eMMC HS400 mode(1.8V I/O) is supported - mmc-hs400-1_2v: eMMC HS400 mode(1.2V I/O) is supported +- no-boot-part : when preset, tells to access boot partitions *NOTE* on CD and WP polarity. To use common for all SD/MMC host controllers line polarity properties, we have to fix the meaning of the "normal" and "inverted" diff --git a/drivers/mmc/host/sdhci-esdhc-imx.c b/drivers/mmc/host/sdhci-esdhc-imx.c index ccec0e3..439e663 100644 --- a/drivers/mmc/host/sdhci-esdhc-imx.c +++ b/drivers/mmc/host/sdhci-esdhc-imx.c @@ -942,6 +942,11 @@ sdhci_esdhc_imx_probe_dt(struct platform_device *pdev, if (of_property_read_u32(np, "fsl,delay-line", &boarddata->delay_line)) boarddata->delay_line = 0; + if (of_find_property(np, "no-boot-part", NULL)) + boarddata->access_boot_part = false; + else + boarddata->access_boot_part = true; + return 0; } #else @@ -1119,6 +1124,9 @@ static int sdhci_esdhc_imx_probe(struct platform_device *pdev) host->quirks2 |= SDHCI_QUIRK2_NO_1_8_V; } + if (!boarddata->access_boot_part) + host->mmc->caps2 |= MMC_CAP2_BOOTPART_NOACC; + err = sdhci_add_host(host); if (err) goto disable_clk; diff --git a/include/linux/platform_data/mmc-esdhc-imx.h b/include/linux/platform_data/mmc-esdhc-imx.h index 75f70f6..a34ee9e 100644 --- a/include/linux/platform_data/mmc-esdhc-imx.h +++ b/include/linux/platform_data/mmc-esdhc-imx.h @@ -46,5 +46,6 @@ struct esdhc_platform_data { unsigned int f_max; bool support_vsel; unsigned int delay_line; + bool access_boot_part; }; #endif /* __ASM_ARCH_IMX_ESDHC_H */ 2.0.4 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH] mmc: sdhci-esdhc-imx: Enable boot partition access from DT 2014-09-02 15:49 [PATCH] mmc: sdhci-esdhc-imx: Enable boot partition access from DT Jean-Michel Hautbois @ 2014-09-03 2:59 ` Dong Aisheng 2014-09-03 8:30 ` Ulf Hansson 1 sibling, 0 replies; 7+ messages in thread From: Dong Aisheng @ 2014-09-03 2:59 UTC (permalink / raw) To: Jean-Michel Hautbois Cc: linux-mmc, linux-kernel, devicetree, rmk+kernel, shawn.guo, peter.griffin, tgih.jun, h80.chung, ulf.hansson, chris, galak, ijc+devicetree, mark.rutland, pawel.moll, robh+dt On Tue, Sep 02, 2014 at 05:49:37PM +0200, Jean-Michel Hautbois wrote: > This property is useful when we don't want to access boot partitions on eMMC > Any special reason why not access boot partitions on eMMC? Not allow user to access it? > Signed-off-by: Jean-Michel Hautbois <jean-michel.hautbois@vodalys.com> > --- > Documentation/devicetree/bindings/mmc/mmc.txt | 1 + > drivers/mmc/host/sdhci-esdhc-imx.c | 8 ++++++++ > include/linux/platform_data/mmc-esdhc-imx.h | 1 + > 3 files changed, 10 insertions(+) > > diff --git a/Documentation/devicetree/bindings/mmc/mmc.txt b/Documentation/devicetree/bindings/mmc/mmc.txt > index 431716e..59cc854 100644 > --- a/Documentation/devicetree/bindings/mmc/mmc.txt > +++ b/Documentation/devicetree/bindings/mmc/mmc.txt > @@ -40,6 +40,7 @@ Optional properties: > - mmc-hs200-1_2v: eMMC HS200 mode(1.2V I/O) is supported > - mmc-hs400-1_8v: eMMC HS400 mode(1.8V I/O) is supported > - mmc-hs400-1_2v: eMMC HS400 mode(1.2V I/O) is supported > +- no-boot-part : when preset, tells to access boot partitions The file you changed is common mmc binding doc. You may also want to add the support in mmc_of_parse. And since sdhci-esdhc-imx is not using mmc_of_parse currently, maybe it's time to convert to it. Regards Dong Aisheng > > *NOTE* on CD and WP polarity. To use common for all SD/MMC host controllers line > polarity properties, we have to fix the meaning of the "normal" and "inverted" > diff --git a/drivers/mmc/host/sdhci-esdhc-imx.c b/drivers/mmc/host/sdhci-esdhc-imx.c > index ccec0e3..439e663 100644 > --- a/drivers/mmc/host/sdhci-esdhc-imx.c > +++ b/drivers/mmc/host/sdhci-esdhc-imx.c > @@ -942,6 +942,11 @@ sdhci_esdhc_imx_probe_dt(struct platform_device *pdev, > if (of_property_read_u32(np, "fsl,delay-line", &boarddata->delay_line)) > boarddata->delay_line = 0; > > + if (of_find_property(np, "no-boot-part", NULL)) > + boarddata->access_boot_part = false; > + else > + boarddata->access_boot_part = true; > + > return 0; > } > #else > @@ -1119,6 +1124,9 @@ static int sdhci_esdhc_imx_probe(struct platform_device *pdev) > host->quirks2 |= SDHCI_QUIRK2_NO_1_8_V; > } > > + if (!boarddata->access_boot_part) > + host->mmc->caps2 |= MMC_CAP2_BOOTPART_NOACC; > + > err = sdhci_add_host(host); > if (err) > goto disable_clk; > diff --git a/include/linux/platform_data/mmc-esdhc-imx.h b/include/linux/platform_data/mmc-esdhc-imx.h > index 75f70f6..a34ee9e 100644 > --- a/include/linux/platform_data/mmc-esdhc-imx.h > +++ b/include/linux/platform_data/mmc-esdhc-imx.h > @@ -46,5 +46,6 @@ struct esdhc_platform_data { > unsigned int f_max; > bool support_vsel; > unsigned int delay_line; > + bool access_boot_part; > }; > #endif /* __ASM_ARCH_IMX_ESDHC_H */ > > 2.0.4 > ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] mmc: sdhci-esdhc-imx: Enable boot partition access from DT 2014-09-02 15:49 [PATCH] mmc: sdhci-esdhc-imx: Enable boot partition access from DT Jean-Michel Hautbois 2014-09-03 2:59 ` Dong Aisheng @ 2014-09-03 8:30 ` Ulf Hansson 2014-09-03 9:02 ` Adrian Hunter 1 sibling, 1 reply; 7+ messages in thread From: Ulf Hansson @ 2014-09-03 8:30 UTC (permalink / raw) To: Jean-Michel Hautbois, Adrian Hunter Cc: linux-mmc, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Russell King, Shawn Guo, Dong Aisheng, Peter Griffin, tgih.jun@samsung.com, h80.chung, Chris Ball, Kumar Gala, Ian Campbell, Mark Rutland, Pawel Moll, Rob Herring On 2 September 2014 17:49, Jean-Michel Hautbois <jean-michel.hautbois@vodalys.com> wrote: > This property is useful when we don't want to access boot partitions on eMMC > > Signed-off-by: Jean-Michel Hautbois <jean-michel.hautbois@vodalys.com> > --- > Documentation/devicetree/bindings/mmc/mmc.txt | 1 + > drivers/mmc/host/sdhci-esdhc-imx.c | 8 ++++++++ > include/linux/platform_data/mmc-esdhc-imx.h | 1 + > 3 files changed, 10 insertions(+) > > diff --git a/Documentation/devicetree/bindings/mmc/mmc.txt b/Documentation/devicetree/bindings/mmc/mmc.txt > index 431716e..59cc854 100644 > --- a/Documentation/devicetree/bindings/mmc/mmc.txt > +++ b/Documentation/devicetree/bindings/mmc/mmc.txt > @@ -40,6 +40,7 @@ Optional properties: > - mmc-hs200-1_2v: eMMC HS200 mode(1.2V I/O) is supported > - mmc-hs400-1_8v: eMMC HS400 mode(1.8V I/O) is supported > - mmc-hs400-1_2v: eMMC HS400 mode(1.2V I/O) is supported > +- no-boot-part : when preset, tells to access boot partitions > > *NOTE* on CD and WP polarity. To use common for all SD/MMC host controllers line > polarity properties, we have to fix the meaning of the "normal" and "inverted" > diff --git a/drivers/mmc/host/sdhci-esdhc-imx.c b/drivers/mmc/host/sdhci-esdhc-imx.c > index ccec0e3..439e663 100644 > --- a/drivers/mmc/host/sdhci-esdhc-imx.c > +++ b/drivers/mmc/host/sdhci-esdhc-imx.c > @@ -942,6 +942,11 @@ sdhci_esdhc_imx_probe_dt(struct platform_device *pdev, > if (of_property_read_u32(np, "fsl,delay-line", &boarddata->delay_line)) > boarddata->delay_line = 0; > > + if (of_find_property(np, "no-boot-part", NULL)) > + boarddata->access_boot_part = false; > + else > + boarddata->access_boot_part = true; > + > return 0; > } > #else > @@ -1119,6 +1124,9 @@ static int sdhci_esdhc_imx_probe(struct platform_device *pdev) > host->quirks2 |= SDHCI_QUIRK2_NO_1_8_V; > } > > + if (!boarddata->access_boot_part) > + host->mmc->caps2 |= MMC_CAP2_BOOTPART_NOACC; > + Hmm, I don't think MMC_CAP2_BOOTPART_NOACC should have a DT binding. Does it describe the hardware in some form? Actually I would like to question why MMC_CAP2_BOOTPART_NOACC exists at all. If there are cards that don't supports the BOOT area, shouldn't we have a card quirk for it instead of a host cap? Maybe Adrian Hunter, how originally wrote the patch for adding MMC_CAP2_BOOTPART_NOACC, could help me understand the reasons behind it!? Kind regards Uffe ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] mmc: sdhci-esdhc-imx: Enable boot partition access from DT 2014-09-03 8:30 ` Ulf Hansson @ 2014-09-03 9:02 ` Adrian Hunter 2014-09-03 9:09 ` Ulf Hansson 0 siblings, 1 reply; 7+ messages in thread From: Adrian Hunter @ 2014-09-03 9:02 UTC (permalink / raw) To: Ulf Hansson, Jean-Michel Hautbois Cc: linux-mmc, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Russell King, Shawn Guo, Dong Aisheng, Peter Griffin, tgih.jun@samsung.com, h80.chung, Chris Ball, Kumar Gala, Ian Campbell, Mark Rutland, Pawel Moll, Rob Herring On 09/03/2014 11:30 AM, Ulf Hansson wrote: > On 2 September 2014 17:49, Jean-Michel Hautbois > <jean-michel.hautbois@vodalys.com> wrote: >> This property is useful when we don't want to access boot partitions on eMMC >> >> Signed-off-by: Jean-Michel Hautbois <jean-michel.hautbois@vodalys.com> >> --- >> Documentation/devicetree/bindings/mmc/mmc.txt | 1 + >> drivers/mmc/host/sdhci-esdhc-imx.c | 8 ++++++++ >> include/linux/platform_data/mmc-esdhc-imx.h | 1 + >> 3 files changed, 10 insertions(+) >> >> diff --git a/Documentation/devicetree/bindings/mmc/mmc.txt b/Documentation/devicetree/bindings/mmc/mmc.txt >> index 431716e..59cc854 100644 >> --- a/Documentation/devicetree/bindings/mmc/mmc.txt >> +++ b/Documentation/devicetree/bindings/mmc/mmc.txt >> @@ -40,6 +40,7 @@ Optional properties: >> - mmc-hs200-1_2v: eMMC HS200 mode(1.2V I/O) is supported >> - mmc-hs400-1_8v: eMMC HS400 mode(1.8V I/O) is supported >> - mmc-hs400-1_2v: eMMC HS400 mode(1.2V I/O) is supported >> +- no-boot-part : when preset, tells to access boot partitions >> >> *NOTE* on CD and WP polarity. To use common for all SD/MMC host controllers line >> polarity properties, we have to fix the meaning of the "normal" and "inverted" >> diff --git a/drivers/mmc/host/sdhci-esdhc-imx.c b/drivers/mmc/host/sdhci-esdhc-imx.c >> index ccec0e3..439e663 100644 >> --- a/drivers/mmc/host/sdhci-esdhc-imx.c >> +++ b/drivers/mmc/host/sdhci-esdhc-imx.c >> @@ -942,6 +942,11 @@ sdhci_esdhc_imx_probe_dt(struct platform_device *pdev, >> if (of_property_read_u32(np, "fsl,delay-line", &boarddata->delay_line)) >> boarddata->delay_line = 0; >> >> + if (of_find_property(np, "no-boot-part", NULL)) >> + boarddata->access_boot_part = false; >> + else >> + boarddata->access_boot_part = true; >> + >> return 0; >> } >> #else >> @@ -1119,6 +1124,9 @@ static int sdhci_esdhc_imx_probe(struct platform_device *pdev) >> host->quirks2 |= SDHCI_QUIRK2_NO_1_8_V; >> } >> >> + if (!boarddata->access_boot_part) >> + host->mmc->caps2 |= MMC_CAP2_BOOTPART_NOACC; >> + > > Hmm, I don't think MMC_CAP2_BOOTPART_NOACC should have a DT binding. > Does it describe the hardware in some form? > > Actually I would like to question why MMC_CAP2_BOOTPART_NOACC exists > at all. If there are cards that don't supports the BOOT area, > shouldn't we have a card quirk for it instead of a host cap? Maybe > Adrian Hunter, how originally wrote the patch for adding > MMC_CAP2_BOOTPART_NOACC, could help me understand the reasons behind > it!? It was added because platform firmware was able to prevent access to the boot partitions (for security I think), so attempts to access them would fail messily. It was not related to any specific card. ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] mmc: sdhci-esdhc-imx: Enable boot partition access from DT 2014-09-03 9:02 ` Adrian Hunter @ 2014-09-03 9:09 ` Ulf Hansson 2014-09-03 13:08 ` Jean-Michel Hautbois 0 siblings, 1 reply; 7+ messages in thread From: Ulf Hansson @ 2014-09-03 9:09 UTC (permalink / raw) To: Adrian Hunter Cc: Jean-Michel Hautbois, linux-mmc, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Russell King, Shawn Guo, Dong Aisheng, Peter Griffin, tgih.jun@samsung.com, h80.chung, Chris Ball, Kumar Gala, Ian Campbell, Mark Rutland, Pawel Moll, Rob Herring On 3 September 2014 11:02, Adrian Hunter <adrian.hunter@intel.com> wrote: > On 09/03/2014 11:30 AM, Ulf Hansson wrote: >> On 2 September 2014 17:49, Jean-Michel Hautbois >> <jean-michel.hautbois@vodalys.com> wrote: >>> This property is useful when we don't want to access boot partitions on eMMC >>> >>> Signed-off-by: Jean-Michel Hautbois <jean-michel.hautbois@vodalys.com> >>> --- >>> Documentation/devicetree/bindings/mmc/mmc.txt | 1 + >>> drivers/mmc/host/sdhci-esdhc-imx.c | 8 ++++++++ >>> include/linux/platform_data/mmc-esdhc-imx.h | 1 + >>> 3 files changed, 10 insertions(+) >>> >>> diff --git a/Documentation/devicetree/bindings/mmc/mmc.txt b/Documentation/devicetree/bindings/mmc/mmc.txt >>> index 431716e..59cc854 100644 >>> --- a/Documentation/devicetree/bindings/mmc/mmc.txt >>> +++ b/Documentation/devicetree/bindings/mmc/mmc.txt >>> @@ -40,6 +40,7 @@ Optional properties: >>> - mmc-hs200-1_2v: eMMC HS200 mode(1.2V I/O) is supported >>> - mmc-hs400-1_8v: eMMC HS400 mode(1.8V I/O) is supported >>> - mmc-hs400-1_2v: eMMC HS400 mode(1.2V I/O) is supported >>> +- no-boot-part : when preset, tells to access boot partitions >>> >>> *NOTE* on CD and WP polarity. To use common for all SD/MMC host controllers line >>> polarity properties, we have to fix the meaning of the "normal" and "inverted" >>> diff --git a/drivers/mmc/host/sdhci-esdhc-imx.c b/drivers/mmc/host/sdhci-esdhc-imx.c >>> index ccec0e3..439e663 100644 >>> --- a/drivers/mmc/host/sdhci-esdhc-imx.c >>> +++ b/drivers/mmc/host/sdhci-esdhc-imx.c >>> @@ -942,6 +942,11 @@ sdhci_esdhc_imx_probe_dt(struct platform_device *pdev, >>> if (of_property_read_u32(np, "fsl,delay-line", &boarddata->delay_line)) >>> boarddata->delay_line = 0; >>> >>> + if (of_find_property(np, "no-boot-part", NULL)) >>> + boarddata->access_boot_part = false; >>> + else >>> + boarddata->access_boot_part = true; >>> + >>> return 0; >>> } >>> #else >>> @@ -1119,6 +1124,9 @@ static int sdhci_esdhc_imx_probe(struct platform_device *pdev) >>> host->quirks2 |= SDHCI_QUIRK2_NO_1_8_V; >>> } >>> >>> + if (!boarddata->access_boot_part) >>> + host->mmc->caps2 |= MMC_CAP2_BOOTPART_NOACC; >>> + >> >> Hmm, I don't think MMC_CAP2_BOOTPART_NOACC should have a DT binding. >> Does it describe the hardware in some form? >> >> Actually I would like to question why MMC_CAP2_BOOTPART_NOACC exists >> at all. If there are cards that don't supports the BOOT area, >> shouldn't we have a card quirk for it instead of a host cap? Maybe >> Adrian Hunter, how originally wrote the patch for adding >> MMC_CAP2_BOOTPART_NOACC, could help me understand the reasons behind >> it!? > > It was added because platform firmware was able to prevent access to the > boot partitions (for security I think), so attempts to access them would > fail messily. It was not related to any specific card. Adrian, appreciate your clarification. After all it seems like adding a DT binding for it should be appropriate. Kind regards Uffe ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] mmc: sdhci-esdhc-imx: Enable boot partition access from DT 2014-09-03 9:09 ` Ulf Hansson @ 2014-09-03 13:08 ` Jean-Michel Hautbois 2014-09-04 0:59 ` Hsin-Hsiang Tseng 0 siblings, 1 reply; 7+ messages in thread From: Jean-Michel Hautbois @ 2014-09-03 13:08 UTC (permalink / raw) To: Ulf Hansson Cc: Adrian Hunter, linux-mmc, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Russell King, Shawn Guo, Dong Aisheng, Peter Griffin, tgih.jun@samsung.com, h80.chung, Chris Ball, Kumar Gala, Ian Campbell, Mark Rutland, Pawel Moll, Rob Herring 2014-09-03 11:09 GMT+02:00 Ulf Hansson <ulf.hansson@linaro.org>: > On 3 September 2014 11:02, Adrian Hunter <adrian.hunter@intel.com> wrote: >> On 09/03/2014 11:30 AM, Ulf Hansson wrote: >>> On 2 September 2014 17:49, Jean-Michel Hautbois >>> <jean-michel.hautbois@vodalys.com> wrote: >>>> This property is useful when we don't want to access boot partitions on eMMC >>>> >>>> Signed-off-by: Jean-Michel Hautbois <jean-michel.hautbois@vodalys.com> >>>> --- >>>> Documentation/devicetree/bindings/mmc/mmc.txt | 1 + >>>> drivers/mmc/host/sdhci-esdhc-imx.c | 8 ++++++++ >>>> include/linux/platform_data/mmc-esdhc-imx.h | 1 + >>>> 3 files changed, 10 insertions(+) >>>> >>>> diff --git a/Documentation/devicetree/bindings/mmc/mmc.txt b/Documentation/devicetree/bindings/mmc/mmc.txt >>>> index 431716e..59cc854 100644 >>>> --- a/Documentation/devicetree/bindings/mmc/mmc.txt >>>> +++ b/Documentation/devicetree/bindings/mmc/mmc.txt >>>> @@ -40,6 +40,7 @@ Optional properties: >>>> - mmc-hs200-1_2v: eMMC HS200 mode(1.2V I/O) is supported >>>> - mmc-hs400-1_8v: eMMC HS400 mode(1.8V I/O) is supported >>>> - mmc-hs400-1_2v: eMMC HS400 mode(1.2V I/O) is supported >>>> +- no-boot-part : when preset, tells to access boot partitions >>>> >>>> *NOTE* on CD and WP polarity. To use common for all SD/MMC host controllers line >>>> polarity properties, we have to fix the meaning of the "normal" and "inverted" >>>> diff --git a/drivers/mmc/host/sdhci-esdhc-imx.c b/drivers/mmc/host/sdhci-esdhc-imx.c >>>> index ccec0e3..439e663 100644 >>>> --- a/drivers/mmc/host/sdhci-esdhc-imx.c >>>> +++ b/drivers/mmc/host/sdhci-esdhc-imx.c >>>> @@ -942,6 +942,11 @@ sdhci_esdhc_imx_probe_dt(struct platform_device *pdev, >>>> if (of_property_read_u32(np, "fsl,delay-line", &boarddata->delay_line)) >>>> boarddata->delay_line = 0; >>>> >>>> + if (of_find_property(np, "no-boot-part", NULL)) >>>> + boarddata->access_boot_part = false; >>>> + else >>>> + boarddata->access_boot_part = true; >>>> + >>>> return 0; >>>> } >>>> #else >>>> @@ -1119,6 +1124,9 @@ static int sdhci_esdhc_imx_probe(struct platform_device *pdev) >>>> host->quirks2 |= SDHCI_QUIRK2_NO_1_8_V; >>>> } >>>> >>>> + if (!boarddata->access_boot_part) >>>> + host->mmc->caps2 |= MMC_CAP2_BOOTPART_NOACC; >>>> + >>> >>> Hmm, I don't think MMC_CAP2_BOOTPART_NOACC should have a DT binding. >>> Does it describe the hardware in some form? >>> >>> Actually I would like to question why MMC_CAP2_BOOTPART_NOACC exists >>> at all. If there are cards that don't supports the BOOT area, >>> shouldn't we have a card quirk for it instead of a host cap? Maybe >>> Adrian Hunter, how originally wrote the patch for adding >>> MMC_CAP2_BOOTPART_NOACC, could help me understand the reasons behind >>> it!? >> >> It was added because platform firmware was able to prevent access to the >> boot partitions (for security I think), so attempts to access them would >> fail messily. It was not related to any specific card. > > Adrian, appreciate your clarification. After all it seems like adding > a DT binding for it should be appropriate. > > Kind regards > Uffe Thanks Adrian :). Well, there is boot partitions and rpmb partition, and maybe should we have a binding to prevent access to both of them ? Something else came to my mind, when you want to boot on eMMC, do you need to write u-boot in boot partitions or is it written at the logical adress 0 which is what fdisk uses as start ? Because, if this is not usuable but just scanned I can't see why we bother doing it... ? Thanks, JM ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] mmc: sdhci-esdhc-imx: Enable boot partition access from DT 2014-09-03 13:08 ` Jean-Michel Hautbois @ 2014-09-04 0:59 ` Hsin-Hsiang Tseng 0 siblings, 0 replies; 7+ messages in thread From: Hsin-Hsiang Tseng @ 2014-09-04 0:59 UTC (permalink / raw) To: Jean-Michel Hautbois Cc: Ulf Hansson, Adrian Hunter, linux-mmc, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Russell King, Shawn Guo, Dong Aisheng, Peter Griffin, tgih.jun@samsung.com, h80.chung, Chris Ball, Kumar Gala, Ian Campbell, Mark Rutland, Pawel Moll, Rob Herring Hi, Jean-Michel Some platforms which using Samsung exynos SoC, we write u-boot related bin files in boot partitions(in my case boot partition 1) to boot on eMMC. Some platforms which using Qualcomm SoC, written at logical address 0(User Data Area) and they use a-boot not u-boot. BTW, rpmb partition is not wide use now. As i know, some Intel platforms have use rpmb partition. Thanks, Hsinhsiang 2014-09-03 21:08 GMT+08:00 Jean-Michel Hautbois <jean-michel.hautbois@vodalys.com>: > 2014-09-03 11:09 GMT+02:00 Ulf Hansson <ulf.hansson@linaro.org>: >> On 3 September 2014 11:02, Adrian Hunter <adrian.hunter@intel.com> wrote: >>> On 09/03/2014 11:30 AM, Ulf Hansson wrote: >>>> On 2 September 2014 17:49, Jean-Michel Hautbois >>>> <jean-michel.hautbois@vodalys.com> wrote: >>>>> This property is useful when we don't want to access boot partitions on eMMC >>>>> >>>>> Signed-off-by: Jean-Michel Hautbois <jean-michel.hautbois@vodalys.com> >>>>> --- >>>>> Documentation/devicetree/bindings/mmc/mmc.txt | 1 + >>>>> drivers/mmc/host/sdhci-esdhc-imx.c | 8 ++++++++ >>>>> include/linux/platform_data/mmc-esdhc-imx.h | 1 + >>>>> 3 files changed, 10 insertions(+) >>>>> >>>>> diff --git a/Documentation/devicetree/bindings/mmc/mmc.txt b/Documentation/devicetree/bindings/mmc/mmc.txt >>>>> index 431716e..59cc854 100644 >>>>> --- a/Documentation/devicetree/bindings/mmc/mmc.txt >>>>> +++ b/Documentation/devicetree/bindings/mmc/mmc.txt >>>>> @@ -40,6 +40,7 @@ Optional properties: >>>>> - mmc-hs200-1_2v: eMMC HS200 mode(1.2V I/O) is supported >>>>> - mmc-hs400-1_8v: eMMC HS400 mode(1.8V I/O) is supported >>>>> - mmc-hs400-1_2v: eMMC HS400 mode(1.2V I/O) is supported >>>>> +- no-boot-part : when preset, tells to access boot partitions >>>>> >>>>> *NOTE* on CD and WP polarity. To use common for all SD/MMC host controllers line >>>>> polarity properties, we have to fix the meaning of the "normal" and "inverted" >>>>> diff --git a/drivers/mmc/host/sdhci-esdhc-imx.c b/drivers/mmc/host/sdhci-esdhc-imx.c >>>>> index ccec0e3..439e663 100644 >>>>> --- a/drivers/mmc/host/sdhci-esdhc-imx.c >>>>> +++ b/drivers/mmc/host/sdhci-esdhc-imx.c >>>>> @@ -942,6 +942,11 @@ sdhci_esdhc_imx_probe_dt(struct platform_device *pdev, >>>>> if (of_property_read_u32(np, "fsl,delay-line", &boarddata->delay_line)) >>>>> boarddata->delay_line = 0; >>>>> >>>>> + if (of_find_property(np, "no-boot-part", NULL)) >>>>> + boarddata->access_boot_part = false; >>>>> + else >>>>> + boarddata->access_boot_part = true; >>>>> + >>>>> return 0; >>>>> } >>>>> #else >>>>> @@ -1119,6 +1124,9 @@ static int sdhci_esdhc_imx_probe(struct platform_device *pdev) >>>>> host->quirks2 |= SDHCI_QUIRK2_NO_1_8_V; >>>>> } >>>>> >>>>> + if (!boarddata->access_boot_part) >>>>> + host->mmc->caps2 |= MMC_CAP2_BOOTPART_NOACC; >>>>> + >>>> >>>> Hmm, I don't think MMC_CAP2_BOOTPART_NOACC should have a DT binding. >>>> Does it describe the hardware in some form? >>>> >>>> Actually I would like to question why MMC_CAP2_BOOTPART_NOACC exists >>>> at all. If there are cards that don't supports the BOOT area, >>>> shouldn't we have a card quirk for it instead of a host cap? Maybe >>>> Adrian Hunter, how originally wrote the patch for adding >>>> MMC_CAP2_BOOTPART_NOACC, could help me understand the reasons behind >>>> it!? >>> >>> It was added because platform firmware was able to prevent access to the >>> boot partitions (for security I think), so attempts to access them would >>> fail messily. It was not related to any specific card. >> >> Adrian, appreciate your clarification. After all it seems like adding >> a DT binding for it should be appropriate. >> >> Kind regards >> Uffe > > Thanks Adrian :). > Well, there is boot partitions and rpmb partition, and maybe should we > have a binding to prevent access to both of them ? > Something else came to my mind, when you want to boot on eMMC, do you > need to write u-boot in boot partitions or is it written at the > logical adress 0 which is what fdisk uses as start ? > Because, if this is not usuable but just scanned I can't see why we > bother doing it... ? > > Thanks, > JM > -- > To unsubscribe from this list: send the line "unsubscribe linux-mmc" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2014-09-04 0:59 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2014-09-02 15:49 [PATCH] mmc: sdhci-esdhc-imx: Enable boot partition access from DT Jean-Michel Hautbois 2014-09-03 2:59 ` Dong Aisheng 2014-09-03 8:30 ` Ulf Hansson 2014-09-03 9:02 ` Adrian Hunter 2014-09-03 9:09 ` Ulf Hansson 2014-09-03 13:08 ` Jean-Michel Hautbois 2014-09-04 0:59 ` Hsin-Hsiang Tseng
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox