diff options
author | Francis Rowe <info@gluglug.org.uk> | 2014-12-29 21:13:49 (EST) |
---|---|---|
committer | Francis Rowe <info@gluglug.org.uk> | 2014-12-29 21:30:36 (EST) |
commit | 3e60ad76e2cef38bc59f6055c677ea2d890e10fe (patch) | |
tree | 782a8a0bb988aae3db5847aae9d56e832e480056 /resources/flashrom/patch/purged_chips.diff | |
parent | 05d821cecb953efd2cbc2d7cb21278a33a59000b (diff) | |
download | libreboot-3e60ad76e2cef38bc59f6055c677ea2d890e10fe.zip libreboot-3e60ad76e2cef38bc59f6055c677ea2d890e10fe.tar.gz libreboot-3e60ad76e2cef38bc59f6055c677ea2d890e10fe.tar.bz2 |
Removed redundant flashchip definitions in flashrom
For X200 owners with one of the Macronix flash chips. There are
multiple definitions for almost the same chip, and they are
all detected at once. Normally the user has to use the -c argument
in flashrom to select a flash chip. With this modification, they
can run flashrom without the argument.
Deletion of redundant flash chip definitions is now also handled
by getflashrom instead of builddeps-flashrom. builddeps-flashrom
now only patches for i945 lenovo bios sst/macronix.
Diffstat (limited to 'resources/flashrom/patch/purged_chips.diff')
-rw-r--r-- | resources/flashrom/patch/purged_chips.diff | 293 |
1 files changed, 293 insertions, 0 deletions
diff --git a/resources/flashrom/patch/purged_chips.diff b/resources/flashrom/patch/purged_chips.diff new file mode 100644 index 0000000..8795495 --- /dev/null +++ b/resources/flashrom/patch/purged_chips.diff @@ -0,0 +1,293 @@ +--- flashchips.c 2014-12-29 23:36:27.463726125 +0000 ++++ flashchips.c_defspurged 2014-12-30 01:53:02.300362113 +0000 +@@ -6602,80 +6602,6 @@ + + { + .vendor = "Macronix", +- .name = "MX25L1605", +- .bustype = BUS_SPI, +- .manufacture_id = MACRONIX_ID, +- .model_id = MACRONIX_MX25L1605, +- .total_size = 2048, +- .page_size = 256, +- .feature_bits = FEATURE_WRSR_WREN, +- .tested = TEST_OK_PREW, +- .probe = probe_spi_rdid, +- .probe_timing = TIMING_ZERO, +- .block_erasers = +- { +- { +- .eraseblocks = { {64 * 1024, 32} }, +- .block_erase = spi_block_erase_20, +- }, { +- .eraseblocks = { {64 * 1024, 32} }, +- .block_erase = spi_block_erase_d8, +- }, { +- .eraseblocks = { {2 * 1024 * 1024, 1} }, +- .block_erase = spi_block_erase_60, +- }, { +- .eraseblocks = { {2 * 1024 * 1024, 1} }, +- .block_erase = spi_block_erase_c7, +- }, +- }, +- .printlock = spi_prettyprint_status_register_bp2_srwd, /* bit6: error flag */ +- .unlock = spi_disable_blockprotect, +- .write = spi_chip_write_256, +- .read = spi_chip_read, /* Fast read (0x0B) supported */ +- .voltage = {2700, 3600}, +- }, +- +- { +- .vendor = "Macronix", +- .name = "MX25L1605A/MX25L1606E", +- .bustype = BUS_SPI, +- .manufacture_id = MACRONIX_ID, +- .model_id = MACRONIX_MX25L1605, +- .total_size = 2048, +- .page_size = 256, +- /* OTP: 64B total; enter 0xB1, exit 0xC1 (MX25L1606E only) */ +- .feature_bits = FEATURE_WRSR_WREN | FEATURE_OTP, +- .tested = TEST_OK_PREW, +- .probe = probe_spi_rdid, +- .probe_timing = TIMING_ZERO, +- .block_erasers = +- { +- { +- .eraseblocks = { {4 * 1024, 512} }, +- .block_erase = spi_block_erase_20, +- }, { +- .eraseblocks = { {64 * 1024, 32} }, +- .block_erase = spi_block_erase_52, +- }, { +- .eraseblocks = { {64 * 1024, 32} }, +- .block_erase = spi_block_erase_d8, +- }, { +- .eraseblocks = { {2 * 1024 * 1024, 1} }, +- .block_erase = spi_block_erase_60, +- }, { +- .eraseblocks = { {2 * 1024 * 1024, 1} }, +- .block_erase = spi_block_erase_c7, +- }, +- }, +- .printlock = spi_prettyprint_status_register_bp3_srwd, /* MX25L1605A bp2 only */ +- .unlock = spi_disable_blockprotect, +- .write = spi_chip_write_256, +- .read = spi_chip_read, /* Fast read (0x0B) supported */ +- .voltage = {2700, 3600}, +- }, +- +- { +- .vendor = "Macronix", + .name = "MX25L1605D/MX25L1608D/MX25L1673E", + .bustype = BUS_SPI, + .manufacture_id = MACRONIX_ID, +@@ -6783,41 +6709,6 @@ + + { + .vendor = "Macronix", +- .name = "MX25L3205(A)", +- .bustype = BUS_SPI, +- .manufacture_id = MACRONIX_ID, +- .model_id = MACRONIX_MX25L3205, +- .total_size = 4096, +- .page_size = 256, +- .feature_bits = FEATURE_WRSR_WREN, +- .tested = TEST_OK_PREW, +- .probe = probe_spi_rdid, +- .probe_timing = TIMING_ZERO, +- .block_erasers = +- { +- { +- .eraseblocks = { {64 * 1024, 64} }, +- .block_erase = spi_block_erase_20, +- }, { +- .eraseblocks = { {64 * 1024, 64} }, +- .block_erase = spi_block_erase_d8, +- }, { +- .eraseblocks = { {4 * 1024 * 1024, 1} }, +- .block_erase = spi_block_erase_60, +- }, { +- .eraseblocks = { {4 * 1024 * 1024, 1} }, +- .block_erase = spi_block_erase_c7, +- }, +- }, +- .printlock = spi_prettyprint_status_register_bp2_srwd, /* bit6: error flag */ +- .unlock = spi_disable_blockprotect, +- .write = spi_chip_write_256, +- .read = spi_chip_read, /* Fast read (0x0B) supported */ +- .voltage = {2700, 3600}, +- }, +- +- { +- .vendor = "Macronix", + .name = "MX25L3205D/MX25L3208D", + .bustype = BUS_SPI, + .manufacture_id = MACRONIX_ID, +@@ -6854,84 +6745,6 @@ + + { + .vendor = "Macronix", +- .name = "MX25L3206E", +- .bustype = BUS_SPI, +- .manufacture_id = MACRONIX_ID, +- .model_id = MACRONIX_MX25L3205, +- .total_size = 4096, +- .page_size = 256, +- /* OTP: 64B total; enter 0xB1, exit 0xC1 */ +- .feature_bits = FEATURE_WRSR_WREN | FEATURE_OTP, +- .tested = TEST_OK_PREW, +- .probe = probe_spi_rdid, +- .probe_timing = TIMING_ZERO, +- .block_erasers = +- { +- { +- .eraseblocks = { {4 * 1024, 1024} }, +- .block_erase = spi_block_erase_20, +- }, { +- .eraseblocks = { {64 * 1024, 64} }, +- .block_erase = spi_block_erase_d8, +- }, { +- .eraseblocks = { {64 * 1024, 64} }, +- .block_erase = spi_block_erase_52, +- }, { +- .eraseblocks = { {4 * 1024 * 1024, 1} }, +- .block_erase = spi_block_erase_60, +- }, { +- .eraseblocks = { {4 * 1024 * 1024, 1} }, +- .block_erase = spi_block_erase_c7, +- }, +- }, +- .printlock = spi_prettyprint_status_register_bp3_srwd, +- .unlock = spi_disable_blockprotect, +- .write = spi_chip_write_256, +- .read = spi_chip_read, /* Fast read (0x0B) and dual I/O supported */ +- .voltage = {2700, 3600}, +- }, +- +- { +- .vendor = "Macronix", +- .name = "MX25L3273E", +- .bustype = BUS_SPI, +- .manufacture_id = MACRONIX_ID, +- .model_id = MACRONIX_MX25L3205, +- .total_size = 4096, +- .page_size = 256, +- /* OTP: 64B total; enter 0xB1, exit 0xC1 */ +- .feature_bits = FEATURE_WRSR_WREN | FEATURE_OTP, +- .tested = TEST_UNTESTED, +- .probe = probe_spi_rdid, +- .probe_timing = TIMING_ZERO, +- .block_erasers = +- { +- { +- .eraseblocks = { {4 * 1024, 1024} }, +- .block_erase = spi_block_erase_20, +- }, { +- .eraseblocks = { {32 * 1024, 128} }, +- .block_erase = spi_block_erase_52, +- }, { +- .eraseblocks = { {64 * 1024, 64} }, +- .block_erase = spi_block_erase_d8, +- }, { +- .eraseblocks = { {4 * 1024 * 1024, 1} }, +- .block_erase = spi_block_erase_60, +- }, { +- .eraseblocks = { {4 * 1024 * 1024, 1} }, +- .block_erase = spi_block_erase_c7, +- }, +- }, +- .printlock = spi_prettyprint_status_register_bp3_srwd, +- .unlock = spi_disable_blockprotect, +- .write = spi_chip_write_256, +- .read = spi_chip_read, /* Fast read (0x0B) and dual I/O supported */ +- .voltage = {2700, 3600}, +- }, +- +- { +- .vendor = "Macronix", + .name = "MX25L3235D", + .bustype = BUS_SPI, + .manufacture_id = MACRONIX_ID, +@@ -7002,82 +6815,6 @@ + .voltage = {2700, 3600}, + }, + +- { +- .vendor = "Macronix", +- .name = "MX25L6406E/MX25L6436E", +- .bustype = BUS_SPI, +- .manufacture_id = MACRONIX_ID, +- .model_id = MACRONIX_MX25L6405, +- .total_size = 8192, +- .page_size = 256, +- /* OTP: 06E 64B/36E 512B total; enter 0xB1, exit 0xC1 */ +- .feature_bits = FEATURE_WRSR_WREN | FEATURE_OTP, +- .tested = TEST_OK_PREW, +- .probe = probe_spi_rdid, +- .probe_timing = TIMING_ZERO, +- .block_erasers = +- { +- { +- .eraseblocks = { {4 * 1024, 2048} }, +- .block_erase = spi_block_erase_20, +- }, { +- .eraseblocks = { {64 * 1024, 128} }, +- .block_erase = spi_block_erase_d8, +- }, { +- .eraseblocks = { {8 * 1024 * 1024, 1} }, +- .block_erase = spi_block_erase_60, +- }, { +- .eraseblocks = { {8 * 1024 * 1024, 1} }, +- .block_erase = spi_block_erase_c7, +- } +- }, +- .printlock = spi_prettyprint_status_register_bp3_srwd, /* bit6 for 36E is quad enable */ +- .unlock = spi_disable_blockprotect, +- .write = spi_chip_write_256, +- .read = spi_chip_read, +- .voltage = {2700, 3600}, +- }, +- +- { +- .vendor = "Macronix", +- .name = "MX25L6445E/MX25L6473E", +- .bustype = BUS_SPI, +- .manufacture_id = MACRONIX_ID, +- .model_id = MACRONIX_MX25L6405, +- .total_size = 8192, +- .page_size = 256, +- /* supports SFDP */ +- /* OTP: 512B total; enter 0xB1, exit 0xC1 */ +- .feature_bits = FEATURE_WRSR_WREN | FEATURE_OTP, +- .tested = TEST_OK_PREW, +- .probe = probe_spi_rdid, +- .probe_timing = TIMING_ZERO, +- .block_erasers = +- { +- { +- .eraseblocks = { {4 * 1024, 2048} }, +- .block_erase = spi_block_erase_20, +- }, { +- .eraseblocks = { {32 * 1024, 256} }, +- .block_erase = spi_block_erase_52, +- }, { +- .eraseblocks = { {64 * 1024, 128} }, +- .block_erase = spi_block_erase_d8, +- }, { +- .eraseblocks = { {8 * 1024 * 1024, 1} }, +- .block_erase = spi_block_erase_60, +- }, { +- .eraseblocks = { {8 * 1024 * 1024, 1} }, +- .block_erase = spi_block_erase_c7, +- } +- }, +- .printlock = spi_prettyprint_status_register_bp3_srwd, /* bit6 is quad enable */ +- .unlock = spi_disable_blockprotect, +- .write = spi_chip_write_256, +- .read = spi_chip_read, /* Fast read (0x0B) and multi I/O supported */ +- .voltage = {2700, 3600}, +- }, +- + { + .vendor = "Macronix", + .name = "MX25L12805(D)", |