Skip to contentSkip to conversation

mtd: chips: Add PMC flash memory description

PATCH In review PrasannaKumar Muralidharan 2 participants 3 messages Nov 12, 2017 – Nov 13, 2017 Memory technology devices (MTD)

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 mtd: chips: Add PMC flash memory description

Add PMC flash memory description.

---
This patch is taken from OpenWRT [1]. This is compile tested only. As there is no signed off by or author info in the commit [1] I have kept only my signed off by line. If this is incorrect please advice what I should do.

1. https://git.lede-project.org/?p=source.git;a=blob;f=target/linux/adm5120/patches-3.18/102-jedec_pmc_39lvxxx_chips.patch;h=00148fa602b68c25ff8cd936924b77f6c99caa07;hb=c03d4317a6bc891cb4a5e89cbdd77f37c23aff86

 drivers/mtd/chips/jedec_probe.c | 52 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 52 insertions(+)
drivers/mtd/chips/jedec_probe.c +52 -0
index 7c0b27d..d315491 100644
@@ -115,6 +115,10 @@
 #define UPD29F064115	0x221C
 
 /* PMC */
+#define PM39LV512	0x001B
+#define PM39LV010	0x001C
+#define PM39LV020	0x003D
+#define PM39LV040	0x003E
 #define PM49FL002	0x006D
 #define PM49FL004	0x006E
 #define PM49FL008	0x006A
@@ -1261,6 +1265,54 @@ static const struct amd_flash_info jedec_table[] = {
 		}
 	}, {
 		.mfr_id		= CFI_MFR_PMC,
+		.dev_id		= PM39LV512,
+		.name		= "PMC Pm39LV512",
+		.devtypes	= CFI_DEVICETYPE_X8,
+		.uaddr		= MTD_UADDR_0x0555_0x02AA,
+		.dev_size	= SIZE_64KiB,
+		.cmd_set	= P_ID_AMD_STD,
+		.nr_regions	= 1,
+		.regions	= {
+			ERASEINFO(0x01000,16),
+		}
+	}, {
+		.mfr_id		= CFI_MFR_PMC,
+		.dev_id		= PM39LV010,
+		.name		= "PMC Pm39LV010",
+		.devtypes	= CFI_DEVICETYPE_X8,
+		.uaddr		= MTD_UADDR_0x0555_0x02AA,
+		.dev_size	= SIZE_128KiB,
+		.cmd_set	= P_ID_AMD_STD,
+		.nr_regions	= 1,
+		.regions	= {
+			ERASEINFO(0x01000,32),
+		}
+	}, {
+		.mfr_id		= CFI_MFR_PMC,
+		.dev_id		= PM39LV020,
+		.name		= "PMC Pm39LV020",
+		.devtypes	= CFI_DEVICETYPE_X8,
+		.uaddr		= MTD_UADDR_0x0555_0x02AA,
+		.dev_size	= SIZE_256KiB,
+		.cmd_set	= P_ID_AMD_STD,
+		.nr_regions	= 1,
+		.regions	= {
+			ERASEINFO(0x01000,64),
+		}
+	}, {
+		.mfr_id		= CFI_MFR_PMC,
+		.dev_id		= PM39LV040,
+		.name		= "PMC Pm39LV040",
+		.devtypes	= CFI_DEVICETYPE_X8,
+		.uaddr		= MTD_UADDR_0x0555_0x02AA,
+		.dev_size	= SIZE_512KiB,
+		.cmd_set	= P_ID_AMD_STD,
+		.nr_regions	= 1,
+		.regions	= {
+			ERASEINFO(0x01000,128),
+		}
+	}, {
+		.mfr_id		= CFI_MFR_PMC,
 		.dev_id		= PM49FL002,
 		.name		= "PMC Pm49FL002",
 		.devtypes	= CFI_DEVICETYPE_X8,
Signature · 1 line
2.10.0
#1 lore raw
Quoted 10 lines · PrasannaKumar Muralidharan

Add PMC flash memory description.

---
This patch is taken from OpenWRT [1]. This is compile tested only. As there is no signed off by or author info in the commit [1] I have kept only my signed off by line. If this is incorrect please advice what I should do.

1. https://git.lede-project.org/?p=source.git;a=blob;f=target/linux/adm5120/patches-3.18/102-jedec_pmc_39lvxxx_chips.patch;h=00148fa602b68c25ff8cd936924b77f6c99caa07;hb=c03d4317a6bc891cb4a5e89cbdd77f37c23aff86

I'm not a big fan of adding untested stuff into the kernel.

Quoted 74 lines
 drivers/mtd/chips/jedec_probe.c | 52 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 52 insertions(+)
drivers/mtd/chips/jedec_probe.c +52 -0
index 7c0b27d..d315491 100644
@@ -115,6 +115,10 @@
 #define UPD29F064115	0x221C
 
 /* PMC */
+#define PM39LV512	0x001B
+#define PM39LV010	0x001C
+#define PM39LV020	0x003D
+#define PM39LV040	0x003E
 #define PM49FL002	0x006D
 #define PM49FL004	0x006E
 #define PM49FL008	0x006A
@@ -1261,6 +1265,54 @@ static const struct amd_flash_info jedec_table[] = {
 		}
 	}, {
 		.mfr_id		= CFI_MFR_PMC,
+		.dev_id		= PM39LV512,
+		.name		= "PMC Pm39LV512",
+		.devtypes	= CFI_DEVICETYPE_X8,
+		.uaddr		= MTD_UADDR_0x0555_0x02AA,
+		.dev_size	= SIZE_64KiB,
+		.cmd_set	= P_ID_AMD_STD,
+		.nr_regions	= 1,
+		.regions	= {
+			ERASEINFO(0x01000,16),
+		}
+	}, {
+		.mfr_id		= CFI_MFR_PMC,
+		.dev_id		= PM39LV010,
+		.name		= "PMC Pm39LV010",
+		.devtypes	= CFI_DEVICETYPE_X8,
+		.uaddr		= MTD_UADDR_0x0555_0x02AA,
+		.dev_size	= SIZE_128KiB,
+		.cmd_set	= P_ID_AMD_STD,
+		.nr_regions	= 1,
+		.regions	= {
+			ERASEINFO(0x01000,32),
+		}
+	}, {
+		.mfr_id		= CFI_MFR_PMC,
+		.dev_id		= PM39LV020,
+		.name		= "PMC Pm39LV020",
+		.devtypes	= CFI_DEVICETYPE_X8,
+		.uaddr		= MTD_UADDR_0x0555_0x02AA,
+		.dev_size	= SIZE_256KiB,
+		.cmd_set	= P_ID_AMD_STD,
+		.nr_regions	= 1,
+		.regions	= {
+			ERASEINFO(0x01000,64),
+		}
+	}, {
+		.mfr_id		= CFI_MFR_PMC,
+		.dev_id		= PM39LV040,
+		.name		= "PMC Pm39LV040",
+		.devtypes	= CFI_DEVICETYPE_X8,
+		.uaddr		= MTD_UADDR_0x0555_0x02AA,
+		.dev_size	= SIZE_512KiB,
+		.cmd_set	= P_ID_AMD_STD,
+		.nr_regions	= 1,
+		.regions	= {
+			ERASEINFO(0x01000,128),
+		}
+	}, {
+		.mfr_id		= CFI_MFR_PMC,
 		.dev_id		= PM49FL002,
 		.name		= "PMC Pm49FL002",
 		.devtypes	= CFI_DEVICETYPE_X8,
Signature · 2 lines
Best regards,
Marek Vasut
#2 lore raw

Hi Marek,

Quoted 10 lines · Marek Vasut
Quoted 9 lines · PrasannaKumar Muralidharan

Add PMC flash memory description.

---
This patch is taken from OpenWRT [1]. This is compile tested only. As there is no signed off by or author info in the commit [1] I have kept only my signed off by line. If this is incorrect please advice what I should do.

Quoted 3 lines
Quoted 1 line

1. https://git.lede-project.org/?p=source.git;a=blob;f=target/linux/adm5120/patches-3.18/102-jedec_pmc_39lvxxx_chips.patch;h=00148fa602b68c25ff8cd936924b77f6c99caa07;hb=c03d4317a6bc891cb4a5e89cbdd77f37c23aff86

I'm not a big fan of adding untested stuff into the kernel.

It totally makes sense. I will see if I can find someone with the board / openwrt to test. No guarantee that I will be able to find someone to test. Please feel free to not consider this till someone tests it.

Thanks,
PrasannaKumar