summaryrefslogtreecommitdiff
path: root/drivers/mtd/spi-nor/debugfs.c
diff options
context:
space:
mode:
authorTakahiro Kuwano <Takahiro.Kuwano@infineon.com>2024-02-20 11:34:06 +0300
committerTudor Ambarus <tudor.ambarus@linaro.org>2024-02-26 13:35:05 +0300
commit0e164238bb0752e341f01639438c35822d4488b2 (patch)
tree8a59d5df8530dfcd300d96e83bca6fcbdadf0156 /drivers/mtd/spi-nor/debugfs.c
parenta956502aa844a20a794a47f76c0f760f593fc97a (diff)
downloadlinux-0e164238bb0752e341f01639438c35822d4488b2.tar.xz
mtd: spi-nor: core: rework struct spi_nor_erase_region
Encoding bitmask flags into offset worsen the code readability. The erase type mask and flags should be stored in dedicated members. Also, erase_map.uniform_erase_type can be removed as it is redundant. Signed-off-by: Takahiro Kuwano <Takahiro.Kuwano@infineon.com> Suggested-by: Michael Walle <mwalle@kernel.org> Reviewed-by: Michael Walle <mwalle@kernel.org> Link: https://lore.kernel.org/r/8e5e9e4081ed9f16ea9dce30693304a4b54d19b1.1708404584.git.Takahiro.Kuwano@infineon.com [ta: remove spi_nor_region_end()] Signed-off-by: Tudor Ambarus <tudor.ambarus@linaro.org>
Diffstat (limited to 'drivers/mtd/spi-nor/debugfs.c')
-rw-r--r--drivers/mtd/spi-nor/debugfs.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/drivers/mtd/spi-nor/debugfs.c b/drivers/mtd/spi-nor/debugfs.c
index 2dbda6b6938a..d20bbb531a88 100644
--- a/drivers/mtd/spi-nor/debugfs.c
+++ b/drivers/mtd/spi-nor/debugfs.c
@@ -147,16 +147,17 @@ static int spi_nor_params_show(struct seq_file *s, void *data)
for (region = erase_map->regions;
region;
region = spi_nor_region_next(region)) {
- u64 start = region->offset & ~SNOR_ERASE_FLAGS_MASK;
- u64 flags = region->offset & SNOR_ERASE_FLAGS_MASK;
+ u64 start = region->offset;
u64 end = start + region->size - 1;
+ u8 erase_mask = region->erase_mask;
+ u8 flags = region->flags;
seq_printf(s, " %08llx-%08llx | [%c%c%c%c] | %s\n",
start, end,
- flags & BIT(0) ? '0' : ' ',
- flags & BIT(1) ? '1' : ' ',
- flags & BIT(2) ? '2' : ' ',
- flags & BIT(3) ? '3' : ' ',
+ erase_mask & BIT(0) ? '0' : ' ',
+ erase_mask & BIT(1) ? '1' : ' ',
+ erase_mask & BIT(2) ? '2' : ' ',
+ erase_mask & BIT(3) ? '3' : ' ',
flags & SNOR_OVERLAID_REGION ? "overlaid" : "");
}