1
0
mirror of https://review.coreboot.org/flashrom.git synced 2025-04-27 15:12:36 +02:00

3859 Commits

Author SHA1 Message Date
Anastasia Klimchuk
f5d1bed6d4 ichspi: Change the opcode position for reprogramming on the fly 2->4
The function for reprogramming on the fly was using the default
configuration O_ST_M25P as a base and the position 2 as the position
to reprogram. Position 2 corresponds to JEDEC_SE which is often useful
for chip erase (when less than whole chip needs to be erased).

This patch changes the default position to reprogram to 4, which
corresponds to JEDEC_REMS. It is used less often, but if it needs to
be used, it will be discovered missing and reprogrammed back.

For erase opcodes, there is usually several of them available. So if
one is missing, erase still can be performed with the remaining ones.
However, this hides the fact that one of available erase opcodes is
missing (it won't be reprogrammed back), and also it gives non-optimal
erase layout.

Context: https://ticket.coreboot.org/issues/556

Change-Id: I6bc855daedf0af2e8de191f23a3512de3ebc3fef
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/84567
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nikolai Artemiev <nartemiev@google.com>
2024-10-09 05:33:11 +00:00
Peter Marheine
6c26e9efed build: never install cmocka
meson's default behavior is to install subprojects, so because we use a
wrap to get cmocka if needed and the cmocka wrap sets install=true
unless cross-compiling, cmocka headers and libraries will be installed
by `meson install`. This isn't useful (because cmocka is used only for
tests which don't get installed), and can cause install errors in some
configurations.

meson can be told to never install subprojects with `meson install
--skip-subprojects` which solves this, but is inconvenient because that
option must be specified on the command line and there is little hope of
meson's default behavior changing [1].

To fix this, I've replaced `patch_url` for the wrap with an included
`patch_directory` instead, which was created by unpacking the original
archive pointed to by `patch_url` and setting `install : false` in
src/meson.build.

A more concise option to make the same change would be to make the
change to the `install` option in a new patch specified via `diff_files`
(which works because patches from `diff_files` are applied after
applying the `patch_*` archive), but `diff_files` is not supported by
Meson before version 0.63.0 which would require increasing flashrom's
minimum meson version from the current 0.56.0. This seems too new, since
meson 0.56 was released in October 2020 while meson 0.63 was released in
July 2022.

[1]: https://github.com/mesonbuild/meson/issues/10561#issuecomment-1444059473

BUG=https://ticket.coreboot.org/issues/561

Change-Id: I15f549175e2d5d52979814d7f7530da868871ce8
Signed-off-by: Peter Marheine <pmarheine@chromium.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/84557
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
2024-10-01 04:51:21 +00:00
Anastasia Klimchuk
84bfe0e04e tests: Add header stdlib.h to allow scan-build to do analysis
Without the header being explicitly included, scan-build run on CI
was returning errors for these files, such as:

include the header <stdlib.h> or explicitly provide a declaration
for 'calloc'

The functions in question were calloc, free, etc.

Change-Id: I4b79c5f86c074c456533296c309293e4064abe3f
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/84455
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-25 01:46:27 +00:00
Anastasia Klimchuk
c7680c0236 doc: Convert doc for ft2232_spi
From page:
https://wiki.flashrom.org/FT2232SPI_Programmer

The sections about openbiosprog-spi, RushSPI, Amontec have broken
links and are not added to this patch. If we find out where these
project live now (if they still are active), would be good to add
the info later.

Change-Id: Id30b6c92838d7ca6e26a4cc3e0aeeb3f3ce07668
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83866
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-25 01:45:29 +00:00
Anastasia Klimchuk
b0e8bc4a3b doc: Add manpage item for nicintel_spi
The existing page on old wiki is very small and fits into
a manpage item:

https://wiki.flashrom.org/NICIntel

Change-Id: I139065611c68c0fa0a675fe49a6f8bc20e9057f7
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83751
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
2024-09-25 01:44:29 +00:00
Anastasia Klimchuk
88d31fc1b4 dummyflasher: Enable higher frequency emulation, add docs and tests
The patch adds a section on a manpage to explain the freq
parameter in dummyflasher, and tests for various valid and invalid
values of freq parameter.

Co-developed-by: Anastasia Klimchuk <aklm@flashrom.org>
Co-developed-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
Change-Id: Iaca5d95f8f977bf0c2283c6458d8977e6ce70251
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/84423
Reviewed-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-25 01:39:33 +00:00
Anastasia Klimchuk
aa1189039e en29lv640b.c: Fix the comment about chunksize
Co-developed-by: Anastasia Klimchuk <aklm@flashrom.org>
Co-developed-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
Change-Id: I104611d42b301662e2c833498aca99c879685846
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/84422
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
2024-09-23 09:57:14 +00:00
Anastasia Klimchuk
87f2d6791d dediprog: Fix comment about usb transfer size
Co-developed-by: Anastasia Klimchuk <aklm@flashrom.org>
Co-developed-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
Change-Id: I1ad7f89b0a6c91907440e3897ac262bd82f846d5
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/84421
Reviewed-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-23 09:54:21 +00:00
Anastasia Klimchuk
b6b0eba310 Fix FEATURE_NO_ERASE chips and add test for them
New check was added to `check_block_eraser` in
commit 0f389aea9e630c3b21547a5dd8dbe572a8502853 but it was not
handling FEATURE_NO_ERASE chips.

This patch fixes processing such chips and adds test to run
write and verify with dummyflasher for FEATURE_NO_ERASE chips.

Ticket: https://ticket.coreboot.org/issues/553

Change-Id: I582fe00da0715e9b5e92fcc9d15d5a90a2615117
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/84203
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Peter Marheine <pmarheine@chromium.org>
2024-09-16 01:13:21 +00:00
Grant Pannell
d71e88ecfb erasure_layout: Fix init_eraseblock segmentation fault
Fix a segmentation fault that is caused by accessing an invalid
"subedata" pointer on the last iteration of the init_eraseblock loop.
Instead, short circuit the loop condition to check the sub block index
first, and do not access the invalid pointer if it is the last sub
block.

Issue was encountered in:
- OS: OpenBSD 7.5 amd64
- Compiler: clang 16.0.6
- Chip: Macronix MX25U6435E/F

BUG=https://ticket.coreboot.org/issues/555

Change-Id: I61bf0d93aa9f0b2b420b146be16fcd5124f0dc5d
Signed-off-by: Grant Pannell <grant@digitaldj.net>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/84234
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: DigitalDJ
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
2024-09-10 06:41:11 +00:00
Michał Żygowski
11d5c1750f ichspi: Add RaptorPoint PCH support
Based on public Intel 700 Series PCH datasheet, DOC 743835 rev 004.

The IDs of IoT chipset SKUs (ending with E) can only be found in "12th
Gen Intel® Core™ Processors Family (Formerly Known as Alder Lake -S)
for IoT Platforms External Design Specification (EDS) Addendum" DOC
634528 rev 2.7 (NDA).

TEST=Probe flash on Z790 chipset. Run the ich_descriptors_tool and
check the output is correct as expected.

Change-Id: I13ac52d5400c0e2260e12d605077fc2182c379ef
Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83854
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
Reviewed-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
2024-09-08 08:13:30 +00:00
Anastasia Klimchuk
14f121e39e Ensure verify operation completed in full if chip memory modified
The patch adds new functionality to the test: tracking the areas of
chip memory that were modified (i.e. by erase or write operation),
and then checking those areas were completely covered by verify
operation.

The test operates over the mock chip memory of 16 bytes, so it is
possible to track each byte which was modified, and assert that is
has been verified afterwards.

Adding the test found a bug which is fixed in this commit:

Post-cleanup after processing unaligned region for the case when end
region needs to be extended to align with erase block. Writing was
done correctly, but post-processing of newcontents could cause
one-off offset at the end of the region, which would make
verification appear false-negative (see test cases #16-19).

Change-Id: I3c5d55a0deb20f23f4072caac8c0dce04cc98fd4
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/84078
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Peter Marheine <pmarheine@chromium.org>
2024-09-08 07:48:12 +00:00
Peter Marheine
2c573640f3 reduce DELAY_MINIMUM_SLEEP_US to 100 by default
This makes flashrom sleep more eagerly rather than busy-waiting,
observing that most delays in flashrom are either less than 100
microseconds (barely enough time to get any work done, even on a fast
machine) or much more than 1 millisecond (very wasteful to busy-loop).
Since we believe most systems offer good timer resolution that should
provide sleep latency on the order of 100 microseconds, this is a
reasonable default.

For DOS, the default is set to 50ms because the best available timing
source on DOS only ticks at about 20 Hz.

Signed-off-by: Peter Marheine <pmarheine@chromium.org>
Change-Id: I0f431d240c670446218b14811ef62a34e4c83da2
Reviewed-on: https://review.coreboot.org/c/flashrom/+/81608
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
2024-09-02 23:52:30 +00:00
Victor Lim
b2a35e1bd4 flashchips: add GD25B512MF and GD25R512MF
GD25B512MF: 3V 512Mbit, QE = 1
GD25R512MF: GD25B512MF feature + RPMC
These two part share the same datasheet on the flash side.
https://www.gigadevice.com.cn/Public/Uploads/uploadfile/files/20240412/DS-00975-GD25B512MF-Rev1.1.pdf

Tested both models on ch347 with erase, write, read, and protection.

Change-Id: I9821efb34fb4abb806ad52acec46aad186888c07
Signed-off-by: Victor Lim <vlim@gigadevice.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/84083
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-01 08:52:33 +00:00
ZhiYuanNJ
00e02a6184 ch347_spi: Add spi clock frequency selection
CH347 SPI interface supports up to 60M.
For example, to set a 30M spi rate, use -p ch347_spi:spispeed=30M.

Change-Id: If2be48929db540a6598ac0b60b37e64597156db7
Signed-off-by: ZhiYuanNJ Liu <871238103@qq.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/82776
Reviewed-by: Nicholas Chin <nic.c3.14@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
2024-08-29 22:43:09 +00:00
Victor Lim
6ccfef8ccd flashchips: add GD25B256E and GD25R256E
removed FEATURE_WRSR_EXT2 from the model after datasheet review.
replace
printlock	= SPI_PRETTYPRINT_STATUS_REGISTER_BP3_SRWD,
.unlock		= SPI_DISABLE_BLOCKPROTECT,

with

.printlock	= SPI_PRETTYPRINT_STATUS_REGISTER_BP4_SRWD,
.unlock		= SPI_DISABLE_BLOCKPROTECT_BP4_SRWD,

GD25B256E: 3V 256Mbit, Quad enabled.
GD25R256E: GD25B256E features + RPMC, so they share the same datasheet on flash side
https://www.gigadevice.com.cn/Public/Uploads/uploadfile/files/20230627/DS-00658-GD25B256E-Rev1.1.pdf

Tested both models on ch347 with erase, write, read and protection.

Change-Id: Ie733e0c2e35fa4797f5198f2c8334469b65f402c
Signed-off-by: Victor Lim <vlim@gigadevice.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83998
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
2024-08-27 04:48:28 +00:00
Samantaz Fox
23051106fa flashchips: Update test status for Fudan FM25Q08 and FM25Q128
Both of these chips were tested in-circuit with an SOIC-8 clamp and two
different BusPirate boards: the BPv3.6 from Adafruit (sku 237) and the
BPv3.6a from Sparkfun (sku TOL-12942), on a Fedora 38 host, using
flashrom 9a570318 (changes rebased since then).

Change-Id: Ib3c94f03a132a912bb4bb9d36e8783f4468587c4
Signed-off-by: Samantaz Fox <coding@samantaz.fr>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83970
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-08-26 03:02:03 +00:00
Samantaz Fox
4e61edbace flashchips: Add definitions for Fudan FM25Q04, FM25Q64 and FM25Q128
These chips have the exact same characteristics as their 8/16/32 counterparts,
except for the different flash size.

Relevant datasheets (I've also included the FM25Q32 as a reference):
* https://www.fmsh.com/nvm/FM25Q04_ds_eng.pdf
* https://www.fmsh.com/nvm/FM25Q32_ds_eng.pdf
* https://www.fmsh.com/nvm/FM25Q64_ds_eng.pdf
* https://www.fmsh.com/nvm/FM25Q128_ds_eng.pdf

Testing status will be updated in a subsequent commit.

Change-Id: I88fcc2bbb9706c8adb3722da6aa0e1d2d04c3fde
Signed-off-by: Samantaz Fox <coding@samantaz.fr>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83969
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
2024-08-26 02:59:31 +00:00
Miklos Marton
e0ed3b20df stlinkv3_spi: Mark STLinkV3-Mini not working
The STLinkV3 Mini does not support the bridge API,
it return LIBUSB_IO_ERROR when querying
the bridge version. The official ST updater does
not lists the bridge version in the info screen.
Due to it's construction (additional connector on the
bottom) it is likely that ST disabled the bridge functions
on the castellated pads.

Change-Id: Ic1ea4ca7acedca5d374cff8fcef450c18e55a9e8
Signed-off-by: Miklos Marton <martonmiklosqdev@gmail.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83921
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-08-23 10:05:07 +00:00
Victor Lim
b938411eff flashchips: add GD25B128E and GD25R128E
GD25B128E: 3V 128Mbit shipped with QE = 1
https://www.gigadevice.com.cn/Public/Uploads/uploadfile/files/20220714/DS-00594-GD25B128E-Rev1.0.pdf

GD25R128E: GD25Q128E with RPMC feature.
GD25Q128E and GD25R128E share the same datasheet on the flash side.
https://www.gigadevice.com.cn/Public/Uploads/uploadfile/files/20240729/DS-00480-GD25Q128E-Rev1.3.pdf

Tested on ch347 both models with read write erase and protection.

Change-Id: I14e3c44ebbcc65640042a7719401615b5aa66cc2
Signed-off-by: Victor Lim <vlim@gigadevice.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83967
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-08-23 07:43:54 +00:00
Kane Chen
1197f0832d chipset_enable.c: Use PCI_ACCESS_ECAM to access pci register
In the latest pciutils(v3.13.0), it supports accessing pci registers
by ecam. This patch uses libpci version check to decide whether
flashrom calls libpci and use 0xcf8/0xcfc or ecam to access pci
registers.

BUG=b:359813524
TEST=with libpci >= 3.13.0, flashrom is working with ECAM access

Change-Id: I4549f87c8b01da0a1d3d8ce0b3b75c1f5fa2cbab
Signed-off-by: Kane Chen <kane.chen@intel.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83896
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Hsuan-ting Chen <roccochen@google.com>
Reviewed-by: Peter Marheine <pmarheine@chromium.org>
2024-08-22 23:36:35 +00:00
Anastasia Klimchuk
33dda3387c doc: Remove leftover reference to building_with_make
Change-Id: If6d3580972ea7d42503004b922b90829025bd62d
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83942
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Peter Marheine <pmarheine@chromium.org>
2024-08-22 01:22:55 +00:00
Anastasia Klimchuk
87134f538d tree: Remove print_wiki.c
Old wiki website is retired and so is print_wiki.c

Change-Id: I9990add27f7fdddc23ddd1f33306566ce7548417
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83941
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Peter Marheine <pmarheine@chromium.org>
2024-08-22 01:22:27 +00:00
Victor Lim
97922fba17 flashchips: add GD25LF512MF model
GD25LF512MF: 1.8V 512Mbit high performance, quad IO enabled.

Tested on ch347 with erase, write, read, and protection

Change-Id: I3d202f5afcc9c33a4040f8186dc6fef1878ba79a
Signed-off-by: Victor Lim <vlim@gigadevice.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83912
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-08-20 13:12:16 +00:00
Victor Lim
8685230caa flashchips: adding GD25LB512MF/GD25LR512MF
GD25LB512MF: 1.8V 512Mbit shipped with Quad enabled.
https://www.gigadevice.com.cn/Public/Uploads/uploadfile/files/20231213/DS-01012-GD25LB512MF-Rev1.0.pdf

GD25LR512MF: all GD25LB512MF features + RPMC feature
The datasheet is identical with GD25LB512MF for the NOR flash side.

Tested both models on ch347 with erase, read, write, and protection.

Change-Id: I6a0061a43af5966c93c95645b51a640c00f3d829
Signed-off-by: Victor Lim <vlim@gigadevice.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83899
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-08-17 08:06:19 +00:00
Bora Guvendik
e4cb19a489 flashchips: add support for MX77U51250F chip
Add initial support for Macronix MX77U51250F.

BUG=none
BRANCH=none
TEST= Tested read, write and probe on google/fatcat with internal
programmer.

Change-Id: I2c2e94f01dc63f60cf636bc6afe1f033e2a6f83c
Signed-off-by: Bora Guvendik <bora.guvendik@intel.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/82626
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: DZ <danielzhang@mxic.com.cn>
2024-08-17 08:05:54 +00:00
Victor
126de26b44 flashchips: add GD25LB512ME
Added GD25LB512ME to Flashchips.C
added Sames as GD25LB512ME to GIGADEVICE_GD25LR512ME to flashchips.h

GD25LB512ME is 1.8V 512Mbit, Quad enabled when shipped.
https://www.gigadevice.com.cn/Public/Uploads/uploadfile/files/20230627/DS-00580-GD25LB512ME-Rev1.5.pdf

Tested on ch347 with erase, program, read, and protection.

Change-Id: I04103814f901478098c1a989f4239792b64073ec
Signed-off-by: Victor Lim <vlim@gigadevice.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83795
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
2024-08-15 12:51:44 +00:00
Anastasia Klimchuk
9c3aed0269 flashrom.c: Rename {erase|write}_by_layout_new as the only one
We used to have two code paths for erase and write, so we had
{erase|write}_by_layout in two variants: *_new and *_legacy.
Now that legacy is removed, *_new can be renamed without *_new
suffix.

Change-Id: Ib21bf29e1993c4fc0516e76fde2ad283eedb50d2
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83852
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Aarya <aarya.chaumal@gmail.com>
Reviewed-by: Peter Marheine <pmarheine@chromium.org>
2024-08-15 02:27:52 +00:00
Anastasia Klimchuk
5ddd3b55fc flashrom.c: Delete legacy erase and write logic
Current code path for erase and write has been enabled in the tree
since May 2023, which is more than 1 year ago (15 months ago),
and legacy path has been disabled since the same time.

Current logic has been officially released in v1.4.0 in July 2024.

Change-Id: I08fd686fecf6a5313eea2d66b368661c664f4800
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83846
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Aarya <aarya.chaumal@gmail.com>
Reviewed-by: Peter Marheine <pmarheine@chromium.org>
2024-08-15 02:27:03 +00:00
Anastasia Klimchuk
213fdb0f9f doc: Add doc describing release process
Change-Id: Id6aacf5ef3879a5e236759e7a4a6af3cf7cc0a00
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83762
Reviewed-by: Peter Marheine <pmarheine@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-08-12 12:16:14 +00:00
Peter Marheine
133b112d09 Remove the Makefile
As was described in the version 1.4 release notes, this deletes the
Makefile and supporting elements leaving Meson as the only supported
buildsystem.

Signed-off-by: Peter Marheine <pmarheine@chromium.org>
Change-Id: Ib3cf22cf636ef9b70527b734ffa34aead2a74edd
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83673
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
2024-08-12 00:09:12 +00:00
Victor
03090fec0a flashchips: add GD25LF256F
added GD25LF256F on flashchips.c
added GIGADEVICE_GD25LF256F=0x6319 on flashchip.h

GD25LF256F is a higher performance 1.8V 256Mbit SPI flash

I have tested on CH347 with erase, program, read, protection.

Change-Id: I21a71606476e823faa38a7920aa2b10e25d68d26
Signed-off-by: Victor <vlim@gigadevice.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83717
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
2024-08-09 12:59:12 +00:00
Anastasia Klimchuk
3d7094ad09 doc: Convert the doc for MSI JSPI1
The doc converted from
https://wiki.flashrom.org/MSI_JSPI1

Change-Id: Idd215a3a3a4d62629803a71d360755c43c1ab599
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83753
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: David Hendricks <david.hendricks@gmail.com>
2024-08-09 02:13:46 +00:00
Anastasia Klimchuk
fd97d5b2a4 doc: Fix the link to In-System programming doc
Change-Id: Ic82be2b926b0d3a9de7d4b030bbef31c1b3746fb
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83761
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Peter Marheine <pmarheine@chromium.org>
2024-08-08 00:14:39 +00:00
Anastasia Klimchuk
f1ddf46820 doc: Add overview doc for user_docs
This document is converted from Technology page on wiki
https://wiki.flashrom.org/Technology

Change-Id: I93107d6b5530c301dd90f7177758632d9d1810eb
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83584
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-08-03 08:52:13 +00:00
Anastasia Klimchuk
d99afdc026 doc: Add doc for buspirate programmer
Doc migrated from the wiki page:
https://wiki.flashrom.org/Bus_Pirate

Change-Id: I5a57f08ea3fce0c78d73aa61b85ff7b0cff450b8
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83471
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: David Reguera Garcia (Dreg) <regueragarciadavid@gmail.com>
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
2024-08-03 08:37:56 +00:00
Anastasia Klimchuk
d611c31447 doc: Add doc for in-system programming
The page on wiki is here:
https://wiki.flashrom.org/ISP

Change-Id: If4752f0f02ae973b3d832f42166de643d95c9f97
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83451
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Alexander Goncharov <chat@joursoir.net>
2024-08-03 08:35:20 +00:00
Anastasia Klimchuk
923b6b5b8d doc: Add page with misc notes and advice
This page is a combination of info from the following pages:

https://wiki.flashrom.org/Common_problems
https://wiki.flashrom.org/Connections
https://wiki.flashrom.org/FAQ
https://wiki.flashrom.org/Random_notes
https://wiki.flashrom.org/Live_CD

Change-Id: I538f31765576584760524cd8b06cbf5bce191bde
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83450
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-08-03 08:33:03 +00:00
David Reguera Garcia
f944a0488d MAINTAINERS: Add David Reguera for Bus Pirate
Change-Id: I0e298732a1464152c0d4cdc728bcdfd1b40ce770
Signed-off-by: David Reguera Garcia <regueragarciadavid@gmail.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83681
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
2024-08-02 04:41:14 +00:00
Patrick Georgi
ba29ab1e57 manibuilder: Make curl follow redirects
The wiki is moving around, and the URLs are probably not final. Until
the download locations can be nailed down to their final location, tell
curl to follow HTTP redirects.

Change-Id: I52f1c786a376f5c7394fa5bffc689e58f8691c75
Signed-off-by: Patrick Georgi <patrick@coreboot.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83672
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
2024-08-02 00:39:31 +00:00
Michael Heimpold
d3f9c258db flashchips: add support for chip model Winbond W25Q32JV_M
This is a 4 MiB model with QE=0 factory setting.

Tested with ch341a programmer: probe, read, write, erase

Link to datasheet:
https://www.winbond.com/resource-files/W25Q32JV%20RevI%2005042021%20Plus.pdf

Change-Id: I374c466848eabf5647dc88e016ac32b99ec37a06
Signed-off-by: Michael Heimpold <mhei@heimpold.de>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83586
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
2024-07-30 12:28:59 +00:00
Anastasia Klimchuk
e0bc199cde doc: Add manpage entries for nic3com, gfxnvidia, satasii
These programmers have a little information about them on wiki.
It's too little info to create a dedicated page for each
programmer, however info can go to the manpage.

For reference, wiki pages are the following:
https://wiki.flashrom.org/NIC3Com
https://wiki.flashrom.org/Gfxnvidia
https://wiki.flashrom.org/Supported_programmers (search for the
programmers in the table).

Change-Id: Id2a2aefc6a3c8348fdaa4498aaa704fd2da7602f
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83467
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-07-26 08:30:59 +00:00
Ssunk
ff656e08e5 flashchips: Add Support for XMC XM25QU512C/XM25QU512D
Add initial support for the SPI flash chip XM25QU512C/XM25QU512D
Datasheet link: https://www.xmcwh.com/uploads/808/XM25QU512C_V1.6.pdf

Tested with ch341a programmer: probe, read, write, erase

Change-Id: I251c66b5d3b4fc94242c2c9d6b7c0f03c1bd7d0b
Signed-off-by: Kan Sun <ssunkkan@gmail.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83243
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
2024-07-26 08:29:13 +00:00
Ssunk
1865ac28a3 flashchips: Add Support for XMC XM25QH512C/XM25QH512D
Add initial support for the SPI flash chip XM25QH512C/XM25QH512D
Datasheet link: https://www.xmcwh.com/uploads/803/XM25QH512C_V1.6.pdf

Tested with ch341a programmer: probe, read, write, erase

Change-Id: Ica8ed5eaba2435a9416274b94f633ea40dfeea2f
Signed-off-by: Kan Sun <ssunkkan@gmail.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83242
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-07-26 08:28:47 +00:00
Ssunk
a7606f014a flashchips: Add Support for XMC XM25QU256D
Add initial support for the SPI flash chip XM25QU256D (same as XM25QU256C)
Datasheet link:
https://www.xmcwh.com/uploads/224/XM25QU256C%20_%20Ver%202.0.pdf

Tested with ch341a programmer: probe, read, write, erase

Change-Id: I504699160f804cfbacd189409596e105752d94eb
Signed-off-by: Kan Sun <ssunkkan@gmail.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83241
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
2024-07-26 08:24:57 +00:00
Ssunk
806e76477f flashchips: Add Support for XMC XM25QH256D
Add initial support for the SPI flash chip XM25QH256D (same as XM25QH256C)
Datasheet link:
https://www.xmcwh.com/uploads/802/XM25QH256C%20_%20Ver%202.0.pdf

Tested with ch341a programmer: probe, read, write, erase

Change-Id: I77481e63eb98ed12935288dc0d6286cb1baf8edb
Signed-off-by: Kan Sun <ssunkkan@gmail.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83240
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-07-26 08:23:28 +00:00
Ssunk
4465fe6356 flashchips: Add Support for XMC XM25QU128D
Add initial support for the SPI flash chip XM25QU128D (same as XM25QU128C)
Datasheet link: https://www.xmcwh.com/uploads/227/XM25QU128C_Ver2.1.pdf

Tested with ch341a programmer: probe, read, write, erase

Change-Id: If5fe2b3c1973599aecb80adcb5f0fe2dec0da0e5
Signed-off-by: Kan Sun <ssunkkan@gmail.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83239
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
2024-07-26 08:20:18 +00:00
Ssunk
c864c10625 flashchips: Add Support for XMC XM25QH128D
Add initial support for the SPI flash chip XM25QH128D (same as XM25QH128C)
Datasheet link: https://www.xmcwh.com/uploads/801/XM25QH128C_Ver2.1.pdf

Tested with ch341a programmer: probe, read, write, erase

Change-Id: Ia4577fba545f9f8eea15eef7060bd5955a8457ca
Signed-off-by: Kan Sun <ssunkkan@gmail.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83238
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-07-26 08:19:20 +00:00
Ssunk
3e7d4743ae flashchips: Add Support for XMC XM25QH64D
Add initial support for the SPI flash chip XM25QH64D (same as XM25QH64C)
Datasheet link: https://www.xmcwh.com/uploads/800/XM25QH64C_Ver1.8.pdf

Change-Id: Ia3357cb2c30cbe34dcf0e06fd037064304b4c0c4
Signed-off-by: Kan Sun <ssunkkan@gmail.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83237
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
2024-07-26 08:17:33 +00:00
Ssunk
029951e08d flashchips: Add Support for XMC XM25QU32C
Add initial support for the SPI flash chip XM25QU32C
Datasheet link: https://www.xmcwh.com/uploads/233/XM25QU32C_Ver2.1.pdf

Tested with ch341a programmer: probe, read, write, erase

Change-Id: Ida0ab895309ef83dcc6b3f03c032a16f9b1f923a
Signed-off-by: Kan Sun <ssunkkan@gmail.com>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/83236
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Anastasia Klimchuk <aklm@chromium.org>
2024-07-26 08:14:16 +00:00