1. 26 Apr, 2014 2 commits
  2. 19 Mar, 2014 2 commits
  3. 17 Mar, 2014 1 commit
  4. 14 Mar, 2014 1 commit
  5. 05 Mar, 2014 1 commit
  6. 21 Nov, 2013 1 commit
  7. 29 Oct, 2013 1 commit
    • Stefan Tauner's avatar
      Ensure DMI strings used in dmi_compare() are not NULL · d1045d8b
      Stefan Tauner authored
      
      Previously the external DMI decoder did not allow this to happen because
      all possible pointers were initialized at startup by the output of
      'dmidecode -s ...' which has default values for all supported types.
      
      The now active internal DMI decoder does work differently: it scans the
      complete DMI table once and copies the available strings. Therefore, strings
      that are not set by the firmware are left at their default value of NULL.
      
      A segfault would arise if the following conditions are all true:
       - the firmware sets up a DMI/SMBIOS table which has at least a correct
         checksum, and
       - that table does *not* define at least one of the DMI strings we use
         for matching (as defined by dmi_strings[] in dmi.c), and
       - there exists a board enable whose PCI IDs are matched by the board,
         and which has a DMI string set that ends with a $ anchor, and
       - the user calls the internal programmer of flashrom without the
         optional mainboard parameter.
      
      This was first observed by Gelip on an abit BF6 using the coreboot port
      for the abit BE6-II V2.0.
      The segfault was reproduced by Idwer Vollering on an ASUS F2A85-M with
      the default DMI values of CONFIG_MAINBOARD_SMBIOS_MANUFACTURER etc.
      overwritten and a forged board enable matching his board.
      Idwer also verified that this patch fixes the problem, thanks a lot!
      
      Corresponding to flashrom svn r1763.
      Signed-off-by: default avatarStefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
      Acked-by: default avatarStefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
      d1045d8b
  8. 26 Oct, 2013 1 commit
  9. 25 Oct, 2013 1 commit
    • Stefan Tauner's avatar
      Refactor Intel Chipset Enables · 92d6a861
      Stefan Tauner authored
      
       - Combine enable_flash_ich_4e() and enable_flash_ich_dc() to
         enable_flash_ich_fwh().
       - Remove unjustified (chipset) name parameters from various
         enable_flash_ich* functions.
       - Make Poulsbo and Tunnel Creek use generic enables by refining existing
         functions to work with them, including everything in ichspi.c.
       - Refactor enable_flash_ich_fwh_decode() to be called unconditionally for
         all chipsets.
       - Add support for Intel Atom Centerton (S12x0).
       - Recombine ICH2/3/4/5 to CHIPSET_ICH2345 because we treat them equally
         anyway.
       - Move spibar handling out of ich_init_spi() into enable_flash_ich_spi()
       - Various small cleanups.
      
      Corresponding to flashrom svn r1761.
      Signed-off-by: default avatarStefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
      Acked-by: default avatarStefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
      92d6a861
  10. 21 Oct, 2013 1 commit
  11. 19 Oct, 2013 2 commits
  12. 02 Oct, 2013 5 commits
  13. 23 Sep, 2013 1 commit
  14. 15 Sep, 2013 2 commits
  15. 14 Sep, 2013 4 commits
  16. 13 Sep, 2013 2 commits
  17. 12 Sep, 2013 7 commits
  18. 11 Sep, 2013 2 commits
    • Sean Nelson's avatar
      Add an internal DMI decoder · 4c6d3a4b
      Sean Nelson authored
      
      Previously we had to rely on dmidecode to decode the DMI/SMBIOS table.
      This patch integrates a DMI decoder into flashrom. The old behavior of calling
      dmidecode can be brought back by using CONFIG_INTERNAL_DMI=no.
      
      Significant portions of this patch were taken from dmidecode, hence add its
      authors to the copyright notice (dmidecode is also GPL2+). We do a few things
      differently though. First of all we do more bounds checking to prevent accessing
      unmapped memory. We do not support disovery via EFI (yet), but memory
      scanning only. We handle the chassis-type lock bit correctly which dmidecode
      did not for a long while.
      
      The API to the rest of flashrom remains stable, but the output changes slightly.
      To share as much code as possible (which actually is not much), i have added
      dmi_fill methods that get called in dmi_init. They are reponsible to fill the
      dmi_strings array and setting the is_laptop variable. After it is called, dmi_init
      prints all dmi_strings. Previously the strings were printed in the order they were
      discovered, followed by the chassis-type, which is now output earlier (in dmi_fill).
      
      Because DJGPP does not support strnlen a simple implementation was added
      for it.
      
      This is still only available on x86; actually it is not even compiled in for other
      architectures at all anymore.
      
      Corresponding to flashrom svn r1735.
      Signed-off-by: default avatarSean Nelson <audiohacked@gmail.com>
      Signed-off-by: default avatarStefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
      Tested-by: default avatarMaciej Pijanka <maciej.pijanka@gmail.com>
      Tested-by: default avatarIdwer Vollering <vidwer@gmail.com>
      Acked-by: default avatarStefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
      4c6d3a4b
    • Stefan Tauner's avatar
      DOS refinements · 449abe28
      Stefan Tauner authored
      
      This allows to use the DOS library trees stored in a user-specified directory.
      
      I have mirrored the needed patches, sources and binaries (the latter
      are properly licensed to allow that) in the flashrom wiki, so use those
      URLs instead of the original sources.
      
      Corresponding to flashrom svn r1734.
      Signed-off-by: default avatarStefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
      Acked-by: default avatarStefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
      449abe28
  19. 10 Sep, 2013 1 commit
  20. 30 Aug, 2013 2 commits