<feed xmlns='http://www.w3.org/2005/Atom'>
<title>lwn.git/arch/arm/mach-s5pv310/platsmp.c, branch docs-fixes</title>
<subtitle>Linux kernel documentation tree maintained by Jonathan Corbet</subtitle>
<id>http://mirrors.hust.edu.cn/git/lwn.git/atom?h=docs-fixes</id>
<link rel='self' href='http://mirrors.hust.edu.cn/git/lwn.git/atom?h=docs-fixes'/>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/'/>
<updated>2011-02-22T04:51:14+00:00</updated>
<entry>
<title>ARM: EXYNOS4: Add EXYNOS4 CPU initialization support</title>
<updated>2011-02-22T04:51:14+00:00</updated>
<author>
<name>Kukjin Kim</name>
<email>kgene.kim@samsung.com</email>
</author>
<published>2011-02-14T07:33:10+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=7d30e8b3815f804139271dfc31962ab74ce89650'/>
<id>urn:sha1:7d30e8b3815f804139271dfc31962ab74ce89650</id>
<content type='text'>
This patch adds EXYNOS4 CPU support files in mach-exynos4,
and basically they are moved from mach-s5pv310 so that it
can support Samsung's new CPU name, EXYNOS4.
The EXYNOS4 ingegrates a ARM Cortex A9 multi-core.

Signed-off-by: Kukjin Kim &lt;kgene.kim@samsung.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'misc' into devel</title>
<updated>2011-01-06T22:32:52+00:00</updated>
<author>
<name>Russell King</name>
<email>rmk+kernel@arm.linux.org.uk</email>
</author>
<published>2011-01-06T22:32:52+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=4073723acb9cdcdbe4df9c0e0c376c65d1697e43'/>
<id>urn:sha1:4073723acb9cdcdbe4df9c0e0c376c65d1697e43</id>
<content type='text'>
Conflicts:
	arch/arm/Kconfig
	arch/arm/common/Makefile
	arch/arm/kernel/Makefile
	arch/arm/kernel/smp.c
</content>
</entry>
<entry>
<title>ARM: Fix subtle race in CPU pen_release hotplug code</title>
<updated>2010-12-20T15:09:13+00:00</updated>
<author>
<name>Russell King</name>
<email>rmk+kernel@arm.linux.org.uk</email>
</author>
<published>2010-12-18T10:53:12+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=3705ff6da538aff6dba535e2e9cbcbb9456d0d53'/>
<id>urn:sha1:3705ff6da538aff6dba535e2e9cbcbb9456d0d53</id>
<content type='text'>
There is a subtle race in the CPU hotplug code, where a CPU which has
been offlined can online itself before being requested, which results
in things going astray on the next online/offline cycle.

What happens in the normal online/offline/online cycle is:

	CPU0			CPU3
	requests boot of CPU3
	pen_release = 3
	flush cache line
				checks pen_release, reads 3
				starts boot
				pen_release = -1
	... requests CPU3 offline ...
				... dies ...
				checks pen_release, reads -1
	requests boot of CPU3
	pen_release = 3
	flush cache line
				checks pen_release, reads 3
				starts boot
				pen_release = -1

However, as the write of -1 of pen_release is not fully flushed back to
memory, and the checking of pen_release is done with caches disabled,
this allows CPU3 the opportunity to read the old value of pen_release:

	CPU0			CPU3
	requests boot of CPU3
	pen_release = 3
	flush cache line
				checks pen_release, reads 3
				starts boot
				pen_release = -1
	... requests CPU3 offline ...
				... dies ...
				checks pen_release, reads 3
				starts boot
				pen_release = -1
	requests boot of CPU3
	pen_release = 3
	flush cache line

Fix this by grouping the write of pen_release along with its cache line
flushing code to ensure that any update to pen_release is always pushed
out to physical memory.

Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>ARM: SMP: consolidate trace_hardirqs_off() into common SMP code</title>
<updated>2010-12-20T15:09:09+00:00</updated>
<author>
<name>Russell King</name>
<email>rmk+kernel@arm.linux.org.uk</email>
</author>
<published>2010-12-03T15:00:49+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=2c0136dba4e43b0916ccc9ecc7f11e6d6b73f046'/>
<id>urn:sha1:2c0136dba4e43b0916ccc9ecc7f11e6d6b73f046</id>
<content type='text'>
All platforms call trace_hardirqs_off() in their secondary startup code,
so move this into the core SMP code - it doesn't need to be in the
per-platform code.

Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>ARM: SMP: consolidate the common parts of smp_prepare_cpus()</title>
<updated>2010-12-20T15:09:08+00:00</updated>
<author>
<name>Russell King</name>
<email>rmk+kernel@arm.linux.org.uk</email>
</author>
<published>2010-12-03T11:09:48+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=05c74a6cbcfb416286a947668ba32f63d99fe74a'/>
<id>urn:sha1:05c74a6cbcfb416286a947668ba32f63d99fe74a</id>
<content type='text'>
There is a certain amount of smp_prepare_cpus() which doesn't belong
in the platform support code - that is, code which is invariant to the
SMP implementation.  Move this code into arch/arm/kernel/smp.c, and
add a platform_ prefix to the original function.

Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>ARM: SMP: Clean up ncores sanity checks</title>
<updated>2010-12-20T15:08:27+00:00</updated>
<author>
<name>Russell King</name>
<email>rmk+kernel@arm.linux.org.uk</email>
</author>
<published>2010-12-03T19:29:53+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=8975b6c0fdd57e061f4d1040163778ceaf340ad8'/>
<id>urn:sha1:8975b6c0fdd57e061f4d1040163778ceaf340ad8</id>
<content type='text'>
scu_get_core_count() never returns zero cores, so we don't need to
check and correct if ncores is zero.

Tegra was missing the check against NR_CPUS, leading to a potential
bitfield overflow if this becomes the case.

Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>ARM: GIC: Remove MMIO address from gic_cpu_init, rename to gic_secondary_init</title>
<updated>2010-12-14T19:21:40+00:00</updated>
<author>
<name>Russell King</name>
<email>rmk+kernel@arm.linux.org.uk</email>
</author>
<published>2010-12-04T16:01:03+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=384895330e0f3954d9478fd0853145f9c169df12'/>
<id>urn:sha1:384895330e0f3954d9478fd0853145f9c169df12</id>
<content type='text'>
We don't need to re-pass the base address for the CPU interfaces to the
GIC for secondary CPUs, as it will never be different from the boot CPU
- and even if it was, we'd overwrite the boot CPU's base address.

Get rid of this argument, and rename to gic_secondary_init().

Reviewed-by: Catalin Marinas &lt;catalin.marinas@arm.com&gt;
Tested-by: Abhijeet Dharmapurikar &lt;adharmap@codeaurora.org&gt;
Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>ARM: SMP: pass an ipi number to smp_cross_call()</title>
<updated>2010-12-03T08:26:30+00:00</updated>
<author>
<name>Russell King</name>
<email>rmk+kernel@arm.linux.org.uk</email>
</author>
<published>2010-11-15T09:42:08+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=ad3b6993b9c5482e8a2ec5aed181538c921fdcbd'/>
<id>urn:sha1:ad3b6993b9c5482e8a2ec5aed181538c921fdcbd</id>
<content type='text'>
This allows us to use smp_cross_call() to trigger a number of different
software generated interrupts, rather than combining them all on one
SGI.  Recover the SGI number via do_IPI.

Reviewed-by: Catalin Marinas &lt;catalin.marinas@arm.com&gt;
Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>ARM: S5PV310: Fix on Secondary CPU startup</title>
<updated>2010-08-27T09:29:58+00:00</updated>
<author>
<name>Changhwan Youn</name>
<email>chaos.youn@samsung.com</email>
</author>
<published>2010-08-27T08:57:44+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=766211e74818e655593fd3272cbf84868220f9e5'/>
<id>urn:sha1:766211e74818e655593fd3272cbf84868220f9e5</id>
<content type='text'>
Following occurs on boot message without this patch.
    CPU1: processor failed to boot
    Brought up 1 CPUs
    SMP: Total of 1 processors activated...

This patch adds SYSRAM mapping for fixing Secondary CPU startup.
    CPU1: Booted secondary processor
    Brought up 2 CPUs
    SMP: Total of 2 processors activated...

Signed-off-by: Changhwan Youn &lt;chaos.youn@samsung.com&gt;
Signed-off-by: Kukjin Kim &lt;kgene.kim@samsung.com&gt;
</content>
</entry>
<entry>
<title>ARM: S5PV310: Add new CPU initialization support</title>
<updated>2010-08-05T09:32:41+00:00</updated>
<author>
<name>Changhwan Youn</name>
<email>chaos.youn@samsung.com</email>
</author>
<published>2010-07-26T12:08:52+00:00</published>
<link rel='alternate' type='text/html' href='http://mirrors.hust.edu.cn/git/lwn.git/commit/?id=2b12b5c4ff9e0f1c5f4e5d5bde57b919fe522df2'/>
<id>urn:sha1:2b12b5c4ff9e0f1c5f4e5d5bde57b919fe522df2</id>
<content type='text'>
This patch adds Samsung S5PV310/S5PC210 CPU support.
The S5PV310/S5PC210 integrates a ARM Cortex A9 multi-core.

Signed-off-by: Changhwan Youn &lt;chaos.youn@samsung.com&gt;
Signed-off-by: Jongpill Lee &lt;boyko.lee@samsung.com&gt;
Signed-off-by: Jiseong Oh &lt;jiseong.oh@samsung.com&gt;
[kgene.kim@samsung.com: fix build errors]
Signed-off-by: Kukjin Kim &lt;kgene.kim@samsung.com&gt;
</content>
</entry>
</feed>
