diff options
Diffstat (limited to 'i18n/fr_FR/projects/flashrom')
8 files changed, 356 insertions, 0 deletions
diff --git a/i18n/fr_FR/projects/flashrom/configs/install b/i18n/fr_FR/projects/flashrom/configs/install new file mode 100644 index 00000000..0a129b8a --- /dev/null +++ b/i18n/fr_FR/projects/flashrom/configs/install @@ -0,0 +1 @@ +flashrom:flashrom diff --git a/i18n/fr_FR/projects/flashrom/configs/lenovobios/revision b/i18n/fr_FR/projects/flashrom/configs/lenovobios/revision new file mode 120000 index 00000000..baaf3167 --- /dev/null +++ b/i18n/fr_FR/projects/flashrom/configs/lenovobios/revision @@ -0,0 +1 @@ +../revision
\ No newline at end of file diff --git a/i18n/fr_FR/projects/flashrom/configs/revision b/i18n/fr_FR/projects/flashrom/configs/revision new file mode 100644 index 00000000..d47174dd --- /dev/null +++ b/i18n/fr_FR/projects/flashrom/configs/revision @@ -0,0 +1 @@ +93db6e16895287b7ac3a8a8f7f4a4f176547b7ed diff --git a/i18n/fr_FR/projects/flashrom/configs/targets b/i18n/fr_FR/projects/flashrom/configs/targets new file mode 100644 index 00000000..915652d5 --- /dev/null +++ b/i18n/fr_FR/projects/flashrom/configs/targets @@ -0,0 +1,2 @@ +generic +lenovobios diff --git a/i18n/fr_FR/projects/flashrom/flashrom b/i18n/fr_FR/projects/flashrom/flashrom new file mode 100755 index 00000000..e01b66be --- /dev/null +++ b/i18n/fr_FR/projects/flashrom/flashrom @@ -0,0 +1,115 @@ +#!/usr/bin/env bash + +# Copyright (C) 2016 Paul Kocialkowski <contact@paulk.fr> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +arguments() { + project_arguments_targets "$project" "$@" +} + +usage() { + project_usage_actions "$project" + project_usage_arguments "$project" "$@" +} + +download() { + local repository=$project + + project_download_git "$project" "$repository" 'https://review.coreboot.org/flashrom.git https://github.com/stefanct/flashrom.git' "$@" +} + +download_check() { + local repository=$project + + project_download_check_git "$project" "$repository" "$@" +} + +extract() { + local repository=$project + + project_extract "$project" "$@" +} + +extract_check() { + local repository=$project + + project_extract_check "$project" "$@" +} + +update() { + local repository=$project + + project_update_git "$project" "$repository" "$@" +} + +update_check() { + local repository=$project + + project_update_check_git "$project" "$repository" "$@" +} + +build() { + local repository=$project + + project_sources_directory_missing_empty_error "$project" "$repository" "$@" + + if git_project_check "$repository" + then + git_project_checkout "$project" "$repository" "$@" + fi + + local sources_path=$(project_sources_path "$project" "$repository" "$@") + local build_path=$(project_build_path "$project" "$@") + + mkdir -p "$build_path" + + make -C "$sources_path" -j$TASKS + + cp "$sources_path/flashrom" "$build_path" + + make -C "$sources_path" "clean" +} + +build_check() { + project_build_check "$project" "$@" +} + +install() { + project_install "$project" "$@" +} + +install_check() { + project_install_check "$project" "$@" +} + +release() { + local repository=$project + + project_release_install_archive "$project" "$TOOLS" "$@" + + project_release_sources_git "$project" "$repository" "$@" +} + +release_check() { + local repository=$project + + project_release_install_archive_check "$project" "$TOOLS" "$@" + + project_release_check_sources_git "$project" "$repository" "$@" +} + +clean() { + project_clean "$project" "$@" +} diff --git a/i18n/fr_FR/projects/flashrom/patches/0001-Purge-redundant-Macronix-chips.patch b/i18n/fr_FR/projects/flashrom/patches/0001-Purge-redundant-Macronix-chips.patch new file mode 100644 index 00000000..e14bfe0c --- /dev/null +++ b/i18n/fr_FR/projects/flashrom/patches/0001-Purge-redundant-Macronix-chips.patch @@ -0,0 +1,91 @@ +From 4a262ea16a10a6067d48d70a2195151dea9292c6 Mon Sep 17 00:00:00 2001 +From: Andrew Robbins <contact@andrewrobbins.info> +Date: Fri, 2 Mar 2018 00:13:16 -0500 +Subject: [PATCH] Purge redundant Macronix chips + +Removing the redundant Macronix chips avoids the situation where X60 +owners have to specify their particular chip on the command line with +flashrom's '--chip' flag. +--- + flashchips.c | 16 ++++++++-------- + 1 file changed, 8 insertions(+), 8 deletions(-) + +diff --git a/flashchips.c b/flashchips.c +index 1ab4986..7f85415 100644 +--- a/flashchips.c ++++ b/flashchips.c +@@ -7595,7 +7595,7 @@ const struct flashchip flashchips[] = { + .name = "MX25L1605A/MX25L1606E/MX25L1608E", + .bustype = BUS_SPI, + .manufacture_id = MACRONIX_ID, +- .model_id = MACRONIX_MX25L1605, ++ .model_id = 0xDEAD, + .total_size = 2048, + .page_size = 256, + /* OTP: 64B total; enter 0xB1, exit 0xC1 (MX25L1606E and MX25L1608E only) */ +@@ -7634,7 +7634,7 @@ const struct flashchip flashchips[] = { + .name = "MX25L1605D/MX25L1608D/MX25L1673E", + .bustype = BUS_SPI, + .manufacture_id = MACRONIX_ID, +- .model_id = MACRONIX_MX25L1605, ++ .model_id = 0xDEAD, + .total_size = 2048, + .page_size = 256, + .feature_bits = FEATURE_WRSR_WREN, +@@ -7776,7 +7776,7 @@ const struct flashchip flashchips[] = { + .name = "MX25L3205D/MX25L3208D", + .bustype = BUS_SPI, + .manufacture_id = MACRONIX_ID, +- .model_id = MACRONIX_MX25L3205, ++ .model_id = 0xDEAD, + .total_size = 4096, + .page_size = 256, + /* OTP: 64B total; enter 0xB1, exit 0xC1 */ +@@ -7812,7 +7812,7 @@ const struct flashchip flashchips[] = { + .name = "MX25L3206E/MX25L3208E", + .bustype = BUS_SPI, + .manufacture_id = MACRONIX_ID, +- .model_id = MACRONIX_MX25L3205, ++ .model_id = 0xDEAD, + .total_size = 4096, + .page_size = 256, + /* OTP: 64B total; enter 0xB1, exit 0xC1 */ +@@ -7851,7 +7851,7 @@ const struct flashchip flashchips[] = { + .name = "MX25L3273E", + .bustype = BUS_SPI, + .manufacture_id = MACRONIX_ID, +- .model_id = MACRONIX_MX25L3205, ++ .model_id = 0xDEAD, + .total_size = 4096, + .page_size = 256, + /* OTP: 64B total; enter 0xB1, exit 0xC1 */ +@@ -7962,7 +7962,7 @@ const struct flashchip flashchips[] = { + .name = "MX25L6405D", + .bustype = BUS_SPI, + .manufacture_id = MACRONIX_ID, +- .model_id = MACRONIX_MX25L6405, ++ .model_id = 0xDEAD, + .total_size = 8192, + .page_size = 256, + /* OTP: 64B total; enter 0xB1, exit 0xC1 */ +@@ -7998,7 +7998,7 @@ const struct flashchip flashchips[] = { + .name = "MX25L6406E/MX25L6408E", + .bustype = BUS_SPI, + .manufacture_id = MACRONIX_ID, +- .model_id = MACRONIX_MX25L6405, ++ .model_id = 0xDEAD, + .total_size = 8192, + .page_size = 256, + /* MX25L6406E supports SFDP */ +@@ -8038,7 +8038,7 @@ const struct flashchip flashchips[] = { + .name = "MX25L6436E/MX25L6445E/MX25L6465E/MX25L6473E/MX25L6473F", + .bustype = BUS_SPI, + .manufacture_id = MACRONIX_ID, +- .model_id = MACRONIX_MX25L6405, ++ .model_id = 0xDEAD, + .total_size = 8192, + .page_size = 256, + /* supports SFDP */ +-- +1.9.1 + diff --git a/i18n/fr_FR/projects/flashrom/patches/0002-Workaround-for-MX25-chips.patch b/i18n/fr_FR/projects/flashrom/patches/0002-Workaround-for-MX25-chips.patch new file mode 100644 index 00000000..de6272c0 --- /dev/null +++ b/i18n/fr_FR/projects/flashrom/patches/0002-Workaround-for-MX25-chips.patch @@ -0,0 +1,81 @@ +From 886f1db7edbfc9ef4c9727b4f564c1e7e35d6565 Mon Sep 17 00:00:00 2001 +From: consts <grudnevkv@gmail.com> +Date: Fri, 2 Mar 2018 07:03:37 +0000 +Subject: [PATCH] Workaround for MX25 chips + +https://notabug.org/libreboot/libreboot/issues/193 +--- + cli_classic.c | 5 +++++ + programmer.h | 1 + + spi.c | 9 +++++++++ + 3 files changed, 15 insertions(+) + +diff --git a/cli_classic.c b/cli_classic.c +index 31f7394..c60168c 100644 +--- a/cli_classic.c ++++ b/cli_classic.c +@@ -62,6 +62,7 @@ static void cli_classic_usage(const char *name) + " -o | --output <logfile> log output to <logfile>\n" + " --flash-contents <ref-file> assume flash contents to be <ref-file>\n" + " -L | --list-supported print supported devices\n" ++ " -m | --workaround-mx keep flash busy before sending command\n" + #if CONFIG_PRINT_WIKI == 1 + " -z | --list-supported-wiki print supported devices in wiki syntax\n" + #endif +@@ -136,6 +137,7 @@ int main(int argc, char *argv[]) + {"help", 0, NULL, 'h'}, + {"version", 0, NULL, 'R'}, + {"output", 1, NULL, 'o'}, ++ {"workaround-mx", 0, NULL, 'm'}, + {NULL, 0, NULL, 0}, + }; + +@@ -347,6 +349,9 @@ int main(int argc, char *argv[]) + } + #endif /* STANDALONE */ + break; ++ case 'm': /* --workaround-mx */ ++ workaround_mx = 1; ++ break; + default: + cli_classic_abort_usage(); + break; +diff --git a/programmer.h b/programmer.h +index 139f4fa..f54e690 100644 +--- a/programmer.h ++++ b/programmer.h +@@ -664,6 +664,7 @@ enum ich_chipset { + CHIPSET_100_SERIES_SUNRISE_POINT, /* also 6th/7th gen Core i/o (LP) variants */ + CHIPSET_C620_SERIES_LEWISBURG, + }; ++extern int workaround_mx; /* workaround for MX25* chips, makes flash operations more reliable, less failures */ + + /* ichspi.c */ + #if CONFIG_INTERNAL == 1 +diff --git a/spi.c b/spi.c +index 56f1fdf..4e61d88 100644 +--- a/spi.c ++++ b/spi.c +@@ -30,10 +30,19 @@ + #include "programmer.h" + #include "spi.h" + ++int workaround_mx; /* Make operations with MX25* chips more reliable */ ++ + int spi_send_command(struct flashctx *flash, unsigned int writecnt, + unsigned int readcnt, const unsigned char *writearr, + unsigned char *readarr) + { ++ if (workaround_mx) { ++ const unsigned char cmd[JEDEC_READ_OUTSIZE] = {JEDEC_READ, 0, 0, 0}; ++ unsigned char buf[256]; ++ /* keep flash busy for some time, keep CS warm before sending actual command */ ++ flash->mst->spi.command(flash, sizeof(cmd), sizeof(buf), cmd, buf); ++ } ++ /* actual command */ + return flash->mst->spi.command(flash, writecnt, readcnt, writearr, + readarr); + } +-- +1.9.1 + diff --git a/i18n/fr_FR/projects/flashrom/patches/lenovobios/0001-Lenovobios-adaptation-for-Macronix-and-SST-chips.patch b/i18n/fr_FR/projects/flashrom/patches/lenovobios/0001-Lenovobios-adaptation-for-Macronix-and-SST-chips.patch new file mode 100644 index 00000000..2a383fd1 --- /dev/null +++ b/i18n/fr_FR/projects/flashrom/patches/lenovobios/0001-Lenovobios-adaptation-for-Macronix-and-SST-chips.patch @@ -0,0 +1,64 @@ +From 85eea125194414b6afc8053565bb333f06054421 Mon Sep 17 00:00:00 2001 +From: Leah Rowe <leah@libreboot.org> +Date: Fri, 2 Mar 2018 06:47:34 +0000 +Subject: [PATCH] Lenovobios adaptation for Macronix and SST chips + +--- + flashchips.c | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +diff --git a/flashchips.c b/flashchips.c +index 7f85415..16b166b 100644 +--- a/flashchips.c ++++ b/flashchips.c +@@ -7634,12 +7634,12 @@ const struct flashchip flashchips[] = { + .name = "MX25L1605D/MX25L1608D/MX25L1673E", + .bustype = BUS_SPI, + .manufacture_id = MACRONIX_ID, +- .model_id = 0xDEAD, ++ .model_id = 0x14, + .total_size = 2048, + .page_size = 256, + .feature_bits = FEATURE_WRSR_WREN, + .tested = TEST_OK_PREW, +- .probe = probe_spi_rdid, ++ .probe = probe_spi_res1, + .probe_timing = TIMING_ZERO, + .block_erasers = + { +@@ -10442,7 +10442,7 @@ const struct flashchip flashchips[] = { + }, + .printlock = spi_prettyprint_status_register_bp2_srwd, + .unlock = spi_disable_blockprotect, +- .write = spi_chip_write_256, ++ .write = spi_chip_write_1, + .read = spi_chip_read, /* Fast read (0x0B), dual I/O supported */ + .voltage = {2700, 3600}, + }, +@@ -12735,12 +12735,12 @@ const struct flashchip flashchips[] = { + .name = "SST25VF016B", + .bustype = BUS_SPI, + .manufacture_id = SST_ID, +- .model_id = SST_SST25VF016B, ++ .model_id = 0x41, + .total_size = 2048, + .page_size = 256, + .feature_bits = FEATURE_WRSR_EITHER, + .tested = TEST_OK_PREW, +- .probe = probe_spi_rdid, ++ .probe = probe_spi_res2, + .probe_timing = TIMING_ZERO, + .block_erasers = + { +@@ -12763,7 +12763,7 @@ const struct flashchip flashchips[] = { + }, + .printlock = spi_prettyprint_status_register_sst25vf016, + .unlock = spi_disable_blockprotect, +- .write = spi_aai_write, ++ .write = spi_chip_write_1, + .read = spi_chip_read, + .voltage = {2700, 3600}, + }, +-- +1.9.1 + |