/[gxemul]/trunk/src/include/cpu_hppa.h
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/src/include/cpu_hppa.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 14 by dpavlin, Mon Oct 8 16:18:51 2007 UTC revision 18 by dpavlin, Mon Oct 8 16:19:11 2007 UTC
# Line 28  Line 28 
28   *  SUCH DAMAGE.   *  SUCH DAMAGE.
29   *   *
30   *   *
31   *  $Id: cpu_hppa.h,v 1.5 2005/09/07 07:10:17 debug Exp $   *  $Id: cpu_hppa.h,v 1.8 2005/10/27 14:01:15 debug Exp $
32   */   */
33    
34  #include "misc.h"  #include "misc.h"
# Line 53  struct hppa_instr_call { Line 53  struct hppa_instr_call {
53    
54  /*  Translation cache struct for each physical page:  */  /*  Translation cache struct for each physical page:  */
55  struct hppa_tc_physpage {  struct hppa_tc_physpage {
56            struct hppa_instr_call ics[HPPA_IC_ENTRIES_PER_PAGE + 1];
57          uint32_t        next_ofs;       /*  or 0 for end of chain  */          uint32_t        next_ofs;       /*  or 0 for end of chain  */
         uint64_t        physaddr;  
58          int             flags;          int             flags;
59          struct hppa_instr_call ics[HPPA_IC_ENTRIES_PER_PAGE + 1];          uint64_t        physaddr;
60  };  };
61    
62  #define HPPA_N_VPH_ENTRIES              1048576  #define HPPA_N_VPH_ENTRIES              1048576
# Line 98  struct hppa_cpu { Line 98  struct hppa_cpu {
98           */           */
99    
100          struct hppa_vpg_tlb_entry  vph_tlb_entry[HPPA_MAX_VPH_TLB_ENTRIES];          struct hppa_vpg_tlb_entry  vph_tlb_entry[HPPA_MAX_VPH_TLB_ENTRIES];
101          unsigned char               *host_load[HPPA_N_VPH_ENTRIES];          unsigned char              *host_load[HPPA_N_VPH_ENTRIES];
102          unsigned char               *host_store[HPPA_N_VPH_ENTRIES];          unsigned char              *host_store[HPPA_N_VPH_ENTRIES];
103          uint32_t                    phys_addr[HPPA_N_VPH_ENTRIES];          uint32_t                   phys_addr[HPPA_N_VPH_ENTRIES];
104          struct hppa_tc_physpage    *phys_page[HPPA_N_VPH_ENTRIES];          struct hppa_tc_physpage    *phys_page[HPPA_N_VPH_ENTRIES];
105    
106            uint32_t                   phystranslation[HPPA_N_VPH_ENTRIES/32];
107  };  };
108    
109    
110  /*  cpu_hppa.c:  */  /*  cpu_hppa.c:  */
111  void hppa_update_translation_table(struct cpu *cpu, uint64_t vaddr_page,  void hppa_update_translation_table(struct cpu *cpu, uint64_t vaddr_page,
112          unsigned char *host_page, int writeflag, uint64_t paddr_page);          unsigned char *host_page, int writeflag, uint64_t paddr_page);
113  void hppa_invalidate_translation_caches_paddr(struct cpu *cpu, uint64_t, int);  void hppa_invalidate_translation_caches(struct cpu *cpu, uint64_t, int);
114  void hppa_invalidate_code_translation(struct cpu *cpu, uint64_t, int);  void hppa_invalidate_code_translation(struct cpu *cpu, uint64_t, int);
115  void hppa32_update_translation_table(struct cpu *cpu, uint64_t vaddr_page,  void hppa32_update_translation_table(struct cpu *cpu, uint64_t vaddr_page,
116          unsigned char *host_page, int writeflag, uint64_t paddr_page);          unsigned char *host_page, int writeflag, uint64_t paddr_page);
117  void hppa32_invalidate_translation_caches_paddr(struct cpu *cpu, uint64_t, int);  void hppa32_invalidate_translation_caches(struct cpu *cpu, uint64_t, int);
118  void hppa32_invalidate_code_translation(struct cpu *cpu, uint64_t, int);  void hppa32_invalidate_code_translation(struct cpu *cpu, uint64_t, int);
119  int hppa_memory_rw(struct cpu *cpu, struct memory *mem, uint64_t vaddr,  int hppa_memory_rw(struct cpu *cpu, struct memory *mem, uint64_t vaddr,
120          unsigned char *data, size_t len, int writeflag, int cache_flags);          unsigned char *data, size_t len, int writeflag, int cache_flags);

Legend:
Removed from v.14  
changed lines
  Added in v.18

  ViewVC Help
Powered by ViewVC 1.1.26