From c3f1c7507a4405e971042faffd2de53bdd3d0974 Mon Sep 17 00:00:00 2001 From: Thomas Heijligen Date: Mon, 15 May 2023 22:18:08 +0200 Subject: [PATCH] doc: Add build instructions for NI-845x on Windows Because this patch adds a new footprint level, Sphinx incorrectly interprets the 3 asterisks (***) as the start of a bold block, rather than a footnote marker. To work around this, use sphinx built-in footprints. Change-Id: I97ad08632f35aa241b3d19d9ce7711146e3f1f4a Signed-off-by: Thomas Heijligen Signed-off-by: Peter Marheine Signed-off-by: Alexander Goncharov Reviewed-on: https://review.coreboot.org/c/flashrom/+/75270 Reviewed-by: Anastasia Klimchuk Tested-by: build bot (Jenkins) --- doc/dev_guide/building_from_source.rst | 23 +++++++++++++++-------- doc/dev_guide/building_with_make.rst | 10 ++++++++++ 2 files changed, 25 insertions(+), 8 deletions(-) diff --git a/doc/dev_guide/building_from_source.rst b/doc/dev_guide/building_from_source.rst index 7503e9ee5..64250dd09 100644 --- a/doc/dev_guide/building_from_source.rst +++ b/doc/dev_guide/building_from_source.rst @@ -13,15 +13,17 @@ You're going to need the following tools to get started: And the following dependencies: -* cmocka* -* linux-headers** -* libpci** -* libusb1** -* libftdi1** -* libjaylink** +* cmocka [#b1]_ +* linux-headers [#b2]_ +* libpci [#b2]_ +* libusb1 [#b2]_ +* libftdi1 [#b2]_ +* libjaylink [#b2]_ +* NI-845x driver & library package [#b3]_ -| \* optional, for building unit testing -| \** optional, depending on the selected programmer +.. [#b1] | optional, for building unit testing +.. [#b2] | optional, depending on the selected programmer +.. [#b3] | optional, proprietary and Windows only. (See Windows build instructions) If you are cross compiling, install the dependencies for your target. @@ -34,6 +36,8 @@ TL;DR meson install -C builddir +.. _installing-dependencies: + Installing dependencies ----------------------- @@ -85,6 +89,9 @@ Installing dependencies Install `MSYS2 `_ and ensure it is `fully updated `_. * ``libpci`` is not available through the package manager and pci based programmer are not supported on Windows. + * ``ni845x_spi`` is only available with the proprietary library from National Instruments. Download and install the driver + from `ni.com `_ and build flashrom + for **32-bit**. Add ``-Dprogrammer=ni845x_spi`` to your meson configuration. In the MINGW64 shell run:: diff --git a/doc/dev_guide/building_with_make.rst b/doc/dev_guide/building_with_make.rst index 90a3e461a..710aad3d1 100644 --- a/doc/dev_guide/building_with_make.rst +++ b/doc/dev_guide/building_with_make.rst @@ -21,6 +21,7 @@ Build instructions * libusb (if you want FT2232, Dediprog or USB-Blaster support) * libftdi (if you want FT2232 or USB-Blaster support) * libjaylink (if you want support for SEGGER J-Link and compatible devices) + * NI-845x driver & library package (if you want support for NI-845x devices; uses a proprietary driver) **Linux et al:** @@ -63,6 +64,15 @@ Build instructions Install DirectHW from coresystems GmbH. DirectHW is available at https://www.coreboot.org/DirectHW . +**To compile on Windows:** + +Install MSYS tools (and the NI-845x drivers if desired) as described in +:ref:`installing-dependencies`. + +To build with support for NI-845x:: + + make HAS_LIB_NI845X=yes CONFIG_NI845X_SPI=yes + **To cross-compile on Linux for DOS:** Get packages of the DJGPP cross compiler and install them: