Most files in the tree seem to have ended up including this,
and *quite* needlessly ... only code implementing or using
downloadable algorithms actually needs these declarations.

So take it out of the header files which included it, and put
it in files which use it ... reduce needless interdependencies.

Also: "algorithm.h" doesn't need to include "types.h" again;
it already comes from a different header.
---
 src/flash/aduc702x.c       |    1 +
 src/flash/arm_nandio.c     |    5 +++--
 src/flash/cfi.c            |    1 +
 src/flash/ecos.c           |    1 +
 src/flash/lpc2000.c        |    1 +
 src/flash/lpc2900.c        |    1 +
 src/flash/stellaris.c      |    1 +
 src/flash/stm32x.c         |    1 +
 src/flash/str7x.c          |    1 +
 src/flash/str9x.c          |    1 +
 src/target/algorithm.h     |    2 --
 src/target/arm11.c         |    1 +
 src/target/arm7_9_common.c |    1 +
 src/target/armv4_5.c       |    1 +
 src/target/armv7m.c        |    1 +
 src/target/target.h        |    3 ++-
 16 files changed, 18 insertions(+), 5 deletions(-)

--- a/src/flash/aduc702x.c
+++ b/src/flash/aduc702x.c
@@ -27,6 +27,7 @@
 #include "armv4_5.h"
 #include "binarybuffer.h"
 #include "time_support.h"
+#include "algorithm.h"
 
 
 static int aduc702x_build_sector_list(struct flash_bank *bank);
--- a/src/flash/arm_nandio.c
+++ b/src/flash/arm_nandio.c
@@ -26,6 +26,7 @@
 
 #include "arm_nandio.h"
 #include "armv4_5.h"
+#include "algorithm.h"
 
 
 /*
@@ -43,8 +44,8 @@ int arm_nandwrite(struct arm_nand_data *
 {
        struct target           *target = nand->target;
        struct armv4_5_algorithm        algo;
-       struct arm      *armv4_5 = target->arch_info;
-       struct reg_param                reg_params[3];
+       struct arm              *armv4_5 = target->arch_info;
+       struct reg_param        reg_params[3];
        uint32_t                target_buf;
        uint32_t                exit = 0;
        int                     retval;
--- a/src/flash/cfi.c
+++ b/src/flash/cfi.c
@@ -27,6 +27,7 @@
 #include "non_cfi.h"
 #include "armv4_5.h"
 #include "binarybuffer.h"
+#include "algorithm.h"
 
 
 #define CFI_MAX_BUS_WIDTH      4
--- a/src/flash/ecos.c
+++ b/src/flash/ecos.c
@@ -24,6 +24,7 @@
 #include "flash.h"
 #include "embeddedice.h"
 #include "image.h"
+#include "algorithm.h"
 
 
 #if 0
--- a/src/flash/lpc2000.c
+++ b/src/flash/lpc2000.c
@@ -29,6 +29,7 @@
 #include "armv4_5.h"
 #include "armv7m.h"
 #include "binarybuffer.h"
+#include "algorithm.h"
 
 
 /* flash programming support for NXP LPC17xx and LPC2xxx devices
--- a/src/flash/lpc2900.c
+++ b/src/flash/lpc2900.c
@@ -27,6 +27,7 @@
 #include "flash.h"
 #include "binarybuffer.h"
 #include "armv4_5.h"
+#include "algorithm.h"
 
 
 /* 1024 bytes */
--- a/src/flash/stellaris.c
+++ b/src/flash/stellaris.c
@@ -31,6 +31,7 @@
 #include "stellaris.h"
 #include "armv7m.h"
 #include "binarybuffer.h"
+#include "algorithm.h"
 
 
 #define DID0_VER(did0) ((did0 >> 28)&0x07)
--- a/src/flash/stm32x.c
+++ b/src/flash/stm32x.c
@@ -27,6 +27,7 @@
 #include "stm32x.h"
 #include "armv7m.h"
 #include "binarybuffer.h"
+#include "algorithm.h"
 
 
 static int stm32x_mass_erase(struct flash_bank *bank);
--- a/src/flash/str7x.c
+++ b/src/flash/str7x.c
@@ -27,6 +27,7 @@
 #include "str7x.h"
 #include "armv4_5.h"
 #include "binarybuffer.h"
+#include "algorithm.h"
 
 
 struct str7x_mem_layout mem_layout_str7bank0[] = {
--- a/src/flash/str9x.c
+++ b/src/flash/str9x.c
@@ -29,6 +29,7 @@
 
 #include "str9x.h"
 #include "arm966e.h"
+#include "algorithm.h"
 
 
 static uint32_t bank1start = 0x00080000;
--- a/src/target/algorithm.h
+++ b/src/target/algorithm.h
@@ -20,8 +20,6 @@
 #ifndef ALGORITHM_H
 #define ALGORITHM_H
 
-#include "types.h"
-
 enum param_direction
 {
        PARAM_IN,
--- a/src/target/arm11.c
+++ b/src/target/arm11.c
@@ -33,6 +33,7 @@
 #include "arm_simulator.h"
 #include "time_support.h"
 #include "target_type.h"
+#include "algorithm.h"
 
 
 #if 0
--- a/src/target/arm7_9_common.c
+++ b/src/target/arm7_9_common.c
@@ -36,6 +36,7 @@
 #include "arm7_9_common.h"
 #include "time_support.h"
 #include "arm_simulator.h"
+#include "algorithm.h"
 
 
 /**
--- a/src/target/armv4_5.c
+++ b/src/target/armv4_5.c
@@ -31,6 +31,7 @@
 #include "breakpoints.h"
 #include "arm_disassembler.h"
 #include "binarybuffer.h"
+#include "algorithm.h"
 
 
 char* armv4_5_core_reg_list[] =
--- a/src/target/armv7m.c
+++ b/src/target/armv7m.c
@@ -36,6 +36,7 @@
 
 #include "breakpoints.h"
 #include "armv7m.h"
+#include "algorithm.h"
 
 #define ARRAY_SIZE(x)  ((int)(sizeof(x)/sizeof((x)[0])))
 
--- a/src/target/target.h
+++ b/src/target/target.h
@@ -28,7 +28,6 @@
 
 #include <stddef.h>
 
-#include "algorithm.h"
 #include "command.h"
 
 struct reg;
@@ -36,6 +35,8 @@ struct trace;
 struct command_context;
 struct breakpoint;
 struct watchpoint;
+struct mem_param;
+struct reg_param;
 
 
 /**
_______________________________________________
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to