1
linux/arch/arm
Russell King f00ec48fad ARM: Allow SMP kernels to boot on UP systems
UP systems do not implement all the instructions that SMP systems have,
so in order to boot a SMP kernel on a UP system, we need to rewrite
parts of the kernel.

Do this using an 'alternatives' scheme, where the kernel code and data
is modified prior to initialization to replace the SMP instructions,
thereby rendering the problematical code ineffectual.  We use the linker
to generate a list of 32-bit word locations and their replacement values,
and run through these replacements when we detect a UP system.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2010-10-04 20:23:36 +01:00
..
boot ARM: Fix build error when using KCONFIG_CONFIG 2010-09-19 16:18:37 +01:00
common ARM: 6349/1: sa1111: move __sa1111_probe() to .devinit.text 2010-10-04 20:20:44 +01:00
configs omap: Fix omap_4430sdp_defconfig for make oldconfig 2010-08-16 09:22:04 +03:00
include/asm ARM: Allow SMP kernels to boot on UP systems 2010-10-04 20:23:36 +01:00
kernel ARM: Allow SMP kernels to boot on UP systems 2010-10-04 20:23:36 +01:00
lib Merge branch 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm 2010-08-03 14:31:24 -07:00
mach-aaec2000
mach-at91 ARM: 6406/1: at91sam9g45: fix i2c bus speed 2010-09-23 15:08:48 +01:00
mach-bcmring
mach-clps711x ARM: 6283/1: Remove useless PCIO_BASE definitions 2010-08-05 10:35:49 +01:00
mach-cns3xxx
mach-davinci ARM: 6409/1: davinci: map sram using MT_MEMORY_NONCACHED instead of MT_DEVICE 2010-09-25 15:58:40 +01:00
mach-dove ARM: dove: fix __io() definition to use bus based offset 2010-09-19 22:43:42 -04:00
mach-ebsa110
mach-ep93xx ARM: 6359/1: ep93xx: move clock initialization earlier 2010-09-08 12:28:39 +01:00
mach-footbridge
mach-gemini
mach-h720x ARM: 6283/1: Remove useless PCIO_BASE definitions 2010-08-05 10:35:49 +01:00
mach-imx ARM: imx: fix build failure concerning otg/ulpi 2010-08-23 20:50:17 -07:00
mach-integrator ARM: 6283/1: Remove useless PCIO_BASE definitions 2010-08-05 10:35:49 +01:00
mach-iop13xx
mach-iop32x
mach-iop33x
mach-ixp4xx arm: fix "arm: fix pci_set_consistent_dma_mask for dmabounce devices" 2010-09-22 17:22:38 -07:00
mach-ixp23xx ARM: 6283/1: Remove useless PCIO_BASE definitions 2010-08-05 10:35:49 +01:00
mach-ixp2000
mach-kirkwood ARM: kirkwood: Unbreak PCIe I/O port 2010-09-19 22:43:25 -04:00
mach-ks8695
mach-lh7a40x
mach-loki
mach-lpc32xx
mach-mmp ARM: pxa168: fix corrected reset vector 2010-09-25 09:47:03 +08:00
mach-msm Merge branch 'msm-core' of git://codeaurora.org/quic/kernel/dwalker/linux-msm 2010-08-12 10:07:32 -07:00
mach-mv78xx0
mach-mx3 Merge branch 'imx-for-2.6.36' of git://git.pengutronix.de/git/imx/linux-2.6 2010-09-01 10:08:50 +01:00
mach-mx5 mx5/clock: fix clear bit fields issue in _clk_ccgr_disable function 2010-08-21 12:22:43 +02:00
mach-mx25 Merge branch 'imx-for-2.6.36' of git://git.pengutronix.de/git/imx/linux-2.6 2010-09-01 10:08:50 +01:00
mach-mxc91231
mach-netx
mach-nomadik
mach-ns9xxx
mach-nuc93x
mach-omap1 Merge branch 'v2.6.35-omap-mailbox-for-next' of git://gitorious.org/~doyu/lk/mainline into omap-for-linus 2010-08-04 16:10:38 +03:00
mach-omap2 OMAP3: PM: ensure IO wakeups are properly disabled 2010-08-16 09:22:05 +03:00
mach-orion5x ARM: Fix gen_nand probe structures contents 2010-08-12 02:21:18 +01:00
mach-pnx4008
mach-pxa Merge master.kernel.org:/home/rmk/linux-2.6-arm 2010-09-27 12:32:36 -07:00
mach-realview ARM: Provide common header for hard_smp_processor_id() 2010-10-04 20:20:45 +01:00
mach-rpc
mach-s3c24a0/include/mach
mach-s3c64xx ARM: S3C64XX: Add IORESOURCE_IRQ_HIGHLEVEL flag to dm9000 on mach-real6410 2010-09-18 09:54:55 +09:00
mach-s3c2400
mach-s3c2410 ARM: SAMSUNG: Fix on build warning regarding VMALLOC_END type 2010-08-27 15:28:38 +09:00
mach-s3c2412
mach-s3c2416 s3c-fb: add device name initialization 2010-08-11 08:59:10 -07:00
mach-s3c2440 panic: keep blinking in spite of long spin timer mode 2010-08-11 08:59:22 -07:00
mach-s3c2443 s3c-fb: add device name initialization 2010-08-11 08:59:10 -07:00
mach-s5p6440 ARM: SAMSUNG: Fix on build warning regarding VMALLOC_END type 2010-08-27 15:28:38 +09:00
mach-s5p6442 ARM: SAMSUNG: Fix on build warning regarding VMALLOC_END type 2010-08-27 15:28:38 +09:00
mach-s5pc100 Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm 2010-08-11 09:13:19 -07:00
mach-s5pv210 ARM: S5PV210: Add FIMC clocks 2010-09-14 17:59:16 +09:00
mach-s5pv310 ARM: Provide common header for hard_smp_processor_id() 2010-10-04 20:20:45 +01:00
mach-sa1100 Merge branch 'devel' of git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6 into devel-stable 2010-08-06 18:10:25 +01:00
mach-shark
mach-shmobile ARM: mach-shmobile: ap4evb: fix write protect for SDHI1 2010-08-20 20:41:23 +09:00
mach-spear3xx
mach-spear6xx
mach-stmp37xx
mach-stmp378x
mach-tegra ARM: Provide common header for hard_smp_processor_id() 2010-10-04 20:20:45 +01:00
mach-u300 ARM: 6377/1: supply _cansleep gpio function to U300 2010-09-17 10:16:49 +01:00
mach-ux500 ARM: Provide common header for hard_smp_processor_id() 2010-10-04 20:20:45 +01:00
mach-versatile ARM: 6282/1: Remove useless definitions from versatile hardware.h 2010-08-05 10:35:49 +01:00
mach-vexpress ARM: Provide common header for hard_smp_processor_id() 2010-10-04 20:20:45 +01:00
mach-w90x900 i2c/nuc900: add i2c driver support for nuc900 2010-08-11 00:34:38 +01:00
mm ARM: Allow SMP kernels to boot on UP systems 2010-10-04 20:23:36 +01:00
nwfpe
oprofile
plat-iop
plat-mxc ARM: imx: set cache line size to 64 bytes for i.MX5 2010-08-21 12:22:43 +02:00
plat-nomadik ARM: 6376/1: plat-nomadik: MTU: Change prescaler limit and comment updates 2010-09-17 10:16:48 +01:00
plat-omap ARM: Provide common header for hard_smp_processor_id() 2010-10-04 20:20:45 +01:00
plat-orion Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 2010-08-07 17:07:31 -07:00
plat-pxa ARM: pxa: Make id const in pwm_probe() 2010-08-30 09:59:44 +08:00
plat-s3c24xx
plat-s5p ARM: S5P: Decrease IO Registers memory region size on FIMC 2010-09-14 17:57:55 +09:00
plat-samsung ARM: SAMSUNG: Fix on s5p_gpio_[get,set]_drvstr 2010-09-14 17:59:31 +09:00
plat-spear Merge branch 'master' into for-next 2010-08-04 15:14:38 +02:00
plat-stmp3xxx
plat-versatile
tools ARM: Update mach-types 2010-09-09 22:49:26 +01:00
vfp
Kconfig ARM: Allow SMP kernels to boot on UP systems 2010-10-04 20:23:36 +01:00
Kconfig-nommu
Kconfig.debug
Makefile ARM: 6328/1: Build with -fno-dwarf2-cfi-asm 2010-08-14 23:58:43 +01:00