summaryrefslogtreecommitdiffstats
path: root/arch
Commit message (Collapse)AuthorAgeFilesLines
* Clean up libfdt.h includesGerald Van Baren2013-02-087-8/+1
| | | | | | | | | | The libfdt.h file is the definition file for libfdt. It is unnecessary to include other fdt header files (the necessary ones are pulled in by libfdt.h). Signed-off-by: Gerald Van Baren <gvb@unssw.com> Acked-by: Simon Glass <sjg@chromium.org> Acked-by: Stefan Roese <sr@denx.de>
* common/fdt_support.c: sparse fixesKim Phillips2013-02-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | trivial: fdt_support.c:89:64: warning: Using plain integer as NULL pointer fdt_support.c:325:65: warning: Using plain integer as NULL pointer fdt_support.c:352:65: warning: Using plain integer as NULL pointer For the following bad constant expression, We hardcode the max. number of memory banks to four for the foreseeable future, and add an error with instructions on what to do once it's exceeded: fdt_support.c:397:22: error: bad constant expression For the rest below, sparse found a couple of wrong endian conversions in of_bus_default_translate() and fdt_get_base_address(), but otherwise the rest is mostly annotation fixes: fdt_support.c:64:24: warning: cast to restricted __be32 fdt_support.c:192:21: warning: incorrect type in assignment (different base types) fdt_support.c:192:21: expected unsigned int [unsigned] [usertype] tmp fdt_support.c:192:21: got restricted __be32 [usertype] <noident> fdt_support.c:201:21: warning: incorrect type in assignment (different base types) fdt_support.c:201:21: expected unsigned int [unsigned] [addressable] [usertype] tmp fdt_support.c:201:21: got restricted __be32 [usertype] <noident> fdt_support.c:304:13: warning: incorrect type in assignment (different base types) fdt_support.c:304:13: expected unsigned int [unsigned] [usertype] val fdt_support.c:304:13: got restricted __be32 [usertype] <noident> fdt_support.c:333:13: warning: incorrect type in assignment (different base types) fdt_support.c:333:13: expected unsigned int [unsigned] [usertype] val fdt_support.c:333:13: got restricted __be32 [usertype] <noident> fdt_support.c:359:13: warning: incorrect type in assignment (different base types) fdt_support.c:359:13: expected unsigned int [unsigned] [usertype] val fdt_support.c:359:13: got restricted __be32 [usertype] <noident> fdt_support.c:373:21: warning: cast to restricted __be32 fdt_support.c:963:48: warning: incorrect type in argument 1 (different base types) fdt_support.c:963:48: expected restricted __be32 const [usertype] *p fdt_support.c:963:48: got unsigned int [usertype] *<noident> fdt_support.c:971:48: warning: incorrect type in argument 1 (different base types) fdt_support.c:971:48: expected restricted __be32 const [usertype] *p fdt_support.c:971:48: got unsigned int [usertype] *<noident> fdt_support.c:984:29: warning: incorrect type in argument 1 (different base types) fdt_support.c:984:29: expected restricted __be32 const [usertype] *cell fdt_support.c:984:29: got unsigned int [usertype] *addr fdt_support.c:996:32: warning: incorrect type in argument 1 (different base types) fdt_support.c:996:32: expected restricted __be32 const [usertype] *cell fdt_support.c:996:32: got unsigned int [usertype] *addr fdt_support.c:1041:41: warning: incorrect type in argument 1 (different base types) fdt_support.c:1041:41: expected restricted __be32 const [usertype] *cell fdt_support.c:1041:41: got unsigned int [usertype] *addr fdt_support.c:1053:41: warning: incorrect type in argument 2 (different base types) fdt_support.c:1053:41: expected restricted __be32 const [usertype] *range fdt_support.c:1053:41: got unsigned int const [usertype] *[assigned] ranges fdt_support.c:1064:53: warning: incorrect type in argument 2 (different base types) fdt_support.c:1064:53: expected restricted __be32 const [usertype] *addr fdt_support.c:1064:53: got unsigned int [usertype] *addr fdt_support.c:1110:50: warning: incorrect type in argument 2 (different base types) fdt_support.c:1110:50: expected restricted __be32 const [usertype] *addr fdt_support.c:1110:50: got unsigned int *<noident> fdt_support.c:1121:49: warning: incorrect type in argument 1 (different base types) fdt_support.c:1121:49: expected restricted __be32 const [usertype] *cell fdt_support.c:1121:49: got unsigned int *<noident> fdt_support.c:1147:60: warning: incorrect type in argument 2 (different base types) fdt_support.c:1147:60: expected restricted __be32 const [usertype] *addr fdt_support.c:1147:60: got unsigned int *<noident> fdt_support.c:1081:5: warning: symbol '__of_translate_address' was not declared. Should it be static? fdt_support.c:1154:5: error: symbol 'fdt_translate_address' redeclared with different type (originally declared at include/fdt_support.h:95) - incompatible argument 3 (different base types) fdt_support.c: In function 'fdt_node_offset_by_compat_reg': fdt_support.c:1173:17: warning: initialization discards 'const' qualifier from pointer target type [enabled by default] See also linux kernel commit 0131d897 "of/address: use proper endianess in get_flags". Signed-off-by: Kim Phillips <kim.phillips@freescale.com> Cc: Jerry Van Baren <gvb.uboot@gmail.com>
* treewide: include libfdt_env.h before fdt.hKim Phillips2013-02-073-2/+1
| | | | | | | | | | | and, if including libfdt.h which includes libfdt_env.h in the correct order, don't include fdt.h before libfdt.h. this is needed to get the fdt type definitions set from the project environment before fdt.h uses them. Signed-off-by: Kim Phillips <kim.phillips@freescale.com> Cc: Jerry Van Baren <gvb.uboot@gmail.com>
* Merge branch 'master' of git://www.denx.de/git/u-boot-microblazeTom Rini2013-02-042-0/+92
|\
| * microblaze: Add muldi3.c which contains routines for _muldi3David Holsgrove2013-02-042-0/+92
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Referenced arch/blackfin/lib/muldi3.c and the linux kernel. Resolves issue seen when building u-boot for HW_MUL=0; PLATFORM_CPPFLAGS += -mxl-soft-mul PLATFORM_CPPFLAGS += -mno-xl-multiply-high which resulted in error while linking to libgcc.a without mul hw (bs / m); libgcc.a(_muldi3.o): In function `__muldi3': .... src/gcc-4.6.2/libgcc/libgcc2.c:550: undefined reference to `_GLOBAL_OFFSET_TABLE_' This link failure would not occur if we used gcc instead of ld directly, as gcc will correctly use the crt's to resolve this link. Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
* | x86: Use generic global_dataSimon Glass2013-02-041-34/+3
| | | | | | | | | | | | Move x86 over to use generic global_data. Signed-off-by: Simon Glass <sjg@chromium.org>
* | sparc: Use generic global_dataSimon Glass2013-02-041-45/+1
| | | | | | | | | | | | Move sparc over to use generic global_data. Signed-off-by: Simon Glass <sjg@chromium.org>
* | sh: Use generic global_dataSimon Glass2013-02-041-19/+1
| | | | | | | | | | | | Move sh over to use generic global_data. Signed-off-by: Simon Glass <sjg@chromium.org>
* | sandbox: Use generic global_dataSimon Glass2013-02-041-24/+1
| | | | | | | | | | | | Move sandbox over to use generic global_data. Signed-off-by: Simon Glass <sjg@chromium.org>
* | powerpc: Use generic global_dataSimon Glass2013-02-041-46/+1
| | | | | | | | | | | | Move powerpc over to use generic global_data. Signed-off-by: Simon Glass <sjg@chromium.org>
* | openrisc: Use generic global_dataSimon Glass2013-02-041-24/+1
| | | | | | | | | | | | Move openrisc over to use generic global_data. Signed-off-by: Simon Glass <sjg@chromium.org>
* | nios2: Use generic global_dataSimon Glass2013-02-041-23/+1
| | | | | | | | | | | | | | Move nios2 over to use generic global_data. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Thomas Chou <thomas@wytron.com.tw>
* | nds32: Use generic global_dataSimon Glass2013-02-041-31/+1
| | | | | | | | | | | | Move nds32 over to use generic global_data. Signed-off-by: Simon Glass <sjg@chromium.org>
* | mips: Use generic global_dataSimon Glass2013-02-041-33/+1
| | | | | | | | | | | | Move mips over to use generic global_data. Signed-off-by: Simon Glass <sjg@chromium.org>
* | microblaze: Use generic global_dataSimon Glass2013-02-041-26/+1
| | | | | | | | | | | | | | Move microblaze over to use generic global_data. Signed-off-by: Simon Glass <sjg@chromium.org> Tested-by: Michal Simek <monstr@monstr.eu>
* | m68k: Use generic global_dataSimon Glass2013-02-041-38/+1
| | | | | | | | | | | | Move m68k over to use generic global_data. Signed-off-by: Simon Glass <sjg@chromium.org>
* | blackfin: Use generic global_dataSimon Glass2013-02-041-31/+1
| | | | | | | | | | | | Move blackfin over to use generic global_data. Signed-off-by: Simon Glass <sjg@chromium.org>
* | avr32: Use generic global_dataSimon Glass2013-02-041-28/+1
| | | | | | | | | | | | Move avr32 over to use generic global_data. Signed-off-by: Simon Glass <sjg@chromium.org>
* | arm: Use generic global_dataSimon Glass2013-02-041-37/+1
| | | | | | | | Signed-off-by: Simon Glass <sjg@chromium.org>
* | sandbox: Move ram_buf to arch_global_dataSimon Glass2013-02-043-5/+5
| | | | | | | | | | | | Move this field into arch_global_data and tidy up. Signed-off-by: Simon Glass <sjg@chromium.org>
* | avr32: Move cpu_hz to arch_global_dataSimon Glass2013-02-044-7/+7
| | | | | | | | | | | | Move this field into arch_global_data and tidy up. Signed-off-by: Simon Glass <sjg@chromium.org>
* | avr32: Move stack_end to arch_global_dataSimon Glass2013-02-043-5/+5
| | | | | | | | | | | | Move this field into arch_global_data and tidy up. Signed-off-by: Simon Glass <sjg@chromium.org>
* | mips: Move per_clk and dev_clk to arch_global_dataSimon Glass2013-02-041-4/+5
| | | | | | | | | | | | | | | | Move these field into arch_global_data and tidy up. The other CONFIG_JZSOC fields are used by various architectures, so just remove the #ifdef bracketing for these. Signed-off-by: Simon Glass <sjg@chromium.org>
* | m68k: Move CONFIG_EXTRA_CLOCK to arch_global_dataSimon Glass2013-02-046-26/+26
| | | | | | | | | | | | Move inp_clk, vco_clk and flb_clk into arch_global_data and tidy up. Signed-off-by: Simon Glass <sjg@chromium.org>
* | sparc: Drop kbd_status and reset_status from global_dataSimon Glass2013-02-041-4/+0
| | | | | | | | | | | | These fields is not used on sparc, so punt them. Signed-off-by: Simon Glass <sjg@chromium.org>
* | ppc: arm: Move sdhc_clk into arch_global_dataSimon Glass2013-02-047-23/+24
| | | | | | | | | | | | | | This is used by both powerpc and arm, but I think it still qualifies as architecture-specific. Signed-off-by: Simon Glass <sjg@chromium.org>
* | ppc: Move kbd_status to arch_global_dataSimon Glass2013-02-041-3/+3
| | | | | | | | | | | | Move this field into arch_global_data and tidy up. Signed-off-by: Simon Glass <sjg@chromium.org>
* | ppc: Move wdt_last to arch_global_dataSimon Glass2013-02-041-3/+3
| | | | | | | | | | | | Move this field into arch_global_data and tidy up. Signed-off-by: Simon Glass <sjg@chromium.org>
* | ppc: Move fpga_state to arch_global_dataSimon Glass2013-02-041-3/+3
| | | | | | | | | | | | Move this field into arch_global_data and tidy up. Signed-off-by: Simon Glass <sjg@chromium.org>
* | ppc: Remove console_addr from global dataSimon Glass2013-02-041-6/+0
| | | | | | | | | | | | This does not appear to be used, so punt it. Signed-off-by: Simon Glass <sjg@chromium.org>
* | ppc: Move mirror_hack to arch_global_dataSimon Glass2013-02-041-3/+3
| | | | | | | | | | | | Move this field into arch_global_data and tidy up. Signed-off-by: Simon Glass <sjg@chromium.org>
* | arm: Move uart_clk to arch_global_dataSimon Glass2013-02-043-7/+7
| | | | | | | | | | | | Move this field into arch_global_data and tidy up. Signed-off-by: Simon Glass <sjg@chromium.org>
* | ppc: Move dp_alloc_base, dp_alloc_top to arch_global_dataSimon Glass2013-02-044-32/+34
| | | | | | | | | | | | Move these fields into arch_global_data and tidy up. Signed-off-by: Simon Glass <sjg@chromium.org>
* | ppc: Move arbiter fields to arch_global_dataSimon Glass2013-02-042-17/+19
| | | | | | | | | | | | | | Move arbiter_event_attributes and arbiter_event_address into arch_global_data and tidy up. Signed-off-by: Simon Glass <sjg@chromium.org>
* | ppc: Move reset_status to arch_global_dataSimon Glass2013-02-045-7/+7
| | | | | | | | | | | | Move this field into arch_global_data and tidy up. Signed-off-by: Simon Glass <sjg@chromium.org>
* | ppc: Move mpc8220 clocks to arch_global_dataSimon Glass2013-02-043-19/+20
| | | | | | | | | | | | | | Move these fields into arch_global_data and tidy up. The bExtUart field does not appear to be used, so punt it. Signed-off-by: Simon Glass <sjg@chromium.org>
* | ppc: Move mpc512x clocks to arch_global_dataSimon Glass2013-02-047-15/+18
| | | | | | | | | | | | Move ips_clk and csb_clk into arch_global_data and tidy up. Signed-off-by: Simon Glass <sjg@chromium.org>
* | ppc: Move mpc5xxx clocks to arch_global_dataSimon Glass2013-02-047-17/+25
| | | | | | | | | | | | Move ipb_clk and pci_clk into arch_global_data and tidy up. Signed-off-by: Simon Glass <sjg@chromium.org>
* | ppc: Move used_tlb_cams to arch_global_dataSimon Glass2013-02-042-7/+7
| | | | | | | | | | | | Move this field into arch_global_data and tidy up. Signed-off-by: Simon Glass <sjg@chromium.org>
* | ppc: Move used_laws to arch_global_dataSimon Glass2013-02-042-11/+11
| | | | | | | | | | | | Move this field into arch_global_data and tidy up. Signed-off-by: Simon Glass <sjg@chromium.org>
* | ppc: Move CONFIG_QE to arch_global_dataSimon Glass2013-02-043-12/+11
| | | | | | | | | | | | Move the quantative easing fields into arch_global_data and tidy up. Signed-off-by: Simon Glass <sjg@chromium.org>
* | ppc: m68k: Move i2c1_clk, i2c2_clk to arch_global_dataSimon Glass2013-02-0411-28/+31
| | | | | | | | | | | | | | Move these fields into arch_global_data and tidy up. This is needed for both ppc and m68k since they share the i2c driver. Signed-off-by: Simon Glass <sjg@chromium.org>
* | ppc: Move lbc_clk and cpu to arch_global_dataSimon Glass2013-02-049-19/+20
| | | | | | | | | | | | | | | | Move these fields into arch_global_data and tidy up. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Update for bsc9132qds.c, b4860qds.c] Signed-off-by: Tom Rini <trini@ti.com>
* | ppc: Move mpc83xx clock fields to arch_global_dataSimon Glass2013-02-015-76/+86
| | | | | | | | | | | | | | Move al mpc83xx fields into arch_global_data and tidy up. Also indent the nested #ifdef for clarity. Signed-off-by: Simon Glass <sjg@chromium.org>
* | ppc: Move clock fields to arch_global_dataSimon Glass2013-02-014-15/+19
| | | | | | | | | | | | | | | | Move vco_out, cpm_clk, scc_clk, brg_clk into arch_global_data and tidy up. Leave pci_clk on its own since this should really depend only on CONFIG_PCI and not any particular chip type. Signed-off-by: Simon Glass <sjg@chromium.org>
* | ppc: Remove extra pci_clk fields from global_dataSimon Glass2013-02-011-7/+2
| | | | | | | | | | | | | | | | | | | | | | PPC has several of these fields, selected by chip type, although only one is ever compiled in. Instead, use a single field. It would be nice if this could be selected by CONFIG_PCI, but some chips (e.g. mpc5xxx) use pci_clk even when CONFIG_PCI is not enabled. Signed-off-by: Simon Glass <sjg@chromium.org>
* | ppc: Move brg_clk to arch_global_dataSimon Glass2013-02-0110-17/+22
| | | | | | | | | | | | Move this field into arch_global_data and tidy up. Signed-off-by: Simon Glass <sjg@chromium.org>
* | x86: Remove reset_status, relocoff from global_dataSimon Glass2013-02-011-2/+0
| | | | | | | | | | | | These fields are not used on x86, so punt them. Signed-off-by: Simon Glass <sjg@chromium.org>
* | x86: Move gd_addr into arch_global_dataSimon Glass2013-02-012-4/+3
| | | | | | | | | | | | | | | | Move this field into arch_global_data and tidy up. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Add arch/x86/cpu/cpu.c changes after Graeme's comments] Signed-off-by: Tom Rini <trini@ti.com>
* | x86: Set up the global data pointer in C instead of asmSimon Glass2013-02-012-7/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We currently assume that the global data pointer is at the start of struct global_data. We want to remove this restriction, and it is easiest to do this in C. Remove the asm code and add equivalent code in C. This idea was proposed by Graeme Russ here: http://patchwork.ozlabs.org/patch/199741/ Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Apply Graeme Russ' comments http://patchwork.ozlabs.org/patch/206305/ here, re-order] Signed-off-by: Tom Rini <trini@ti.com>
OpenPOWER on IntegriCloud