2019-05-29 07:18:00 -07:00
/* SPDX-License-Identifier: GPL-2.0-only */
2017-07-10 18:08:08 -07:00
/ *
* Copyright ( C ) 2 0 1 2 R e g e n t s o f t h e U n i v e r s i t y o f C a l i f o r n i a
* Copyright ( C ) 2 0 1 7 S i F i v e
* /
# define L O A D _ O F F S E T P A G E _ O F F S E T
# include < a s m / v m l i n u x . l d s . h >
# include < a s m / p a g e . h >
# include < a s m / c a c h e . h >
# include < a s m / t h r e a d _ i n f o . h >
2020-03-10 00:55:40 +08:00
# include < a s m / s e t _ m e m o r y . h >
2017-07-10 18:08:08 -07:00
2020-03-17 18:11:39 -07:00
# include < l i n u x / s i z e s . h >
2017-07-10 18:08:08 -07:00
OUTPUT_ A R C H ( r i s c v )
ENTRY( _ s t a r t )
jiffies = j i f f i e s _ 6 4 ;
SECTIONS
{
/* Beginning of code and text segment */
. = LOAD_ O F F S E T ;
_ start = . ;
2020-06-27 13:57:06 +00:00
_ stext = . ;
2017-07-10 18:08:08 -07:00
HEAD_ T E X T _ S E C T I O N
2020-03-17 18:11:39 -07:00
. = ALIGN( P A G E _ S I Z E ) ;
_ _ init_ b e g i n = . ;
2017-07-10 18:08:08 -07:00
INIT_ T E X T _ S E C T I O N ( P A G E _ S I Z E )
INIT_ D A T A _ S E C T I O N ( 1 6 )
2020-03-16 09:47:38 +09:00
. = ALIGN( 8 ) ;
_ _ soc_ e a r l y _ i n i t _ t a b l e : {
_ _ soc_ e a r l y _ i n i t _ t a b l e _ s t a r t = . ;
KEEP( * ( _ _ s o c _ e a r l y _ i n i t _ t a b l e ) )
_ _ soc_ e a r l y _ i n i t _ t a b l e _ e n d = . ;
}
2020-04-14 13:43:24 +09:00
_ _ soc_ b u i l t i n _ d t b _ t a b l e : {
_ _ soc_ b u i l t i n _ d t b _ t a b l e _ s t a r t = . ;
KEEP( * ( _ _ s o c _ b u i l t i n _ d t b _ t a b l e ) )
_ _ soc_ b u i l t i n _ d t b _ t a b l e _ e n d = . ;
}
2017-07-10 18:08:08 -07:00
/* we have to discard exit text and such at runtime, not link time */
.exit .text :
{
EXIT_ T E X T
}
.exit .data :
{
EXIT_ D A T A
}
PERCPU_ S E C T I O N ( L 1 _ C A C H E _ B Y T E S )
_ _ init_ e n d = . ;
2020-03-10 00:55:40 +08:00
. = ALIGN( S E C T I O N _ A L I G N ) ;
2017-07-10 18:08:08 -07:00
.text : {
_ text = . ;
TEXT_ T E X T
SCHED_ T E X T
CPUIDLE_ T E X T
LOCK_ T E X T
KPROBES_ T E X T
ENTRY_ T E X T
IRQENTRY_ T E X T
2020-01-06 10:38:32 -08:00
SOFTIRQENTRY_ T E X T
2017-07-10 18:08:08 -07:00
* ( .fixup )
_ etext = . ;
}
/* Start of data section */
_ sdata = . ;
2020-03-10 00:55:40 +08:00
RO_ D A T A ( S E C T I O N _ A L I G N )
2017-07-10 18:08:08 -07:00
.srodata : {
* ( .srodata * )
}
2020-03-10 00:55:39 +08:00
EXCEPTION_ T A B L E ( 0 x10 )
2020-03-10 00:55:40 +08:00
. = ALIGN( S E C T I O N _ A L I G N ) ;
2020-03-10 00:55:39 +08:00
_ data = . ;
2019-10-29 14:13:35 -07:00
RW_ D A T A ( L 1 _ C A C H E _ B Y T E S , P A G E _ S I Z E , T H R E A D _ S I Z E )
2017-07-10 18:08:08 -07:00
.sdata : {
_ _ global_ p o i n t e r $ = . + 0 x80 0 ;
* ( .sdata * )
/* End of data section */
_ edata = . ;
}
2019-02-08 09:11:08 -08:00
BSS_ S E C T I O N ( P A G E _ S I Z E , P A G E _ S I Z E , 0 )
2017-07-10 18:08:08 -07:00
.rel .dyn : {
* ( .rel .dyn * )
}
_ end = . ;
STABS_ D E B U G
DWARF_ D E B U G
DISCARDS
}