]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - board/esd/pmc440/u-boot-nand.lds
dfu, nand: add medium specific polltimeout function
[karo-tx-uboot.git] / board / esd / pmc440 / u-boot-nand.lds
1 /*
2  * (C) Copyright 2006
3  * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
4  *
5  * SPDX-License-Identifier:     GPL-2.0+
6  */
7
8 OUTPUT_ARCH(powerpc)
9 SECTIONS
10 {
11   /* Read-only sections, merged into text segment: */
12   . = + SIZEOF_HEADERS;
13   .interp : { *(.interp) }
14   .hash          : { *(.hash)           }
15   .dynsym        : { *(.dynsym)         }
16   .dynstr        : { *(.dynstr)         }
17   .rel.text      : { *(.rel.text)               }
18   .rela.text     : { *(.rela.text)      }
19   .rel.data      : { *(.rel.data)               }
20   .rela.data     : { *(.rela.data)      }
21   .rel.rodata    : { *(.rel.rodata)     }
22   .rela.rodata   : { *(.rela.rodata)    }
23   .rel.got       : { *(.rel.got)                }
24   .rela.got      : { *(.rela.got)               }
25   .rel.ctors     : { *(.rel.ctors)      }
26   .rela.ctors    : { *(.rela.ctors)     }
27   .rel.dtors     : { *(.rel.dtors)      }
28   .rela.dtors    : { *(.rela.dtors)     }
29   .rel.bss       : { *(.rel.bss)                }
30   .rela.bss      : { *(.rela.bss)               }
31   .rel.plt       : { *(.rel.plt)                }
32   .rela.plt      : { *(.rela.plt)               }
33   .init          : { *(.init)   }
34   .plt : { *(.plt) }
35   .text      :
36   {
37     /* WARNING - the following is hand-optimized to fit within  */
38     /* the sector layout of our flash chips!    XXX FIXME XXX   */
39
40     arch/powerpc/cpu/ppc4xx/start.o     (.text)
41
42     /* Align to next NAND block */
43     . = ALIGN(0x4000);
44     common/env_embedded.o  (.ppcenv)
45     /* Keep some space here for redundant env and potential bad env blocks */
46     . = ALIGN(0x10000);
47
48     *(.text)
49     *(.got1)
50   }
51   _etext = .;
52   PROVIDE (etext = .);
53   .rodata    :
54   {
55     *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
56   }
57   .fini      : { *(.fini)    } =0
58   .ctors     : { *(.ctors)   }
59   .dtors     : { *(.dtors)   }
60
61   /* Read-write section, merged into data segment: */
62   . = (. + 0x00FF) & 0xFFFFFF00;
63   _erotext = .;
64   PROVIDE (erotext = .);
65   .reloc   :
66   {
67     *(.got)
68     _GOT2_TABLE_ = .;
69     *(.got2)
70     _FIXUP_TABLE_ = .;
71     *(.fixup)
72   }
73   __got2_entries = (_FIXUP_TABLE_ - _GOT2_TABLE_) >>2;
74   __fixup_entries = (. - _FIXUP_TABLE_)>>2;
75
76   .data    :
77   {
78     *(.data)
79     *(.data1)
80     *(.sdata)
81     *(.sdata2)
82     *(.dynamic)
83     CONSTRUCTORS
84   }
85   _edata  =  .;
86   PROVIDE (edata = .);
87
88   . = .;
89
90   .u_boot_list : {
91                 KEEP(*(SORT(.u_boot_list*)));
92   }
93
94   . = .;
95   __start___ex_table = .;
96   __ex_table : { *(__ex_table) }
97   __stop___ex_table = .;
98
99   . = ALIGN(256);
100   __init_begin = .;
101   .text.init : { *(.text.init) }
102   .data.init : { *(.data.init) }
103   . = ALIGN(256);
104   __init_end = .;
105
106   __bss_start = .;
107   .bss (NOLOAD)       :
108   {
109    *(.sbss) *(.scommon)
110    *(.dynbss)
111    *(.bss)
112    *(COMMON)
113    . = ALIGN(4);
114   }
115
116   __bss_end = . ;
117   PROVIDE (end = .);
118 }