From 19b8c645402463b2303200cedda6d84f3c6c6582 Mon Sep 17 00:00:00 2001 From: Uwe Bonnes Date: Sun, 29 Jan 2012 14:21:26 +0100 Subject: [PATCH 1/2] Give a different error when writing to flash or ram --- flash/main.c | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/flash/main.c b/flash/main.c index 387a335..f838d92 100644 --- a/flash/main.c +++ b/flash/main.c @@ -126,17 +126,23 @@ int main(int ac, char** av) if (o.cmd == DO_WRITE) /* write */ { if ((o.addr >= sl->flash_base) && - (o.addr < sl->flash_base + sl->flash_size)) + (o.addr < sl->flash_base + sl->flash_size)) { err = stlink_fwrite_flash(sl, o.filename, o.addr); - else if ((o.addr >= sl->sram_base) && + if (err == -1) + { + printf("stlink_fwrite_flash() == -1\n"); + goto on_error; + } + } + else if ((o.addr >= sl->sram_base) && (o.addr < sl->sram_base + sl->sram_size)) err = stlink_fwrite_sram(sl, o.filename, o.addr); - if (err == -1) - { - printf("stlink_fwrite_flash() == -1\n"); - goto on_error; - } - } + if (err == -1) + { + printf("stlink_sram_flash() == -1\n"); + goto on_error; + } + } else if (o.cmd == DO_ERASE) { err = stlink_erase_flash_mass(sl); From 5e5d1fa747efd4c913fc9b64414d33a1586c99a3 Mon Sep 17 00:00:00 2001 From: Daniel O'Connor Date: Tue, 31 Jan 2012 16:49:45 +1030 Subject: [PATCH 2/2] Use pkg-config to find libusb CFLAGS and LDFLAGS. --- Makefile | 6 +++++- flash/Makefile | 6 +++++- gdbserver/Makefile | 6 +++++- src/stlink-sg.h | 2 +- src/stlink-usb.c | 2 +- src/stlink-usb.h | 2 +- 6 files changed, 18 insertions(+), 6 deletions(-) diff --git a/Makefile b/Makefile index 6bf0232..4bb0608 100644 --- a/Makefile +++ b/Makefile @@ -5,7 +5,11 @@ VPATH=src SOURCES_LIB=stlink-common.c stlink-usb.c stlink-sg.c uglylogging.c OBJS_LIB=$(SOURCES_LIB:.c=.o) TEST_PROGRAMS=test_usb test_sg -LDFLAGS=-L. -lstlink -lusb-1.0 +LDFLAGS=-L. -lstlink + +# libusb location +LDFLAGS+=`pkg-config --libs libusb-1.0` +CFLAGS+=`pkg-config --cflags libusb-1.0` CFLAGS+=-g CFLAGS+=-DDEBUG=1 diff --git a/flash/Makefile b/flash/Makefile index cb7dcd2..4914587 100644 --- a/flash/Makefile +++ b/flash/Makefile @@ -4,7 +4,11 @@ CFLAGS+=-std=gnu99 CFLAGS+=-Wall -Wextra CFLAGS+=-I../src -LDFLAGS=-L.. -lstlink -lusb-1.0 +LDFLAGS=-L.. -lstlink + +# libusb location +LDFLAGS+=`pkg-config --libs libusb-1.0` +CFLAGS+=`pkg-config --cflags libusb-1.0` SRCS=main.c OBJS=$(SRCS:.c=.o) diff --git a/gdbserver/Makefile b/gdbserver/Makefile index 8cca572..bd5c73d 100644 --- a/gdbserver/Makefile +++ b/gdbserver/Makefile @@ -2,7 +2,11 @@ PRG := st-util OBJS = gdb-remote.o gdb-server.o CFLAGS+=-g -Wall -Werror -std=gnu99 -I../src -LDFLAGS=-L.. -lstlink -lusb-1.0 +LDFLAGS=-L.. -lstlink + +# libusb location +LDFLAGS+=`pkg-config --libs libusb-1.0` +CFLAGS+=`pkg-config --cflags libusb-1.0` all: $(PRG) diff --git a/src/stlink-sg.h b/src/stlink-sg.h index d4d7723..beecac3 100644 --- a/src/stlink-sg.h +++ b/src/stlink-sg.h @@ -12,7 +12,7 @@ extern "C" { #endif -#include +#include #include "stlink-common.h" // device access diff --git a/src/stlink-usb.c b/src/stlink-usb.c index 65d92ec..2a82b88 100644 --- a/src/stlink-usb.c +++ b/src/stlink-usb.c @@ -4,7 +4,7 @@ #include #include #include -#include +#include #include "stlink-common.h" #include "stlink-usb.h" diff --git a/src/stlink-usb.h b/src/stlink-usb.h index 2f3b8cc..63b5369 100644 --- a/src/stlink-usb.h +++ b/src/stlink-usb.h @@ -12,7 +12,7 @@ extern "C" { #endif -#include +#include #include "stlink-common.h" #define STLINK_SG_SIZE 31