Author: hailfinger Date: 2009-05-01 18:34:32 +0200 (Fri, 01 May 2009) New Revision: 452
Modified: trunk/README trunk/flash.h trunk/flashrom.c Log: Fix compilation on Solaris and tell people how to compile flashrom on Solaris, Darwin/Mac OS X and DragonFly BSD.
Thanks to Joerg Schilling and Patrick Georgi for the Solaris part.
Signed-off-by: Carl-Daniel Hailfinger c-d.hailfinger.devel.2006@gmx.net Acked-by: Peter Stuge peter@stuge.se
Modified: trunk/README =================================================================== --- trunk/README 2009-05-01 14:52:50 UTC (rev 451) +++ trunk/README 2009-05-01 16:34:32 UTC (rev 452) @@ -21,7 +21,18 @@ * pciutils-devel / pciutils-dev / libpci-dev * zlib-devel / zlib1g-dev
+To compile on Solaris, use the commands below: +gmake LDFLAGS="-L$pathtolibpci -lpci -lz" CC="gcc -I$pathtopciheaders" CFLAGS=-O2
+To compile on DragonFly BSD, use the commands below: +ln -s /usr/pkg/include/pciutils pci +gmake CFLAGS=-I. LDFLAGS="-L/usr/pkg/lib -lpci -lz" + +To compile and run on Darwin/Mac OS X: +Install DirectIO from coresystems GmbH. +DirectIO is available at http://www.coresystems.de/en/directio + + Usage / Options ---------------
Modified: trunk/flash.h =================================================================== --- trunk/flash.h 2009-05-01 14:52:50 UTC (rev 451) +++ trunk/flash.h 2009-05-01 16:34:32 UTC (rev 452) @@ -30,6 +30,14 @@ #include <stdint.h> #include <stdio.h>
+/* for iopl and outb under Solaris */ +#if defined (__sun) && (defined(__i386) || defined(__amd64)) +#include <strings.h> +#include <sys/sysi86.h> +#include <sys/psw.h> +#include <asm/sunddi.h> +#endif + #if (defined(__MACH__) && defined(__APPLE__)) #define __DARWIN__ #endif @@ -50,6 +58,15 @@ #define off64_t off_t #define lseek64 lseek #endif +#if defined (__sun) && (defined(__i386) || defined(__amd64)) + /* Note different order for outb */ + #define OUTB(x,y) outb(y, x) + #define OUTW(x,y) outw(y, x) + #define OUTL(x,y) outl(y, x) + #define INB inb + #define INW inw + #define INL inl +#else #define OUTB outb #define OUTW outw #define OUTL outl @@ -57,6 +74,7 @@ #define INW inw #define INL inl #endif +#endif
static inline void chip_writeb(uint8_t b, volatile void *addr) {
Modified: trunk/flashrom.c =================================================================== --- trunk/flashrom.c 2009-05-01 14:52:50 UTC (rev 451) +++ trunk/flashrom.c 2009-05-01 16:34:32 UTC (rev 452) @@ -30,13 +30,6 @@ #include <stdlib.h> #include <getopt.h> #include <pci/pci.h> -/* for iopl */ -#if defined (__sun) && (defined(__i386) || defined(__amd64)) -#include <strings.h> -#include <sys/sysi86.h> -#include <sys/psw.h> -#include <asm/sunddi.h> -#endif #include "flash.h"
char *chip_to_probe = NULL;