Przeglądaj źródła

Added XM25QH64C and XM25QH128A support for spi mem manger app. (#94)

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
5unr153 2 lat temu
rodzic
commit
6d2754219d

+ 2 - 0
.catalog/changelog.md

@@ -1,3 +1,5 @@
+## 1.3
+   XM25QH64C and XM25QH128A flash chip support added
 ## 1.2
    Added support for the XT25F128B flash chip
 ## 1.1

+ 1 - 1
application.fam

@@ -6,7 +6,7 @@ App(
     requires=["gui"],
     stack_size=1 * 2048,
     fap_description="Application for reading and writing 25-series SPI memory chips",
-    fap_version="1.2",
+    fap_version="1.3",
     fap_icon="images/Dip8_10px.png",
     fap_category="GPIO",
     fap_icon_assets="images",

+ 1 - 0
lib/spi/spi_mem_chip.c

@@ -39,6 +39,7 @@ const SPIMemChipVendorName spi_mem_chip_vendor_names[] = {
     {"Genitop", SPIMemChipVendorGenitop},
     {"Paragon", SPIMemChipVendorParagon},
     {"XTX", SPIMemChipVendorXTX},
+    {"XMC", SPIMemChipVendorXMC},
     {"Unknown", SPIMemChipVendorUnknown}};
 
 static const char* spi_mem_chip_search_vendor_name(SPIMemChipVendor vendor_enum) {

+ 3 - 1
lib/spi/spi_mem_chip_arr.c

@@ -1397,4 +1397,6 @@ const SPIMemChip SPIMemChips[] = {
     {0xA1, 0x40, 0x16, "FM25Q32", 4194304, 256, SPIMemChipVendorFudan, SPIMemChipWriteModePage},
     {0xE0, 0x40, 0x14, "GT25Q80A", 1048576, 256, SPIMemChipVendorGenitop, SPIMemChipWriteModePage},
     {0xE0, 0x40, 0x13, "PN25F04A", 524288, 256, SPIMemChipVendorParagon, SPIMemChipWriteModePage},
-    {0x0B, 0x40, 0x18, "XT25F128B", 16777216, 256, SPIMemChipVendorXTX, SPIMemChipWriteModePage}};
+    {0x0B, 0x40, 0x18, "XT25F128B", 16777216, 256, SPIMemChipVendorXTX, SPIMemChipWriteModePage},
+    {0x20, 0x70, 0x17, "XM25QH64C", 8388608, 256, SPIMemChipVendorXMC, SPIMemChipWriteModePage},
+    {0x20, 0x70, 0x18, "XM25QH128A", 16777216, 256, SPIMemChipVendorXMC, SPIMemChipWriteModePage}};

+ 2 - 1
lib/spi/spi_mem_chip_i.h

@@ -42,7 +42,8 @@ typedef enum {
     SPIMemChipVendorFudan,
     SPIMemChipVendorGenitop,
     SPIMemChipVendorParagon,
-    SPIMemChipVendorXTX
+    SPIMemChipVendorXTX,
+    SPIMemChipVendorXMC
 } SPIMemChipVendor;
 
 typedef enum {