~ubuntu-branches/debian/experimental/linux-tools/experimental

« back to all changes in this revision

Viewing changes to arch/h8300/include/asm/segment.h

  • Committer: Package Import Robot
  • Author(s): Ben Hutchings
  • Date: 2014-02-02 16:57:49 UTC
  • mfrom: (1.1.10) (0.1.21 sid)
  • Revision ID: package-import@ubuntu.com-20140202165749-tw94o9t1t0a8txk6
Tags: 3.13-1~exp2
Merge changes from sid up to 3.12.6-3

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#ifndef _H8300_SEGMENT_H
2
 
#define _H8300_SEGMENT_H
3
 
 
4
 
/* define constants */
5
 
#define USER_DATA     (1)
6
 
#ifndef __USER_DS
7
 
#define __USER_DS     (USER_DATA)
8
 
#endif
9
 
#define USER_PROGRAM  (2)
10
 
#define SUPER_DATA    (3)
11
 
#ifndef __KERNEL_DS
12
 
#define __KERNEL_DS   (SUPER_DATA)
13
 
#endif
14
 
#define SUPER_PROGRAM (4)
15
 
 
16
 
#ifndef __ASSEMBLY__
17
 
 
18
 
typedef struct {
19
 
        unsigned long seg;
20
 
} mm_segment_t;
21
 
 
22
 
#define MAKE_MM_SEG(s)  ((mm_segment_t) { (s) })
23
 
#define USER_DS         MAKE_MM_SEG(__USER_DS)
24
 
#define KERNEL_DS       MAKE_MM_SEG(__KERNEL_DS)
25
 
 
26
 
/*
27
 
 * Get/set the SFC/DFC registers for MOVES instructions
28
 
 */
29
 
 
30
 
static inline mm_segment_t get_fs(void)
31
 
{
32
 
    return USER_DS;
33
 
}
34
 
 
35
 
static inline mm_segment_t get_ds(void)
36
 
{
37
 
    /* return the supervisor data space code */
38
 
    return KERNEL_DS;
39
 
}
40
 
 
41
 
static inline void set_fs(mm_segment_t val)
42
 
{
43
 
}
44
 
 
45
 
#define segment_eq(a,b) ((a).seg == (b).seg)
46
 
 
47
 
#endif /* __ASSEMBLY__ */
48
 
 
49
 
#endif /* _H8300_SEGMENT_H */