mirror of
https://review.coreboot.org/flashrom.git
synced 2025-04-26 22:52:34 +02:00
Support Debian/kFreeBSD
Corresponding to flashrom svn r1507. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Tested-by: Robert Millan <rmh@debian.org> Tested-by: Uwe Hermann <uwe@hermann-uwe.de> Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
This commit is contained in:
parent
2d2512453b
commit
a5eecdab44
@ -40,7 +40,7 @@ static inline void sync_primitive(void)
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(__FreeBSD__) || defined(__DragonFly__)
|
#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__)
|
||||||
int io_fd;
|
int io_fd;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -52,7 +52,7 @@ void get_io_perms(void)
|
|||||||
#else
|
#else
|
||||||
#if defined (__sun) && (defined(__i386) || defined(__amd64))
|
#if defined (__sun) && (defined(__i386) || defined(__amd64))
|
||||||
if (sysi86(SI86V86, V86SC_IOPL, PS_IOPL) != 0) {
|
if (sysi86(SI86V86, V86SC_IOPL, PS_IOPL) != 0) {
|
||||||
#elif defined(__FreeBSD__) || defined (__DragonFly__)
|
#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined (__DragonFly__)
|
||||||
if ((io_fd = open("/dev/io", O_RDWR)) < 0) {
|
if ((io_fd = open("/dev/io", O_RDWR)) < 0) {
|
||||||
#else
|
#else
|
||||||
if (iopl(3) != 0) {
|
if (iopl(3) != 0) {
|
||||||
@ -71,7 +71,7 @@ void get_io_perms(void)
|
|||||||
|
|
||||||
void release_io_perms(void)
|
void release_io_perms(void)
|
||||||
{
|
{
|
||||||
#if defined(__FreeBSD__) || defined(__DragonFly__)
|
#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__)
|
||||||
close(io_fd);
|
close(io_fd);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
10
hwaccess.h
10
hwaccess.h
@ -189,6 +189,10 @@ cpu_to_be(64)
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#if defined(__FreeBSD__) || defined(__DragonFly__)
|
#if defined(__FreeBSD__) || defined(__DragonFly__)
|
||||||
|
/* Note that Debian/kFreeBSD (FreeBSD kernel with glibc) has conflicting
|
||||||
|
* out[bwl] definitions in machine/cpufunc.h and sys/io.h at least in some
|
||||||
|
* versions. Use machine/cpufunc.h only for plain FreeBSD/DragonFlyBSD.
|
||||||
|
*/
|
||||||
#include <machine/cpufunc.h>
|
#include <machine/cpufunc.h>
|
||||||
#define off64_t off_t
|
#define off64_t off_t
|
||||||
#define lseek64 lseek
|
#define lseek64 lseek
|
||||||
@ -228,7 +232,7 @@ cpu_to_be(64)
|
|||||||
#define INL inportl
|
#define INL inportl
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
/* This is the usual glibc interface. */
|
||||||
#define OUTB outb
|
#define OUTB outb
|
||||||
#define OUTW outw
|
#define OUTW outw
|
||||||
#define OUTL outl
|
#define OUTL outl
|
||||||
@ -299,12 +303,12 @@ static inline uint32_t inl(uint16_t port)
|
|||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if !defined(__DARWIN__) && !defined(__FreeBSD__) && !defined(__DragonFly__) && !defined(__LIBPAYLOAD__)
|
#if !defined(__DARWIN__) && !defined(__FreeBSD__) && !defined(__FreeBSD_kernel__) && !defined(__DragonFly__) && !defined(__LIBPAYLOAD__)
|
||||||
typedef struct { uint32_t hi, lo; } msr_t;
|
typedef struct { uint32_t hi, lo; } msr_t;
|
||||||
msr_t rdmsr(int addr);
|
msr_t rdmsr(int addr);
|
||||||
int wrmsr(int addr, msr_t msr);
|
int wrmsr(int addr, msr_t msr);
|
||||||
#endif
|
#endif
|
||||||
#if defined(__FreeBSD__) || defined(__DragonFly__)
|
#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__)
|
||||||
/* FreeBSD already has conflicting definitions for wrmsr/rdmsr. */
|
/* FreeBSD already has conflicting definitions for wrmsr/rdmsr. */
|
||||||
#undef rdmsr
|
#undef rdmsr
|
||||||
#undef wrmsr
|
#undef wrmsr
|
||||||
|
3
os.h
3
os.h
@ -30,6 +30,9 @@
|
|||||||
// FreeBSD
|
// FreeBSD
|
||||||
#elif defined(__FreeBSD__)
|
#elif defined(__FreeBSD__)
|
||||||
#define __FLASHROM_OS__ "FreeBSD"
|
#define __FLASHROM_OS__ "FreeBSD"
|
||||||
|
// FreeBSD with glibc-based userspace (e.g. Debian/kFreeBSD)
|
||||||
|
#elif defined(__FreeBSD_kernel__) && defined(__GLIBC__)
|
||||||
|
#define __FLASHROM_OS__ "FreeBSD-glibc"
|
||||||
// DragonFlyBSD
|
// DragonFlyBSD
|
||||||
#elif defined(__DragonFly__)
|
#elif defined(__DragonFly__)
|
||||||
#define __FLASHROM_OS__ "DragonFlyBSD"
|
#define __FLASHROM_OS__ "DragonFlyBSD"
|
||||||
|
@ -382,7 +382,7 @@ void cleanup_cpu_msr(void)
|
|||||||
fd_msr = -1;
|
fd_msr = -1;
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
#if defined(__FreeBSD__) || defined(__DragonFly__)
|
#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__)
|
||||||
#include <sys/ioctl.h>
|
#include <sys/ioctl.h>
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user