Message ID | 20210727045222.905056-21-tudor.ambarus@microchip.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | mtd: spi-nor: Handle ID collisions and clean params init | expand |
On 27/07/2021 06.52, Tudor Ambarus wrote: > Get the pointer to the containing struct spi_nor by using container_of. > > Signed-off-by: Tudor Ambarus <tudor.ambarus@microchip.com> > --- > drivers/mtd/spi-nor/core.c | 1 - > drivers/mtd/spi-nor/core.h | 2 +- > 2 files changed, 1 insertion(+), 2 deletions(-) > > diff --git a/drivers/mtd/spi-nor/core.c b/drivers/mtd/spi-nor/core.c > index 9885d434ea83..5c8cffb5e6f2 100644 > --- a/drivers/mtd/spi-nor/core.c > +++ b/drivers/mtd/spi-nor/core.c > @@ -3175,7 +3175,6 @@ int spi_nor_scan(struct spi_nor *nor, const char *name, > > if (!mtd->name) > mtd->name = dev_name(dev); > - mtd->priv = nor; > mtd->type = MTD_NORFLASH; > mtd->writesize = nor->params->writesize; > mtd->flags = MTD_CAP_NORFLASH; > diff --git a/drivers/mtd/spi-nor/core.h b/drivers/mtd/spi-nor/core.h > index 987797a789c8..8fddc685d2d3 100644 > --- a/drivers/mtd/spi-nor/core.h > +++ b/drivers/mtd/spi-nor/core.h > @@ -557,7 +557,7 @@ void spi_nor_otp_init(struct spi_nor *nor); > > static struct spi_nor __maybe_unused *mtd_to_spi_nor(struct mtd_info *mtd) > { Somewhat unrelated, but while you're here, why not get rid of that __maybe_unused and make this an ordinary "static inline"? Rasmus
On 27/07/21 07:52AM, Tudor Ambarus wrote: > Get the pointer to the containing struct spi_nor by using container_of. Please add an explanation on _why_ you are doing this. I suspect it would be something boring like "because mtd is embedded in nor, no need to use mtd->priv", but good to have it here regardless. > > Signed-off-by: Tudor Ambarus <tudor.ambarus@microchip.com> > --- > drivers/mtd/spi-nor/core.c | 1 - > drivers/mtd/spi-nor/core.h | 2 +- > 2 files changed, 1 insertion(+), 2 deletions(-) > > diff --git a/drivers/mtd/spi-nor/core.c b/drivers/mtd/spi-nor/core.c > index 9885d434ea83..5c8cffb5e6f2 100644 > --- a/drivers/mtd/spi-nor/core.c > +++ b/drivers/mtd/spi-nor/core.c > @@ -3175,7 +3175,6 @@ int spi_nor_scan(struct spi_nor *nor, const char *name, > > if (!mtd->name) > mtd->name = dev_name(dev); > - mtd->priv = nor; > mtd->type = MTD_NORFLASH; > mtd->writesize = nor->params->writesize; > mtd->flags = MTD_CAP_NORFLASH; > diff --git a/drivers/mtd/spi-nor/core.h b/drivers/mtd/spi-nor/core.h > index 987797a789c8..8fddc685d2d3 100644 > --- a/drivers/mtd/spi-nor/core.h > +++ b/drivers/mtd/spi-nor/core.h > @@ -557,7 +557,7 @@ void spi_nor_otp_init(struct spi_nor *nor); > > static struct spi_nor __maybe_unused *mtd_to_spi_nor(struct mtd_info *mtd) > { > - return mtd->priv; > + return container_of(mtd, struct spi_nor, mtd); > } > > static inline void snor_f_4b_opcodes(struct spi_nor *nor) > -- > 2.25.1 >
On 7/27/21 10:08 AM, Rasmus Villemoes wrote: > EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe > > On 27/07/2021 06.52, Tudor Ambarus wrote: >> Get the pointer to the containing struct spi_nor by using container_of. >> >> Signed-off-by: Tudor Ambarus <tudor.ambarus@microchip.com> >> --- >> drivers/mtd/spi-nor/core.c | 1 - >> drivers/mtd/spi-nor/core.h | 2 +- >> 2 files changed, 1 insertion(+), 2 deletions(-) >> >> diff --git a/drivers/mtd/spi-nor/core.c b/drivers/mtd/spi-nor/core.c >> index 9885d434ea83..5c8cffb5e6f2 100644 >> --- a/drivers/mtd/spi-nor/core.c >> +++ b/drivers/mtd/spi-nor/core.c >> @@ -3175,7 +3175,6 @@ int spi_nor_scan(struct spi_nor *nor, const char *name, >> >> if (!mtd->name) >> mtd->name = dev_name(dev); >> - mtd->priv = nor; >> mtd->type = MTD_NORFLASH; >> mtd->writesize = nor->params->writesize; >> mtd->flags = MTD_CAP_NORFLASH; >> diff --git a/drivers/mtd/spi-nor/core.h b/drivers/mtd/spi-nor/core.h >> index 987797a789c8..8fddc685d2d3 100644 >> --- a/drivers/mtd/spi-nor/core.h >> +++ b/drivers/mtd/spi-nor/core.h >> @@ -557,7 +557,7 @@ void spi_nor_otp_init(struct spi_nor *nor); >> >> static struct spi_nor __maybe_unused *mtd_to_spi_nor(struct mtd_info *mtd) >> { > > Somewhat unrelated, but while you're here, why not get rid of that > __maybe_unused and make this an ordinary "static inline"? > Will do. Thanks.
diff --git a/drivers/mtd/spi-nor/core.c b/drivers/mtd/spi-nor/core.c index 9885d434ea83..5c8cffb5e6f2 100644 --- a/drivers/mtd/spi-nor/core.c +++ b/drivers/mtd/spi-nor/core.c @@ -3175,7 +3175,6 @@ int spi_nor_scan(struct spi_nor *nor, const char *name, if (!mtd->name) mtd->name = dev_name(dev); - mtd->priv = nor; mtd->type = MTD_NORFLASH; mtd->writesize = nor->params->writesize; mtd->flags = MTD_CAP_NORFLASH; diff --git a/drivers/mtd/spi-nor/core.h b/drivers/mtd/spi-nor/core.h index 987797a789c8..8fddc685d2d3 100644 --- a/drivers/mtd/spi-nor/core.h +++ b/drivers/mtd/spi-nor/core.h @@ -557,7 +557,7 @@ void spi_nor_otp_init(struct spi_nor *nor); static struct spi_nor __maybe_unused *mtd_to_spi_nor(struct mtd_info *mtd) { - return mtd->priv; + return container_of(mtd, struct spi_nor, mtd); } static inline void snor_f_4b_opcodes(struct spi_nor *nor)
Get the pointer to the containing struct spi_nor by using container_of. Signed-off-by: Tudor Ambarus <tudor.ambarus@microchip.com> --- drivers/mtd/spi-nor/core.c | 1 - drivers/mtd/spi-nor/core.h | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-)