Commit 6be74111 authored by Carl-Daniel Hailfinger's avatar Carl-Daniel Hailfinger
Browse files

Allow to compile out serprog completely


If CONFIG_SERPROG is not set, no stubs and no data of serprog will
remain.

Side benefit: This kills a few dozen lines of code.

r678, r679 and r680 made this possible. Once "Only list available
programers in usage()" is committed, even the usage message will be
adjusted automatically.

Corresponding to flashrom svn r681.
Signed-off-by: default avatarCarl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: default avatarStefan Reinauer <stepan@coresystems.de>
parent 37fc469c
......@@ -49,7 +49,7 @@ OBJS = chipset_enable.o board_enable.o udelay.o jedec.o stm50flw0x0x.o \
sst49lfxxxc.o sst_fwhub.o layout.o cbtable.o flashchips.o physmap.o \
flashrom.o w39v080fa.o sharplhf00l04.o w29ee011.o spi.o it87spi.o \
ichspi.o w39v040c.o sb600spi.o wbsio_spi.o m29f002.o internal.o \
dummyflasher.o pcidev.o nic3com.o satasii.o ft2232_spi.o serprog.o \
dummyflasher.o pcidev.o nic3com.o satasii.o ft2232_spi.o \
print.o
all: pciutils features dep $(PROGRAM)
......@@ -64,14 +64,20 @@ VERSION := 0.9.0-r$(SVNVERSION)
SVNDEF := -D'FLASHROM_VERSION="$(VERSION)"'
$(PROGRAM): $(OBJS)
$(CC) $(LDFLAGS) -o $(PROGRAM) $(OBJS) $(LIBS) $(FEATURE_LIBS)
FEATURE_CFLAGS = $(shell LC_ALL=C grep -q "FTDISUPPORT := yes" .features && printf "%s" "-D'FT2232_SPI_SUPPORT=1'")
# Always enable serprog for now. Needs to be disabled on Windows.
CONFIG_SERPROG = yes
ifeq ($(CONFIG_SERPROG), yes)
FEATURE_CFLAGS += -D'SERPROG_SUPPORT=1'
OBJS += serprog.o
endif
FEATURE_LIBS = $(shell LC_ALL=C grep -q "FTDISUPPORT := yes" .features && printf "%s" "-lftdi")
FEATURE_CFLAGS += $(shell LC_ALL=C grep -q "FTDISUPPORT := yes" .features && printf "%s" "-D'FT2232_SPI_SUPPORT=1'")
FEATURE_LIBS += $(shell LC_ALL=C grep -q "FTDISUPPORT := yes" .features && printf "%s" "-lftdi")
$(PROGRAM): $(OBJS)
$(CC) $(LDFLAGS) -o $(PROGRAM) $(OBJS) $(LIBS) $(FEATURE_LIBS)
# TAROPTIONS reduces information leakage from the packager's system.
# If other tar programs support command line arguments for setting uid/gid of
......
......@@ -87,7 +87,9 @@ enum programmer {
PROGRAMMER_SATASII,
PROGRAMMER_IT87SPI,
PROGRAMMER_FT2232SPI,
#if SERPROG_SUPPORT == 1
PROGRAMMER_SERPROG,
#endif
PROGRAMMER_INVALID /* This must always be the last entry. */
};
......
......@@ -139,6 +139,7 @@ const struct programmer_entry programmer_table[] = {
.delay = internal_delay,
},
#if SERPROG_SUPPORT == 1
{
.name = "serprog",
.init = serprog_init,
......@@ -155,6 +156,7 @@ const struct programmer_entry programmer_table[] = {
.chip_writen = fallback_chip_writen,
.delay = serprog_delay,
},
#endif
{}, /* This entry corresponds to PROGRAMMER_INVALID. */
};
......
......@@ -23,9 +23,6 @@
#include <stdlib.h>
#include <unistd.h>
#include "flash.h"
#if SERPROG_SUPPORT == 1
#include <string.h>
#include <ctype.h>
#include <fcntl.h>
......@@ -774,42 +771,3 @@ void serprog_delay(int delay)
sp_opbuf_usage += 5;
sp_prev_was_write = 0;
}
#else
int serprog_init(void)
{
fprintf(stderr, "Serial programmer support was not compiled in\n");
exit(1);
}
int serprog_shutdown(void)
{
fprintf(stderr, "Serial programmer support was not compiled in\n");
exit(1);
}
void serprog_chip_writeb(uint8_t val, chipaddr addr)
{
fprintf(stderr, "Serial programmer support was not compiled in\n");
exit(1);
}
uint8_t serprog_chip_readb(const chipaddr addr)
{
fprintf(stderr, "Serial programmer support was not compiled in\n");
exit(1);
}
void serprog_chip_readn(uint8_t *buf, const chipaddr addr, size_t len)
{
fprintf(stderr, "Serial programmer support was not compiled in\n");
exit(1);
}
void serprog_delay(int delay)
{
fprintf(stderr, "Serial programmer support was not compiled in\n");
exit(1);
}
#endif
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment