From b6d590af3f28f1737ff681ed0ed94d812878962c Mon Sep 17 00:00:00 2001 From: Patrick Williams Date: Tue, 26 Oct 2021 06:47:53 -0500 Subject: meta-xilinx: remove subtree The meta-xilinx layer was used for a now-deleted EVB. Neither the EVB nor the meta-xilinx layer have been updated for the Yocto override syntax change and the meta-xilinx still doesn't have a hardknott or honister branch (or corresponding support). I've asked the Xilinx maintainer back in May on when a hardknott version would be supported and I was told "about a month from now". I followed up in August and was told "work is in progress". As of today there are still zero commits in meta-xilinx since January 2021. As such, I do not believe this layer is well-maintained and we have no specific use for it anymore. Remove it until someone finds a good reason to include it and the upstream shows signs of life. Signed-off-by: Patrick Williams Change-Id: Id14ea55db2ac2779edf42e63cb57ad7d25172ad5 --- ...053-gdb-Fix-microblaze-target-compilation.patch | 288 --------------------- 1 file changed, 288 deletions(-) delete mode 100644 meta-xilinx/meta-microblaze/recipes-devtools/binutils/binutils/0053-gdb-Fix-microblaze-target-compilation.patch (limited to 'meta-xilinx/meta-microblaze/recipes-devtools/binutils/binutils/0053-gdb-Fix-microblaze-target-compilation.patch') diff --git a/meta-xilinx/meta-microblaze/recipes-devtools/binutils/binutils/0053-gdb-Fix-microblaze-target-compilation.patch b/meta-xilinx/meta-microblaze/recipes-devtools/binutils/binutils/0053-gdb-Fix-microblaze-target-compilation.patch deleted file mode 100644 index af0e32688..000000000 --- a/meta-xilinx/meta-microblaze/recipes-devtools/binutils/binutils/0053-gdb-Fix-microblaze-target-compilation.patch +++ /dev/null @@ -1,288 +0,0 @@ -From efa3750ffda1ae16caf071b8b8ea31f752a3324a Mon Sep 17 00:00:00 2001 -From: Mark Hatle -Date: Mon, 7 Dec 2020 12:03:25 -0600 -Subject: [PATCH] gdb: Fix microblaze target compilation - -Add microblaze-linux-nat.c to configure.nat - -Transition microblaze-linux-nat.c to use the new gdb C++ style functions. - -Signed-off-by: Mark Hatle ---- - gdb/configure.nat | 5 ++ - gdb/microblaze-linux-nat.c | 96 ++++++++++++++------------------------ - gdb/microblaze-tdep.h | 3 ++ - 3 files changed, 43 insertions(+), 61 deletions(-) - -diff --git a/gdb/configure.nat b/gdb/configure.nat -index 6ea2583495..1fba80f6c9 100644 ---- a/gdb/configure.nat -+++ b/gdb/configure.nat -@@ -261,6 +261,11 @@ case ${gdb_host} in - # Host: Motorola m68k running GNU/Linux. - NATDEPFILES="${NATDEPFILES} m68k-linux-nat.o" - ;; -+ microblaze) -+ # Host: Microblaze running GNU/Linux. -+ NATDEPFILES="${NATDEPFILES} microblaze-linux-nat.o" -+ NAT_CDEPS= -+ ;; - mips) - # Host: Linux/MIPS - NATDEPFILES="${NATDEPFILES} linux-nat-trad.o \ -diff --git a/gdb/microblaze-linux-nat.c b/gdb/microblaze-linux-nat.c -index e9b8c9c522..bac4697e1e 100644 ---- a/gdb/microblaze-linux-nat.c -+++ b/gdb/microblaze-linux-nat.c -@@ -36,13 +36,14 @@ - #include "dwarf2-frame.h" - #include "osabi.h" - --#include "gdb_assert.h" --#include "gdb_string.h" -+#include "gdbsupport/gdb_assert.h" -+#include - #include "target-descriptions.h" - #include "opcodes/microblaze-opcm.h" - #include "opcodes/microblaze-dis.h" - - #include "linux-nat.h" -+#include "linux-tdep.h" - #include "target-descriptions.h" - - #include -@@ -61,22 +62,17 @@ - /* Defines ps_err_e, struct ps_prochandle. */ - #include "gdb_proc_service.h" - --/* On GNU/Linux, threads are implemented as pseudo-processes, in which -- case we may be tracing more than one process at a time. In that -- case, inferior_ptid will contain the main process ID and the -- individual thread (process) ID. get_thread_id () is used to get -- the thread id if it's available, and the process id otherwise. */ -- --int --get_thread_id (ptid_t ptid) -+class microblaze_linux_nat_target final : public linux_nat_target - { -- int tid = TIDGET (ptid); -- if (0 == tid) -- tid = PIDGET (ptid); -- return tid; --} -+public: -+ /* Add our register access methods. */ -+ void fetch_registers (struct regcache *, int) override; -+ void store_registers (struct regcache *, int) override; -+ -+ const struct target_desc *read_description () override; -+}; - --#define GET_THREAD_ID(PTID) get_thread_id (PTID) -+static microblaze_linux_nat_target the_microblaze_linux_nat_target; - - /* Non-zero if our kernel may support the PTRACE_GETREGS and - PTRACE_SETREGS requests, for reading and writing the -@@ -88,7 +84,6 @@ static int - microblaze_register_u_addr (struct gdbarch *gdbarch, int regno) - { - int u_addr = -1; -- struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); - /* NOTE: cagney/2003-11-25: This is the word size used by the ptrace - interface, and not the wordsize of the program's ABI. */ - int wordsize = sizeof (long); -@@ -105,18 +100,16 @@ microblaze_register_u_addr (struct gdbarch *gdbarch, int regno) - static void - fetch_register (struct regcache *regcache, int tid, int regno) - { -- struct gdbarch *gdbarch = get_regcache_arch (regcache); -- struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); -+ struct gdbarch *gdbarch = regcache->arch (); - /* This isn't really an address. But ptrace thinks of it as one. */ - CORE_ADDR regaddr = microblaze_register_u_addr (gdbarch, regno); - int bytes_transferred; -- unsigned int offset; /* Offset of registers within the u area. */ -- char buf[MAX_REGISTER_SIZE]; -+ char buf[MICROBLAZE_MAX_REGISTER_SIZE]; - - if (regaddr == -1) - { - memset (buf, '\0', register_size (gdbarch, regno)); /* Supply zeroes */ -- regcache_raw_supply (regcache, regno, buf); -+ regcache->raw_supply (regno, buf); - return; - } - -@@ -149,14 +142,14 @@ fetch_register (struct regcache *regcache, int tid, int regno) - { - /* Little-endian values are always found at the left end of the - bytes transferred. */ -- regcache_raw_supply (regcache, regno, buf); -+ regcache->raw_supply (regno, buf); - } - else if (gdbarch_byte_order (gdbarch) == BFD_ENDIAN_BIG) - { - /* Big-endian values are found at the right end of the bytes - transferred. */ - size_t padding = (bytes_transferred - register_size (gdbarch, regno)); -- regcache_raw_supply (regcache, regno, buf + padding); -+ regcache->raw_supply (regno, buf + padding); - } - else - internal_error (__FILE__, __LINE__, -@@ -175,8 +168,6 @@ fetch_register (struct regcache *regcache, int tid, int regno) - static int - fetch_all_gp_regs (struct regcache *regcache, int tid) - { -- struct gdbarch *gdbarch = get_regcache_arch (regcache); -- struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); - gdb_gregset_t gregset; - - if (ptrace (PTRACE_GETREGS, tid, 0, (void *) &gregset) < 0) -@@ -204,8 +195,6 @@ fetch_all_gp_regs (struct regcache *regcache, int tid) - static void - fetch_gp_regs (struct regcache *regcache, int tid) - { -- struct gdbarch *gdbarch = get_regcache_arch (regcache); -- struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); - int i; - - if (have_ptrace_getsetregs) -@@ -223,13 +212,12 @@ fetch_gp_regs (struct regcache *regcache, int tid) - static void - store_register (const struct regcache *regcache, int tid, int regno) - { -- struct gdbarch *gdbarch = get_regcache_arch (regcache); -- struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); -+ struct gdbarch *gdbarch = regcache->arch (); - /* This isn't really an address. But ptrace thinks of it as one. */ - CORE_ADDR regaddr = microblaze_register_u_addr (gdbarch, regno); - int i; - size_t bytes_to_transfer; -- char buf[MAX_REGISTER_SIZE]; -+ char buf[MICROBLAZE_MAX_REGISTER_SIZE]; - - if (regaddr == -1) - return; -@@ -242,13 +230,13 @@ store_register (const struct regcache *regcache, int tid, int regno) - if (gdbarch_byte_order (gdbarch) == BFD_ENDIAN_LITTLE) - { - /* Little-endian values always sit at the left end of the buffer. */ -- regcache_raw_collect (regcache, regno, buf); -+ regcache->raw_collect (regno, buf); - } - else if (gdbarch_byte_order (gdbarch) == BFD_ENDIAN_BIG) - { - /* Big-endian values sit at the right end of the buffer. */ - size_t padding = (bytes_to_transfer - register_size (gdbarch, regno)); -- regcache_raw_collect (regcache, regno, buf + padding); -+ regcache->raw_collect (regno, buf + padding); - } - - for (i = 0; i < bytes_to_transfer; i += sizeof (long)) -@@ -281,8 +269,6 @@ store_register (const struct regcache *regcache, int tid, int regno) - static int - store_all_gp_regs (const struct regcache *regcache, int tid, int regno) - { -- struct gdbarch *gdbarch = get_regcache_arch (regcache); -- struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); - gdb_gregset_t gregset; - - if (ptrace (PTRACE_GETREGS, tid, 0, (void *) &gregset) < 0) -@@ -319,8 +305,6 @@ store_all_gp_regs (const struct regcache *regcache, int tid, int regno) - static void - store_gp_regs (const struct regcache *regcache, int tid, int regno) - { -- struct gdbarch *gdbarch = get_regcache_arch (regcache); -- struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); - int i; - - if (have_ptrace_getsetregs) -@@ -339,12 +323,12 @@ store_gp_regs (const struct regcache *regcache, int tid, int regno) - regno == -1, otherwise fetch all general registers or all floating - point registers depending upon the value of regno. */ - --static void --microblaze_linux_fetch_inferior_registers (struct target_ops *ops, -- struct regcache *regcache, int regno) -+void -+microblaze_linux_nat_target::fetch_registers (struct regcache * regcache, -+ int regno) - { - /* Get the thread id for the ptrace call. */ -- int tid = GET_THREAD_ID (inferior_ptid); -+ int tid = regcache->ptid ().lwp (); - - if (regno == -1) - fetch_gp_regs (regcache, tid); -@@ -356,12 +340,12 @@ microblaze_linux_fetch_inferior_registers (struct target_ops *ops, - regno == -1, otherwise store all general registers or all floating - point registers depending upon the value of regno. */ - --static void --microblaze_linux_store_inferior_registers (struct target_ops *ops, -- struct regcache *regcache, int regno) -+void -+microblaze_linux_nat_target::store_registers (struct regcache *regcache, -+ int regno) - { - /* Get the thread id for the ptrace call. */ -- int tid = GET_THREAD_ID (inferior_ptid); -+ int tid = regcache->ptid ().lwp (); - - if (regno >= 0) - store_register (regcache, tid, regno); -@@ -398,12 +382,12 @@ supply_fpregset (struct regcache *regcache, const gdb_fpregset_t *fpregsetp) - /* FIXME. */ - } - --static const struct target_desc * --microblaze_linux_read_description (struct target_ops *ops) -+const struct target_desc * -+microblaze_linux_nat_target::read_description () - { -- CORE_ADDR microblaze_hwcap = 0; -+ CORE_ADDR microblaze_hwcap = linux_get_hwcap (this); - -- if (target_auxv_search (ops, AT_HWCAP, µblaze_hwcap) != 1) -+ if (microblaze_hwcap != 1) - return NULL; - - return NULL; -@@ -415,17 +399,7 @@ void _initialize_microblaze_linux_nat (void); - void - _initialize_microblaze_linux_nat (void) - { -- struct target_ops *t; -- -- /* Fill in the generic GNU/Linux methods. */ -- t = linux_target (); -- -- /* Add our register access methods. */ -- t->to_fetch_registers = microblaze_linux_fetch_inferior_registers; -- t->to_store_registers = microblaze_linux_store_inferior_registers; -- -- t->to_read_description = microblaze_linux_read_description; -- - /* Register the target. */ -- linux_nat_add_target (t); -+ linux_target = &the_microblaze_linux_nat_target; -+ add_inf_child_target (&the_microblaze_linux_nat_target); - } -diff --git a/gdb/microblaze-tdep.h b/gdb/microblaze-tdep.h -index c0fc900733..c777d93a95 100644 ---- a/gdb/microblaze-tdep.h -+++ b/gdb/microblaze-tdep.h -@@ -106,6 +106,9 @@ enum microblaze_regnum - MICROBLAZE_NUM_REGS, MICROBLAZE_NUM_CORE_REGS = MICROBLAZE_NUM_REGS - }; - -+/* Big enough to hold the size of the largest register in bytes. */ -+#define MICROBLAZE_MAX_REGISTER_SIZE 64 -+ - struct microblaze_frame_cache - { - /* Base address. */ --- -2.17.1 - -- cgit v1.2.3