Messages in this thread Patch in this message | | | From | Arnd Bergmann <> | Date | Tue, 4 Aug 2020 17:21:11 +0200 | Subject | Re: [PATCH] mtd: spi-nor: intel-spi: Do not try to make the SPI flash chip writable |
| |
On Tue, Aug 4, 2020 at 3:58 PM Daniel Gutson <daniel.gutson@eclypsium.com> wrote: > > Context, the intel-spi has a module argument that controls > whether the driver attempts to turn the SPI flash chip writeable. > The default value is FALSE (don't try to make it writeable). > However, this flag applies only for a number of devices, coming from the > platform driver, whereas the devices detected through the PCI driver > (intel-spi-pci) are not subject to this check since the configuration > takes place in intel-spi-pci which doesn't have an argument.
This is still factually incorrect, as explained at least three times now.
Please either make the same change for both the Bay Trail platform driver and the PCI driver, or explain why you want them to be different rather than incorrectly claiming that you change them to be the same.
If you want the BIOS setting to always take precedence over the module argument, logical change would be to also include the corresponding change for bay trail and do:
--- a/drivers/mtd/spi-nor/controllers/intel-spi.c +++ b/drivers/mtd/spi-nor/controllers/intel-spi.c @@ -324,19 +324,6 @@ static int intel_spi_init(struct intel_spi *ispi) ispi->nregions = BYT_FREG_NUM; ispi->pr_num = BYT_PR_NUM; ispi->swseq_reg = true; - - if (writeable) { - /* Disable write protection */ - val = readl(ispi->base + BYT_BCR); - if (!(val & BYT_BCR_WPD)) { - val |= BYT_BCR_WPD; - writel(val, ispi->base + BYT_BCR); - val = readl(ispi->base + BYT_BCR); - } - - ispi->writeable = !!(val & BYT_BCR_WPD); - } - break;
case INTEL_SPI_LPT:
| |