This is an automated email from Gerrit. "Samuel Obuch <[email protected]>" just uploaded a new patch set to Gerrit, which you can find at https://review.openocd.org/c/openocd/+/9534
-- gerrit commit 5b0d19b37333676569a1df0bd5be39b1aeb65650 Author: Samuel Obuch <[email protected]> Date: Tue Mar 17 21:44:59 2026 +0100 jtag: adapter: move adapter_driver extern declaration to header file Prevents sparse warning: "symbol 'adapter_driver' was not declared. Should it be static?" Change-Id: I2a650ae09e250373132bdfa18f7b2942b970b98e Signed-off-by: Samuel Obuch <[email protected]> diff --git a/src/jtag/adapter.h b/src/jtag/adapter.h index d76ea5e327..6e957cbdc0 100644 --- a/src/jtag/adapter.h +++ b/src/jtag/adapter.h @@ -129,6 +129,8 @@ const char *adapter_gpio_get_name(enum adapter_gpio_config_index idx); */ const struct adapter_gpio_config *adapter_gpio_get_config(void); +extern struct adapter_driver *adapter_driver; + #define ADAPTER_GPIO_NOT_SET UINT_MAX #endif /* OPENOCD_JTAG_ADAPTER_H */ diff --git a/src/jtag/core.c b/src/jtag/core.c index 3261e60796..941d9f3b4c 100644 --- a/src/jtag/core.c +++ b/src/jtag/core.c @@ -115,8 +115,6 @@ struct jtag_event_callback { /* callbacks to inform high-level handlers about JTAG state changes */ static struct jtag_event_callback *jtag_event_callbacks; -extern struct adapter_driver *adapter_driver; - void jtag_set_flush_queue_sleep(int ms) { jtag_flush_queue_sleep = ms; diff --git a/src/jtag/swim.c b/src/jtag/swim.c index 004a9fd4f2..43d655c4c7 100644 --- a/src/jtag/swim.c +++ b/src/jtag/swim.c @@ -12,13 +12,12 @@ #include "config.h" #endif +#include "adapter.h" #include "interface.h" #include "swim.h" #include <helper/command.h> #include <transport/transport.h> -extern struct adapter_driver *adapter_driver; - int swim_system_reset(void) { assert(adapter_driver->swim_ops); diff --git a/src/target/adi_v5_swd.c b/src/target/adi_v5_swd.c index 2d286136a5..57d2d5929c 100644 --- a/src/target/adi_v5_swd.c +++ b/src/target/adi_v5_swd.c @@ -39,6 +39,7 @@ #include <helper/time_support.h> #include <transport/transport.h> +#include <jtag/adapter.h> #include <jtag/interface.h> #include <jtag/swd.h> @@ -722,8 +723,6 @@ static const struct command_registration swd_handlers[] = { static int swd_select(struct command_context *ctx) { - /* FIXME: only place where global 'adapter_driver' is still needed */ - extern struct adapter_driver *adapter_driver; const struct swd_driver *swd = adapter_driver->swd_ops; int retval; diff --git a/src/target/arm_dap.c b/src/target/arm_dap.c index 532f192b7d..07b695623c 100644 --- a/src/target/arm_dap.c +++ b/src/target/arm_dap.c @@ -16,12 +16,11 @@ #include "helper/list.h" #include "helper/command.h" #include "transport/transport.h" +#include "jtag/adapter.h" #include "jtag/interface.h" static OOCD_LIST_HEAD(all_dap); -extern struct adapter_driver *adapter_driver; - /* DAP command support */ struct arm_dap_object { struct list_head lh; diff --git a/src/target/stm8.c b/src/target/stm8.c index 3b5d83ff42..d44dd7f080 100644 --- a/src/target/stm8.c +++ b/src/target/stm8.c @@ -13,6 +13,7 @@ #include <helper/log.h> #include "target.h" #include "target_type.h" +#include "jtag/adapter.h" #include "jtag/interface.h" #include "jtag/jtag.h" #include "jtag/swim.h" @@ -33,7 +34,6 @@ static void stm8_enable_watchpoints(struct target *target); static int stm8_unset_watchpoint(struct target *target, struct watchpoint *watchpoint); static int (*adapter_speed)(int speed); -extern struct adapter_driver *adapter_driver; static const struct { unsigned int id; --
