Changeset b3f8fb7 in mainline for kernel/arch/sparc64/include/mm


Ignore:
Timestamp:
2007-01-28T13:25:49Z (18 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
8e8c1a5
Parents:
1ba41c5
Message:

huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes

Location:
kernel/arch/sparc64/include/mm
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/sparc64/include/mm/as.h

    r1ba41c5 rb3f8fb7  
    3636#define KERN_sparc64_AS_H_
    3737
    38 #ifdef CONFIG_TSB
    39 #include <arch/mm/tsb.h>
    40 #endif
     38#include <arch/mm/tte.h>
    4139
    4240#define KERNEL_ADDRESS_SPACE_SHADOWED_ARCH      1
     
    4745#define USER_ADDRESS_SPACE_END_ARCH             (unsigned long) 0xffffffffffffffff
    4846
    49 #define USTACK_ADDRESS_ARCH     (0xffffffffffffffffULL-(PAGE_SIZE-1))
     47#define USTACK_ADDRESS_ARCH     (0xffffffffffffffffULL - (PAGE_SIZE - 1))
     48
     49#ifdef CONFIG_TSB
     50
     51/** TSB Tag Target register. */
     52typedef union tsb_tag_target {
     53        uint64_t value;
     54        struct {
     55                unsigned invalid : 1;   /**< Invalidated by software. */
     56                unsigned : 2;
     57                unsigned context : 13;  /**< Software ASID. */
     58                unsigned : 6;
     59                uint64_t va_tag : 42;   /**< Virtual address bits <63:22>. */
     60        } __attribute__ ((packed));
     61} tsb_tag_target_t;
     62
     63/** TSB entry. */
     64typedef struct tsb_entry {
     65        tsb_tag_target_t tag;
     66        tte_data_t data;
     67} __attribute__ ((packed)) tsb_entry_t;
    5068
    5169typedef struct {
    52 #ifdef CONFIG_TSB
    5370        tsb_entry_t *itsb;
    5471        tsb_entry_t *dtsb;
    55 #endif /* CONFIG_TSB */
    5672} as_arch_t;
    5773
     74#else
     75
     76typedef struct {
     77} as_arch_t;
     78
     79#endif /* CONFIG_TSB */
     80
     81#include <genarch/mm/as_ht.h>
     82
    5883#ifdef CONFIG_TSB
     84#       include <arch/mm/tsb.h>
    5985#       define as_invalidate_translation_cache(as, page, cnt)   tsb_invalidate(as, page, cnt)
    6086#else
  • kernel/arch/sparc64/include/mm/memory_init.h

    r1ba41c5 rb3f8fb7  
    3636#define KERN_sparc64_MEMORY_INIT_H_
    3737
    38 #include <typedefs.h>
     38#include <arch/types.h>
    3939
    4040extern size_t get_memory_size(void);
  • kernel/arch/sparc64/include/mm/mmu.h

    r1ba41c5 rb3f8fb7  
    8080#include <arch/barrier.h>
    8181#include <arch/types.h>
    82 #include <typedefs.h>
    8382
    8483/** LSU Control Register. */
    85 union lsu_cr_reg {
     84typedef union {
    8685        uint64_t value;
    8786        struct {
     
    101100               
    102101        } __attribute__ ((packed));
    103 };
    104 typedef union lsu_cr_reg lsu_cr_reg_t;
     102} lsu_cr_reg_t;
    105103
    106104#endif /* !def __ASM__ */
  • kernel/arch/sparc64/include/mm/page.h

    r1ba41c5 rb3f8fb7  
    4747#ifndef __ASM__
    4848
    49 #include <mm/page.h>
    50 #include <arch/types.h>
    51 #include <genarch/mm/page_ht.h>
     49//#include <arch/types.h>
     50//#include <genarch/mm/page_ht.h>
     51#include <arch/interrupt.h>
    5252
    5353extern uintptr_t physmem_base;
     
    5656#define PA2KA(x)        (((uintptr_t) (x)) - physmem_base)
    5757
    58 union page_address {
     58typedef union {
    5959        uintptr_t address;
    6060        struct {
     
    6262                unsigned offset : 13;           /**< Offset. */
    6363        } __attribute__ ((packed));
    64 };
    65 
    66 typedef union page_address page_address_t;
     64} page_address_t;
    6765
    6866extern void page_arch_init(void);
  • kernel/arch/sparc64/include/mm/tlb.h

    r1ba41c5 rb3f8fb7  
    7777#include <arch/barrier.h>
    7878#include <arch/types.h>
    79 #include <typedefs.h>
    8079
    8180union tlb_context_reg {
  • kernel/arch/sparc64/include/mm/tsb.h

    r1ba41c5 rb3f8fb7  
    5555#include <arch/mm/mmu.h>
    5656#include <arch/types.h>
    57 #include <typedefs.h>
    58 
    59 /** TSB Tag Target register. */
    60 union tsb_tag_target {
    61         uint64_t value;
    62         struct {
    63                 unsigned invalid : 1;   /**< Invalidated by software. */
    64                 unsigned : 2;
    65                 unsigned context : 13;  /**< Software ASID. */
    66                 unsigned : 6;
    67                 uint64_t va_tag : 42;   /**< Virtual address bits <63:22>. */
    68         } __attribute__ ((packed));
    69 };
    70 typedef union tsb_tag_target tsb_tag_target_t;
    71 
    72 /** TSB entry. */
    73 struct tsb_entry {
    74         tsb_tag_target_t tag;
    75         tte_data_t data;
    76 } __attribute__ ((packed));
    77 typedef struct tsb_entry tsb_entry_t;
     57#include <mm/as.h>
    7858
    7959/** TSB Base register. */
    80 union tsb_base_reg {
     60typedef union tsb_base_reg {
    8161        uint64_t value;
    8262        struct {
     
    9171                                         * 512 * 2^size. */
    9272        } __attribute__ ((packed));
    93 };
    94 typedef union tsb_base_reg tsb_base_reg_t;
     73} tsb_base_reg_t;
    9574
    9675/** Read ITSB Base register.
Note: See TracChangeset for help on using the changeset viewer.