<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/arch/xtensa/kernel, branch linux-3.15.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.15.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.15.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2014-08-07T23:53:53Z</updated>
<entry>
<title>xtensa: add fixup for double exception raised in window overflow</title>
<updated>2014-08-07T23:53:53Z</updated>
<author>
<name>Max Filippov</name>
</author>
<published>2014-05-24T17:48:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=809c61dac354991792eeb910ea3b3962c28f62af'/>
<id>urn:sha1:809c61dac354991792eeb910ea3b3962c28f62af</id>
<content type='text'>
commit 17290231df16eeee5dfc198dbf5ee4b419996dcd upstream.

There are two FIXMEs in the double exception handler 'for the extremely
unlikely case'. This case gets hit by gcc during kernel build once in
a few hours, resulting in an unrecoverable exception condition.

Provide missing fixup routine to handle this case. Double exception
literals now need 8 more bytes, add them to the linker script.

Also replace bbsi instructions with bbsi.l as we're branching depending
on 8th and 7th LSB-based bits of exception address.

This may be tested by adding the explicit DTLB invalidation to window
overflow handlers, like the following:

#    --- a/arch/xtensa/kernel/vectors.S
#    +++ b/arch/xtensa/kernel/vectors.S
#    @@ -592,6 +592,14 @@ ENDPROC(_WindowUnderflow4)
#     ENTRY_ALIGN64(_WindowOverflow8)
#
#    	s32e	a0, a9, -16
#    +	bbsi.l	a9, 31, 1f
#    +	rsr	a0, ccount
#    +	bbsi.l	a0, 4, 1f
#    +	pdtlb	a0, a9
#    +	idtlb	a0
#    +	movi	a0, 9
#    +	idtlb	a0
#    +1:
#    	l32e    a0, a1, -12
#    	s32e    a2, a9,  -8
#    	s32e    a1, a9, -12

Signed-off-by: Max Filippov &lt;jcmvbkbc@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>Merge tag 'xtensa-next-20140503' of git://github.com/czankel/xtensa-linux</title>
<updated>2014-05-05T22:36:59Z</updated>
<author>
<name>Linus Torvalds</name>
</author>
<published>2014-05-05T22:36:59Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=03787ff6f9156e43019f3f4b69cb6212b3a47f65'/>
<id>urn:sha1:03787ff6f9156e43019f3f4b69cb6212b3a47f65</id>
<content type='text'>
Pull Xtensa fixes from Chris Zankel:
 - Fixes allmodconfig, allnoconfig builds
 - Adds highmem support
 - Enables build-time exception table sorting.

* tag 'xtensa-next-20140503' of git://github.com/czankel/xtensa-linux:
  xtensa: ISS: don't depend on CONFIG_TTY
  xtensa: xt2000: drop redundant sysmem initialization
  xtensa: add support for KC705
  xtensa: xtfpga: introduce SoC I/O bus
  xtensa: add HIGHMEM support
  xtensa: optimize local_flush_tlb_kernel_range
  xtensa: dump sysmem from the bootmem_init
  xtensa: handle memmap kernel option
  xtensa: keep sysmem banks ordered in mem_reserve
  xtensa: keep sysmem banks ordered in add_sysmem_bank
  xtensa: split bootparam and kernel meminfo
  xtensa: enable sorting extable at build time
  xtensa: export __{invalidate,flush}_dcache_range
  xtensa: Export __invalidate_icache_range
</content>
</entry>
<entry>
<title>xtensa: optimize local_flush_tlb_kernel_range</title>
<updated>2014-04-06T17:29:17Z</updated>
<author>
<name>Max Filippov</name>
</author>
<published>2014-02-14T10:08:48Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=04c6b3e2b5e5c1dbd99ad7620033eafd05ff4c26'/>
<id>urn:sha1:04c6b3e2b5e5c1dbd99ad7620033eafd05ff4c26</id>
<content type='text'>
Don't flush whole TLB if only a small kernel range is requested.

Signed-off-by: Max Filippov &lt;jcmvbkbc@gmail.com&gt;
</content>
</entry>
<entry>
<title>xtensa: handle memmap kernel option</title>
<updated>2014-04-01T21:35:54Z</updated>
<author>
<name>Max Filippov</name>
</author>
<published>2014-03-21T17:04:40Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=06bd2824f7dcbfb8dcd13519239a53d13298d238'/>
<id>urn:sha1:06bd2824f7dcbfb8dcd13519239a53d13298d238</id>
<content type='text'>
This option is useful for reserving memory regions for secondary cores
in AMP configurations.

Implement the following memmap variants:
- memmap=nn[KMG]@ss[KMG]: force usage of a specific region of memory;
- memmap=nn[KMG]$ss[KMG]: mark specified memory as reserved;
- memmap=nn[KMG]: set end of memory.

Signed-off-by: Max Filippov &lt;jcmvbkbc@gmail.com&gt;
</content>
</entry>
<entry>
<title>xtensa: keep sysmem banks ordered in mem_reserve</title>
<updated>2014-04-01T21:35:53Z</updated>
<author>
<name>Max Filippov</name>
</author>
<published>2014-03-22T23:24:45Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6232791833785ae591b211609f6f7c4faa7c6e55'/>
<id>urn:sha1:6232791833785ae591b211609f6f7c4faa7c6e55</id>
<content type='text'>
Rewrite mem_reserve so that it keeps bank order.
Also make its return code more traditional.

Signed-off-by: Max Filippov &lt;jcmvbkbc@gmail.com&gt;
</content>
</entry>
<entry>
<title>xtensa: split bootparam and kernel meminfo</title>
<updated>2014-04-01T21:35:51Z</updated>
<author>
<name>Max Filippov</name>
</author>
<published>2014-03-22T23:17:43Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9ba067f93f1eec0d241f002812806b873dd4f802'/>
<id>urn:sha1:9ba067f93f1eec0d241f002812806b873dd4f802</id>
<content type='text'>
Bootparam meminfo is a bootloader ABI, kernel meminfo is for the kernel
bookkeeping, keep them separate. Kernel doesn't care of memory region
types, so drop the type field and don't pass it to add_sysmem_bank.
Move kernel sysmem structures and prototypes to asm/sysmem.h and sysmem
variable and add_sysmem_bank to mm/init.c

Signed-off-by: Max Filippov &lt;jcmvbkbc@gmail.com&gt;
</content>
</entry>
<entry>
<title>xtensa: export __{invalidate,flush}_dcache_range</title>
<updated>2014-04-01T21:35:50Z</updated>
<author>
<name>Max Filippov</name>
</author>
<published>2014-03-21T17:05:16Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a3cfda9d2f9ca067a2757b9d85d98cfbaf1e8c63'/>
<id>urn:sha1:a3cfda9d2f9ca067a2757b9d85d98cfbaf1e8c63</id>
<content type='text'>
Signed-off-by: Max Filippov &lt;jcmvbkbc@gmail.com&gt;
</content>
</entry>
<entry>
<title>xtensa: Export __invalidate_icache_range</title>
<updated>2014-04-01T21:35:49Z</updated>
<author>
<name>Geert Uytterhoeven</name>
</author>
<published>2014-02-27T13:41:14Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=eb8451e0aee1816395506e97965d0917754072de'/>
<id>urn:sha1:eb8451e0aee1816395506e97965d0917754072de</id>
<content type='text'>
When modular code calls flush_icache_range():

    ERROR: "__invalidate_icache_range" [drivers/misc/lkdtm.ko] undefined!
    make[1]: *** [__modpost] Error 1

Signed-off-by: Geert Uytterhoeven &lt;geert@linux-m68k.org&gt;
Reviewed-by: Kees Cook &lt;keescook@chromium.org&gt;
Signed-off-by: Max Filippov &lt;jcmvbkbc@gmail.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'irq/for-gpio' into irq/core</title>
<updated>2014-03-12T15:01:07Z</updated>
<author>
<name>Thomas Gleixner</name>
</author>
<published>2014-03-12T15:01:07Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ffb12cf002edbc5927079f51bebde428d601f723'/>
<id>urn:sha1:ffb12cf002edbc5927079f51bebde428d601f723</id>
<content type='text'>
Merge the request/release callbacks which are in a separate branch for
consumption by the gpio folks.

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
<entry>
<title>xtensa: Use irq_set_affinity instead of homebrewn code</title>
<updated>2014-03-04T16:37:55Z</updated>
<author>
<name>Thomas Gleixner</name>
</author>
<published>2014-02-23T21:40:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b58d971da3433654787a88c40c6fca00f5bbaa04'/>
<id>urn:sha1:b58d971da3433654787a88c40c6fca00f5bbaa04</id>
<content type='text'>
There is no point in having an incomplete copy of irq_set_affinity()
for the hotplug irq migration code.

Use the core function instead and while at it switch to
for_each_active_irq()

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Cc: Peter Zijlstra &lt;peterz@infradead.org&gt;
Cc: Chris Zankel &lt;chris@zankel.net&gt;
Cc: xtensa &lt;linux-xtensa@linux-xtensa.org&gt;
Link: http://lkml.kernel.org/r/20140223212736.664624945@linutronix.de
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
</feed>
