X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Ftarget%2Farm966e.h;h=e41b850376d2627e72ced30f309296fd0b23fc33;hb=057e566097b41f9bfeee50e97ba6ef624189ae6a;hp=dee06765229d965f2ecda87f20fabe993064f56c;hpb=fbf5bec7f3ea9f4a9584099a12e71681cb55ce35;p=fw%2Fopenocd diff --git a/src/target/arm966e.h b/src/target/arm966e.h index dee067652..e41b85037 100644 --- a/src/target/arm966e.h +++ b/src/target/arm966e.h @@ -1,39 +1,37 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + /*************************************************************************** * Copyright (C) 2005 by Dominic Rath * * Dominic.Rath@gmx.de * * * - * This program is free software; you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation; either version 2 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program; if not, write to the * - * Free Software Foundation, Inc., * - * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * + * Copyright (C) 2008 by Spencer Oliver * + * spen@spen-soft.co.uk * ***************************************************************************/ -#ifndef ARM966E_H -#define ARM966E_H -#include "target.h" -#include "register.h" -#include "embeddedice.h" -#include "arm_jtag.h" +#ifndef OPENOCD_TARGET_ARM966E_H +#define OPENOCD_TARGET_ARM966E_H + #include "arm9tdmi.h" #define ARM966E_COMMON_MAGIC 0x20f920f9 -typedef struct arm966e_common_s -{ +struct arm966e_common { + struct arm7_9_common arm7_9_common; int common_magic; - arm9tdmi_common_t arm9tdmi_common; - u32 cp15_control_reg; - int monitor_mode_set; -} arm966e_common_t; + uint32_t cp15_control_reg; +}; + +static inline struct arm966e_common * +target_to_arm966(struct target *target) +{ + return container_of(target->arch_info, struct arm966e_common, + arm7_9_common.arm); +} + +int arm966e_init_arch_info(struct target *target, + struct arm966e_common *arm966e, struct jtag_tap *tap); +int arm966e_write_cp15(struct target *target, int reg_addr, uint32_t value); + +extern const struct command_registration arm966e_command_handlers[]; -#endif /* ARM966E_H */ +#endif /* OPENOCD_TARGET_ARM966E_H */