Just install ar5523.bin into /usr/share/firmware and stop compiling it
in. Differential Review: https://reviews.freebsd.org/D5639
This commit is contained in:
parent
dd923e0c4a
commit
486607d0b6
@ -428,6 +428,8 @@
|
||||
uefisign
|
||||
..
|
||||
..
|
||||
firmware
|
||||
..
|
||||
games
|
||||
fortune
|
||||
..
|
||||
|
@ -28,7 +28,7 @@
|
||||
.\" @(#)hier.7 8.1 (Berkeley) 6/5/93
|
||||
.\" $FreeBSD$
|
||||
.\"
|
||||
.Dd October 2, 2015
|
||||
.Dd March 15, 2016
|
||||
.Dt HIER 7
|
||||
.Os
|
||||
.Sh NAME
|
||||
@ -545,6 +545,8 @@ Chinese translations of documents in /usr/share/doc
|
||||
.Pp
|
||||
.It Pa examples/
|
||||
various examples for users and programmers
|
||||
.It Pa firmware/
|
||||
Firmware images loaded by user land programs
|
||||
.It Pa games/
|
||||
ASCII text files used by various games
|
||||
.It Pa groff_font/
|
||||
|
@ -8024,6 +8024,7 @@ OLD_FILES+=usr/share/examples/libusb20/control.c
|
||||
OLD_FILES+=usr/share/examples/libusb20/util.c
|
||||
OLD_FILES+=usr/share/examples/libusb20/util.h
|
||||
OLD_DIRS+=usr/share/examples/libusb20
|
||||
OLD_FILES+=usr/share/firmware/ar5523.bin
|
||||
OLD_FILES+=usr/share/man/man1/uhsoctl.1.gz
|
||||
OLD_FILES+=usr/share/man/man1/usbhidaction.1.gz
|
||||
OLD_FILES+=usr/share/man/man1/usbhidctl.1.gz
|
||||
|
@ -194,9 +194,7 @@ SUBDIR.${MK_TIMED}+= timed
|
||||
SUBDIR.${MK_TOOLCHAIN}+= config
|
||||
SUBDIR.${MK_TOOLCHAIN}+= crunch
|
||||
SUBDIR.${MK_UNBOUND}+= unbound
|
||||
.if !(${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} >= 50200)
|
||||
SUBDIR.${MK_USB}+= uathload
|
||||
.endif
|
||||
SUBDIR.${MK_USB}+= uhsoctl
|
||||
SUBDIR.${MK_USB}+= usbconfig
|
||||
SUBDIR.${MK_USB}+= usbdump
|
||||
|
@ -3,28 +3,14 @@
|
||||
PROG= uathload
|
||||
MAN= uathload.8
|
||||
|
||||
SRCS= uathload.c ar5523.bin
|
||||
SRCS= uathload.c
|
||||
FILES= ar5523.bin
|
||||
FILESDIR= ${SHAREDIR}/firmware
|
||||
FILESMODE= 444
|
||||
|
||||
CLEANFILES= ar5523.bin
|
||||
|
||||
# It's hard to tag ar5523.o with the proper gnu note saying that it has a
|
||||
# non-executable stack, so ld doesn't properly mark his executable as
|
||||
# not having an executable stack. Mark it explicitly, but only for those
|
||||
# platforms that support his feature (otherwise signals don't work).
|
||||
# Note: Newer versions of ld than is in the tree ignore -z.
|
||||
.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "powerpc64"
|
||||
LDFLAGS+= -Wl,-z,noexecstack
|
||||
.endif
|
||||
|
||||
# The conversion from .bin to .o doesn't always produce a pedantically correct
|
||||
# .o's. And it doesn't matter, so turn off the mismatch warnings since it is
|
||||
# pure data. On mips64 here's no easy way to produce a proper .o.
|
||||
LDFLAGS+= -Wl,--no-warn-mismatch
|
||||
|
||||
ar5523.bin: ${.CURDIR}/../../sys/contrib/dev/uath/ar5523.bin.uu
|
||||
uudecode -p ${.CURDIR}/../../sys/contrib/dev/uath/ar5523.bin.uu > ${.TARGET}
|
||||
|
||||
ar5523.o: ar5523.bin
|
||||
${LD} -b binary -d -warn-common -r -d -o ${.TARGET} ar5523.bin
|
||||
|
||||
.include <bsd.prog.mk>
|
||||
|
@ -140,23 +140,19 @@ main(int argc, char *argv[])
|
||||
if (argc > 1)
|
||||
usage();
|
||||
|
||||
if (argc == 1) {
|
||||
if (argc == 1)
|
||||
fwname = argv[0];
|
||||
fw = open(fwname, O_RDONLY, 0);
|
||||
if (fw < 0)
|
||||
err(-1, "open(%s)", fwname);
|
||||
if (fstat(fw, &sb) < 0)
|
||||
err(-1, "fstat(%s)", fwname);
|
||||
txdata = mmap(NULL, sb.st_size, PROT_READ, MAP_PRIVATE, fw, 0);
|
||||
if (txdata == MAP_FAILED)
|
||||
err(-1, "mmap(%s)", fwname);
|
||||
len = sb.st_size;
|
||||
} else {
|
||||
fwname = "ar5523.bin (builtin)";
|
||||
fw = -1;
|
||||
txdata = &_binary_ar5523_bin_start;
|
||||
len = &_binary_ar5523_bin_end - &_binary_ar5523_bin_start;
|
||||
}
|
||||
else
|
||||
fwname = "/usr/share/firmware/ar5523.bin";
|
||||
fw = open(fwname, O_RDONLY, 0);
|
||||
if (fw < 0)
|
||||
err(-1, "open(%s)", fwname);
|
||||
if (fstat(fw, &sb) < 0)
|
||||
err(-1, "fstat(%s)", fwname);
|
||||
txdata = mmap(NULL, sb.st_size, PROT_READ, MAP_PRIVATE, fw, 0);
|
||||
if (txdata == MAP_FAILED)
|
||||
err(-1, "mmap(%s)", fwname);
|
||||
len = sb.st_size;
|
||||
/* XXX verify device is an AR5005 part */
|
||||
if (getdevname(devname, msgdev, datadev))
|
||||
err(-1, "getdevname error");
|
||||
|
Loading…
Reference in New Issue
Block a user