blob: 6e5aec26e03191d024c8da70f1b9df5ff6f49131 [file] [log] [blame]
wdenk42d1f032003-10-15 23:53:47 +00001#
Marian Balakowiczf9328632006-09-01 19:49:50 +02002# (C) Copyright 2006
3# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
4#
wdenk42d1f032003-10-15 23:53:47 +00005# (C) Copyright 2002,2003 Motorola Inc.
6# Xianghua Xiao,X.Xiao@motorola.com
7#
8# See file CREDITS for list of people who contributed to this
9# project.
10#
11# This program is free software; you can redistribute it and/or
12# modify it under the terms of the GNU General Public License as
13# published by the Free Software Foundation; either version 2 of
14# the License, or (at your option) any later version.
15#
16# This program is distributed in the hope that it will be useful,
17# but WITHOUT ANY WARRANTY; without even the implied warranty of
18# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19# GNU General Public License for more details.
20#
21# You should have received a copy of the GNU General Public License
22# along with this program; if not, write to the Free Software
23# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
24# MA 02111-1307 USA
25#
26
27include $(TOPDIR)/config.mk
28
Sebastien Carlier6d8962e2010-11-05 15:48:07 +010029LIB = $(obj)lib$(CPU).o
wdenk42d1f032003-10-15 23:53:47 +000030
Scott Wood4b919722012-09-20 16:35:21 -050031MINIMAL=
32
33ifdef CONFIG_SPL_BUILD
34ifdef CONFIG_SPL_INIT_MINIMAL
35MINIMAL=y
36endif
37endif
38
39START = start.o resetvec.o
40
41ifdef MINIMAL
42
43COBJS-y += cpu_init_early.o tlb.o spl_minimal.o
44
45else
46
Kumar Gala5052a772009-09-02 09:00:50 -050047SOBJS-$(CONFIG_MP) += release.o
Kumar Galaec2b74f2008-01-17 16:48:33 -060048SOBJS = $(SOBJS-y)
Kumar Gala5052a772009-09-02 09:00:50 -050049
Kumar Gala79ee3442010-06-09 22:59:41 -050050COBJS-$(CONFIG_CMD_ERRATA) += cmd_errata.o
Kumar Gala5052a772009-09-02 09:00:50 -050051COBJS-$(CONFIG_CPM2) += commproc.o
Kumar Gala58e5e9a2008-08-26 15:01:29 -050052
Kumar Gala2a6c2d72008-08-26 21:34:55 -050053# supports ddr1
Kumar Gala2a6c2d72008-08-26 21:34:55 -050054COBJS-$(CONFIG_MPC8540) += ddr-gen1.o
55COBJS-$(CONFIG_MPC8560) += ddr-gen1.o
56COBJS-$(CONFIG_MPC8541) += ddr-gen1.o
57COBJS-$(CONFIG_MPC8555) += ddr-gen1.o
Kumar Gala2a6c2d72008-08-26 21:34:55 -050058
59# supports ddr1/2
Kumar Gala2a6c2d72008-08-26 21:34:55 -050060COBJS-$(CONFIG_MPC8548) += ddr-gen2.o
61COBJS-$(CONFIG_MPC8568) += ddr-gen2.o
62COBJS-$(CONFIG_MPC8544) += ddr-gen2.o
63
64# supports ddr1/2/3
65COBJS-$(CONFIG_MPC8572) += ddr-gen3.o
66COBJS-$(CONFIG_MPC8536) += ddr-gen3.o
Haiying Wang22b6dbc2009-03-27 17:02:44 -040067COBJS-$(CONFIG_MPC8569) += ddr-gen3.o
Poonam Aggrwalb8cdd012011-01-13 21:39:27 +053068COBJS-$(CONFIG_P1010) += ddr-gen3.o
Poonam Aggrwala713ba92009-08-20 18:57:45 +053069COBJS-$(CONFIG_P1011) += ddr-gen3.o
Kumar Gala21608272010-03-30 23:06:53 -050070COBJS-$(CONFIG_P1012) += ddr-gen3.o
71COBJS-$(CONFIG_P1013) += ddr-gen3.o
Poonam Aggrwalb5debec2011-01-13 21:40:05 +053072COBJS-$(CONFIG_P1014) += ddr-gen3.o
Poonam Aggrwal87c76612009-07-31 12:08:27 +053073COBJS-$(CONFIG_P1020) += ddr-gen3.o
Kumar Gala21608272010-03-30 23:06:53 -050074COBJS-$(CONFIG_P1021) += ddr-gen3.o
75COBJS-$(CONFIG_P1022) += ddr-gen3.o
Kumar Gala093cffb2011-02-05 13:45:07 -060076COBJS-$(CONFIG_P1024) += ddr-gen3.o
77COBJS-$(CONFIG_P1025) += ddr-gen3.o
Poonam Aggrwala713ba92009-08-20 18:57:45 +053078COBJS-$(CONFIG_P2010) += ddr-gen3.o
79COBJS-$(CONFIG_P2020) += ddr-gen3.o
Kumar Gala1f979872011-05-13 01:16:07 -050080COBJS-$(CONFIG_PPC_P2041) += ddr-gen3.o
Kumar Galac26de2d2010-01-27 10:26:46 -060081COBJS-$(CONFIG_PPC_P3041) += ddr-gen3.o
Kumar Gala7e4259b2009-03-19 02:39:17 -050082COBJS-$(CONFIG_PPC_P4080) += ddr-gen3.o
Kumar Gala19dbcc92009-10-21 13:32:58 -050083COBJS-$(CONFIG_PPC_P5020) += ddr-gen3.o
Timur Tabi49054432012-10-05 11:09:19 +000084COBJS-$(CONFIG_PPC_P5040) += ddr-gen3.o
York Sun9e758752012-10-08 07:44:19 +000085COBJS-$(CONFIG_PPC_T4240) += ddr-gen3.o
York Sunb6240842013-03-25 07:33:29 +000086COBJS-$(CONFIG_PPC_T4160) += ddr-gen3.o
Poonam Aggrwale1dbdd82012-12-23 19:24:16 +000087COBJS-$(CONFIG_PPC_B4420) += ddr-gen3.o
York Sund2404142012-10-08 07:44:20 +000088COBJS-$(CONFIG_PPC_B4860) += ddr-gen3.o
Prabhakar Kushwaha19a8dbd2012-04-24 20:16:49 +000089COBJS-$(CONFIG_BSC9131) += ddr-gen3.o
Prabhakar Kushwaha35fe9482013-01-23 17:59:57 +000090COBJS-$(CONFIG_BSC9132) += ddr-gen3.o
Kumar Gala58e5e9a2008-08-26 15:01:29 -050091
Kumar Gala5052a772009-09-02 09:00:50 -050092COBJS-$(CONFIG_CPM2) += ether_fcc.o
93COBJS-$(CONFIG_OF_LIBFDT) += fdt.o
Kumar Galadb977ab2009-09-10 03:02:13 -050094COBJS-$(CONFIG_FSL_CORENET) += liodn.o
Kumar Gala5052a772009-09-02 09:00:50 -050095COBJS-$(CONFIG_MP) += mp.o
Kumar Gala5052a772009-09-02 09:00:50 -050096COBJS-$(CONFIG_PCI) += pci.o
Haiying Wang24995d82011-01-20 22:26:31 +000097COBJS-$(CONFIG_SYS_DPAA_QBMAN) += portals.o
Kumar Galadb977ab2009-09-10 03:02:13 -050098
99# various SoC specific assignments
Kumar Gala88b91f22011-07-21 00:20:19 -0500100COBJS-$(CONFIG_PPC_P2041) += p2041_ids.o
Kumar Galad5d2cd42010-07-04 13:07:08 -0500101COBJS-$(CONFIG_PPC_P3041) += p3041_ids.o
Kumar Galadb977ab2009-09-10 03:02:13 -0500102COBJS-$(CONFIG_PPC_P4080) += p4080_ids.o
Kumar Gala1eda59f2010-07-08 05:24:44 -0500103COBJS-$(CONFIG_PPC_P5020) += p5020_ids.o
Timur Tabi49054432012-10-05 11:09:19 +0000104COBJS-$(CONFIG_PPC_P5040) += p5040_ids.o
York Sun9e758752012-10-08 07:44:19 +0000105COBJS-$(CONFIG_PPC_T4240) += t4240_ids.o
York Sunb6240842013-03-25 07:33:29 +0000106COBJS-$(CONFIG_PPC_T4160) += t4240_ids.o
Poonam Aggrwale1dbdd82012-12-23 19:24:16 +0000107COBJS-$(CONFIG_PPC_B4420) += b4860_ids.o
York Sund2404142012-10-08 07:44:20 +0000108COBJS-$(CONFIG_PPC_B4860) += b4860_ids.o
Kumar Galadb977ab2009-09-10 03:02:13 -0500109
Kumar Gala5052a772009-09-02 09:00:50 -0500110COBJS-$(CONFIG_QE) += qe_io.o
111COBJS-$(CONFIG_CPM2) += serial_scc.o
York Sund1001e32012-10-08 07:44:15 +0000112COBJS-$(CONFIG_SYS_FSL_QORIQ_CHASSIS1) += fsl_corenet_serdes.o
113COBJS-$(CONFIG_SYS_FSL_QORIQ_CHASSIS2) += fsl_corenet2_serdes.o
Kumar Galac5780a62010-12-15 04:07:55 -0600114
115# SoC specific SERDES support
116COBJS-$(CONFIG_MPC8536) += mpc8536_serdes.o
Kumar Gala877a2612010-04-27 09:20:20 -0500117COBJS-$(CONFIG_MPC8544) += mpc8544_serdes.o
Kumar Galabc48d0d2010-04-26 23:25:33 -0500118COBJS-$(CONFIG_MPC8548) += mpc8548_serdes.o
Kumar Gala5ba40ee2010-04-26 23:44:10 -0500119COBJS-$(CONFIG_MPC8568) += mpc8568_serdes.o
Kumar Gala47567c22010-04-27 00:05:41 -0500120COBJS-$(CONFIG_MPC8569) += mpc8569_serdes.o
Kumar Galaaf87cab2010-04-26 23:09:23 -0500121COBJS-$(CONFIG_MPC8572) += mpc8572_serdes.o
Prabhakar Kushwaha28747f92011-01-20 16:34:41 +0530122COBJS-$(CONFIG_P1010) += p1010_serdes.o
Kumar Gala70ea7f82010-12-15 04:04:56 -0600123COBJS-$(CONFIG_P1011) += p1021_serdes.o
124COBJS-$(CONFIG_P1012) += p1021_serdes.o
Kumar Gala04a641d2011-02-04 12:50:53 -0600125COBJS-$(CONFIG_P1013) += p1022_serdes.o
Prabhakar Kushwaha28747f92011-01-20 16:34:41 +0530126COBJS-$(CONFIG_P1014) += p1010_serdes.o
Roy Zang67a719d2011-02-03 22:14:19 -0600127COBJS-$(CONFIG_P1017) += p1023_serdes.o
Kumar Gala70ea7f82010-12-15 04:04:56 -0600128COBJS-$(CONFIG_P1020) += p1021_serdes.o
129COBJS-$(CONFIG_P1021) += p1021_serdes.o
Kumar Galac5780a62010-12-15 04:07:55 -0600130COBJS-$(CONFIG_P1022) += p1022_serdes.o
Roy Zang67a719d2011-02-03 22:14:19 -0600131COBJS-$(CONFIG_P1023) += p1023_serdes.o
Kumar Gala093cffb2011-02-05 13:45:07 -0600132COBJS-$(CONFIG_P1024) += p1021_serdes.o
133COBJS-$(CONFIG_P1025) += p1021_serdes.o
Kumar Gala3818db42010-12-15 02:49:03 -0600134COBJS-$(CONFIG_P2010) += p2020_serdes.o
135COBJS-$(CONFIG_P2020) += p2020_serdes.o
Kumar Gala1f979872011-05-13 01:16:07 -0500136COBJS-$(CONFIG_PPC_P2041) += p2041_serdes.o
Kumar Galad5d2cd42010-07-04 13:07:08 -0500137COBJS-$(CONFIG_PPC_P3041) += p3041_serdes.o
Kumar Gala34a82582010-07-12 22:51:29 -0500138COBJS-$(CONFIG_PPC_P4080) += p4080_serdes.o
Kumar Gala1eda59f2010-07-08 05:24:44 -0500139COBJS-$(CONFIG_PPC_P5020) += p5020_serdes.o
Timur Tabi49054432012-10-05 11:09:19 +0000140COBJS-$(CONFIG_PPC_P5040) += p5040_serdes.o
York Sun9e758752012-10-08 07:44:19 +0000141COBJS-$(CONFIG_PPC_T4240) += t4240_serdes.o
York Sunb6240842013-03-25 07:33:29 +0000142COBJS-$(CONFIG_PPC_T4160) += t4240_serdes.o
Poonam Aggrwale1dbdd82012-12-23 19:24:16 +0000143COBJS-$(CONFIG_PPC_B4420) += b4860_serdes.o
York Sund2404142012-10-08 07:44:20 +0000144COBJS-$(CONFIG_PPC_B4860) += b4860_serdes.o
Prabhakar Kushwaha35fe9482013-01-23 17:59:57 +0000145COBJS-$(CONFIG_BSC9132) += bsc9132_serdes.o
Kumar Gala5052a772009-09-02 09:00:50 -0500146
Scott Wooda179eb02012-09-25 18:17:45 -0500147COBJS-y += cpu.o
148COBJS-y += cpu_init.o
149COBJS-y += cpu_init_early.o
150COBJS-y += interrupts.o
151COBJS-y += speed.o
152COBJS-y += tlb.o
153COBJS-y += traps.o
wdenk42d1f032003-10-15 23:53:47 +0000154
Marek Vasut25315682012-05-25 16:14:46 +0200155# Stub implementations of cache management functions for USB
Scott Wooda179eb02012-09-25 18:17:45 -0500156COBJS-y += cache.o
157
Scott Wood4b919722012-09-20 16:35:21 -0500158endif # not minimal
159
Scott Wooda179eb02012-09-25 18:17:45 -0500160COBJS = $(COBJS-y)
Marek Vasut25315682012-05-25 16:14:46 +0200161
Marian Balakowiczf9328632006-09-01 19:49:50 +0200162SRCS := $(START:.o=.S) $(SOBJS:.o=.S) $(COBJS:.o=.c)
163OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS))
164START := $(addprefix $(obj),$(START))
165
166all: $(obj).depend $(START) $(LIB)
wdenk42d1f032003-10-15 23:53:47 +0000167
168$(LIB): $(OBJS)
Sebastien Carlier6d8962e2010-11-05 15:48:07 +0100169 $(call cmd_link_o_target, $(OBJS))
wdenk42d1f032003-10-15 23:53:47 +0000170
171#########################################################################
172
Marian Balakowiczf9328632006-09-01 19:49:50 +0200173# defines $(obj).depend target
174include $(SRCTREE)/rules.mk
wdenk42d1f032003-10-15 23:53:47 +0000175
Marian Balakowiczf9328632006-09-01 19:49:50 +0200176sinclude $(obj).depend
wdenk42d1f032003-10-15 23:53:47 +0000177
178#########################################################################