aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging/tidspbridge/dynload/module_list.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/staging/tidspbridge/dynload/module_list.h')
-rw-r--r--drivers/staging/tidspbridge/dynload/module_list.h159
1 files changed, 0 insertions, 159 deletions
diff --git a/drivers/staging/tidspbridge/dynload/module_list.h b/drivers/staging/tidspbridge/dynload/module_list.h
deleted file mode 100644
index a216bb131a40..000000000000
--- a/drivers/staging/tidspbridge/dynload/module_list.h
+++ /dev/null
@@ -1,159 +0,0 @@
-/*
- * dspbridge/mpu_driver/src/dynload/module_list.h
- *
- * DSP-BIOS Bridge driver support functions for TI OMAP processors.
- *
- * Copyright (C) 2008 Texas Instruments, Inc.
- *
- * This package is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * THIS PACKAGE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- */
-
-/*
- * This C header file gives the layout of the data structure created by the
- * dynamic loader to describe the set of modules loaded into the DSP.
- *
- * Linked List Structure:
- * ----------------------
- * The data structure defined here is a singly-linked list. The list
- * represents the set of modules which are currently loaded in the DSP memory.
- * The first entry in the list is a header record which contains a flag
- * representing the state of the list. The rest of the entries in the list
- * are module records.
- *
- * Global symbol _DLModules designates the first record in the list (i.e. the
- * header record). This symbol must be defined in any program that wishes to
- * use DLLview plug-in.
- *
- * String Representation:
- * ----------------------
- * The string names of the module and its sections are stored in a block of
- * memory which follows the module record itself. The strings are ordered:
- * module name first, followed by section names in order from the first
- * section to the last. String names are tightly packed arrays of 8-bit
- * characters (two characters per 16-bit word on the C55x). Strings are
- * zero-byte-terminated.
- *
- * Creating and updating the list:
- * -------------------------------
- * Upon loading a new module into the DSP memory the dynamic loader inserts a
- * new module record as the first module record in the list. The fields of
- * this module record are initialized to reflect the properties of the module.
- * The dynamic loader does NOT increment the flag/counter in the list's header
- * record.
- *
- * Upon unloading a module from the DSP memory the dynamic loader removes the
- * module's record from this list. The dynamic loader also increments the
- * flag/counter in the list's header record to indicate that the list has been
- * changed.
- */
-
-#ifndef _MODULE_LIST_H_
-#define _MODULE_LIST_H_
-
-#include <linux/types.h>
-
-/* Global pointer to the modules_header structure */
-#define MODULES_HEADER "_DLModules"
-#define MODULES_HEADER_NO_UNDERSCORE "DLModules"
-
-/* Initial version number */
-#define INIT_VERSION 1
-
-/* Verification number -- to be recorded in each module record */
-#define VERIFICATION 0x79
-
-/* forward declarations */
-struct dll_module;
-struct dll_sect;
-
-/* the first entry in the list is the modules_header record;
- * its address is contained in the global _DLModules pointer */
-struct modules_header {
-
- /*
- * Address of the first dll_module record in the list or NULL.
- * Note: for C55x this is a word address (C55x data is
- * word-addressable)
- */
- u32 first_module;
-
- /* Combined storage size (in target addressable units) of the
- * dll_module record which follows this header record, or zero
- * if the list is empty. This size includes the module's string table.
- * Note: for C55x the unit is a 16-bit word */
- u16 first_module_size;
-
- /* Counter is incremented whenever a module record is removed from
- * the list */
- u16 update_flag;
-
-};
-
-/* for each 32-bits in above structure, a bitmap, LSB first, whose bits are:
- * 0 => a 32-bit value, 1 => 2 16-bit values */
-/* swapping bitmap for type modules_header */
-#define MODULES_HEADER_BITMAP 0x2
-
-/* information recorded about each section in a module */
-struct dll_sect {
-
- /* Load-time address of the section.
- * Note: for C55x this is a byte address for program sections, and
- * a word address for data sections. C55x program memory is
- * byte-addressable, while data memory is word-addressable. */
- u32 sect_load_adr;
-
- /* Run-time address of the section.
- * Note 1: for C55x this is a byte address for program sections, and
- * a word address for data sections.
- * Note 2: for C55x two most significant bits of this field indicate
- * the section type: '00' for a code section, '11' for a data section
- * (C55 addresses are really only 24-bits wide). */
- u32 sect_run_adr;
-
-};
-
-/* the rest of the entries in the list are module records */
-struct dll_module {
-
- /* Address of the next dll_module record in the list, or 0 if this is
- * the last record in the list.
- * Note: for C55x this is a word address (C55x data is
- * word-addressable) */
- u32 next_module;
-
- /* Combined storage size (in target addressable units) of the
- * dll_module record which follows this one, or zero if this is the
- * last record in the list. This size includes the module's string
- * table.
- * Note: for C55x the unit is a 16-bit word. */
- u16 next_module_size;
-
- /* version number of the tooling; set to INIT_VERSION for Phase 1 */
- u16 version;
-
- /* the verification word; set to VERIFICATION */
- u16 verification;
-
- /* Number of sections in the sects array */
- u16 num_sects;
-
- /* Module's "unique" id; copy of the timestamp from the host
- * COFF file */
- u32 timestamp;
-
- /* Array of num_sects elements of the module's section records */
- struct dll_sect sects[1];
-};
-
-/* for each 32 bits in above structure, a bitmap, LSB first, whose bits are:
- * 0 => a 32-bit value, 1 => 2 16-bit values */
-#define DLL_MODULE_BITMAP 0x6 /* swapping bitmap for type dll_module */
-
-#endif /* _MODULE_LIST_H_ */