<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/arch/arc/Kconfig, branch linux-4.11.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.11.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.11.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2017-04-20T22:37:49Z</updated>
<entry>
<title>ARCv2: entry: save Accumulator register pair (r58:59) if present</title>
<updated>2017-04-20T22:37:49Z</updated>
<author>
<name>Vineet Gupta</name>
</author>
<published>2017-04-20T22:36:51Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3d5e80125a6e5649c6bdad8d5780e39ea422c67d'/>
<id>urn:sha1:3d5e80125a6e5649c6bdad8d5780e39ea422c67d</id>
<content type='text'>
Accumulator is present in configs with FPU and/or DSP MPY (mpy &gt; 6)

Instead of doing this in pt_regs (and thus every kernel entry/exit),
this could have been done in context switch (and for user task only) as
currently kernel doesn't clobber these registers for its own accord.
However we will soon start using 64-bit multiply instructions for kernel
which can clobber these. Also gcc folks also plan to start using these
as GPRs, hence better to always save/restore them

Signed-off-by: Vineet Gupta &lt;vgupta@synopsys.com&gt;
</content>
</entry>
<entry>
<title>ARC: [plat-*] ARC_HAS_COH_CACHES no longer relevant</title>
<updated>2017-02-06T17:37:57Z</updated>
<author>
<name>Vineet Gupta</name>
</author>
<published>2017-02-02T17:09:50Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8ba605b607b7278548c1092b2ac36381627f0839'/>
<id>urn:sha1:8ba605b607b7278548c1092b2ac36381627f0839</id>
<content type='text'>
A typical SMP system expects cache coherency. Initial NPS platform
support was slated to be SMP w/o cache coherency.

However it seems the platform now selects that option, so there is no
point in keeping it around.

Signed-off-by: Vineet Gupta &lt;vgupta@synopsys.com&gt;
</content>
</entry>
<entry>
<title>ARCv2: intc: Rework the build time irq count information</title>
<updated>2017-02-06T17:37:57Z</updated>
<author>
<name>Yuriy Kolerov</name>
</author>
<published>2017-01-31T11:45:22Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f33b8cddc8ad8ce83cd3214406bcf68ec6c4d8ec'/>
<id>urn:sha1:f33b8cddc8ad8ce83cd3214406bcf68ec6c4d8ec</id>
<content type='text'>
Currently Kconfig knob ARC_NUMBER_OF_INTERRUPTS is used as indicator of
hard irq count. But it is flawed that it doesn't affect
 - NR_IRQS     : for number of virtual interrupts
 - NR_CPU_IRQS : for number of hardware interrupts

Moreover the actual hardware irq count might still not be same as
ARC_NUMBER_OF_INTERRUPTS. So use the information availble in the
Build Configuration Registers and get rid of the Kconfig option.

We still need "some" build time info about irq count to set up
sufficient number of vector table entries. This is done with a
sufficiently large NR_CPU_IRQS which will eventually be used soley for
that purpose (subsequent patches will remove its usage elsewhere)

So to summarize what this patch does:

  * NR_CPU_IRQS defines a maximum number of hardware interrupts.
  * Remove ARC_NUMBER_OF_INTERRUPTS option and create interrupts
    table for all possible hardware interrupts.
  * Increase a maximum number of virtual IRQs to 512. ARCv2 can
    support 240 interrupts in the core interrupts controllers
    and 128 interrupts in IDU. Thus 512 virtual IRQs must be
    enough for most configurations of boards.

This patch leads to NR_CPU_IRQS in 2 places, to reduce the overall
churn. The next patch will remove the 2nd definition anyways.

Signed-off-by: Yuriy Kolerov &lt;yuriy.kolerov@synopsys.com&gt;
Signed-off-by: Vineet Gupta &lt;vgupta@synopsys.com&gt;
[vgupta: reworked the changelog a bit]
</content>
</entry>
<entry>
<title>ARC: module: Fix !CONFIG_ARC_DW2_UNWIND builds</title>
<updated>2017-01-18T19:17:44Z</updated>
<author>
<name>Vineet Gupta</name>
</author>
<published>2017-01-16T18:48:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=eb1357d942e5d96de6b4c20a8ffa55acf96233a2'/>
<id>urn:sha1:eb1357d942e5d96de6b4c20a8ffa55acf96233a2</id>
<content type='text'>
commit d65283f7b695b5 added mod-&gt;arch.secstr under
CONFIG_ARC_DW2_UNWIND, but used it unconditionally which broke builds
when the option was disabled. Fix that by adjusting the #ifdef guard.

And while at it add a missing guard (for unwinder) in module.c as well

Reported-by: Waldemar Brodkorb &lt;wbx@openadk.org&gt;
Cc: stable@vger.kernel.org    #4.9
Fixes: d65283f7b695b5 ("ARC: module: elide loop to save reference to .eh_frame")
Tested-by: Anton Kolesov &lt;akolesov@synopsys.com&gt;
Reviewed-by: Alexey Brodkin &lt;abrodkin@synopsys.com&gt;
[abrodkin: provided fixlet to Kconfig per failure in allnoconfig build]
Signed-off-by: Vineet Gupta &lt;vgupta@synopsys.com&gt;
</content>
</entry>
<entry>
<title>ARC: enable SG chaining</title>
<updated>2016-12-19T02:45:32Z</updated>
<author>
<name>Vladimir Kondratiev</name>
</author>
<published>2016-12-14T08:36:47Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=983eeba7d2a854b540bd25c9e2311778408d9730'/>
<id>urn:sha1:983eeba7d2a854b540bd25c9e2311778408d9730</id>
<content type='text'>
Signed-off-by: Vladimir Kondratiev &lt;vladimir.kondratiev@intel.com&gt;
Signed-off-by: Vineet Gupta &lt;vgupta@synopsys.com&gt;
</content>
</entry>
<entry>
<title>clocksource: import ARC timer driver</title>
<updated>2016-11-30T19:54:25Z</updated>
<author>
<name>Vineet Gupta</name>
</author>
<published>2016-10-31T20:46:38Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c4c9a040ecb7297e011e579f5a9cc280e42d725f'/>
<id>urn:sha1:c4c9a040ecb7297e011e579f5a9cc280e42d725f</id>
<content type='text'>
This adds support for

 - CONFIG_ARC_TIMERS : legacy 32-bit TIMER0 and TIMER1 which count UP
   from @CNT to @LIMIT, before optionally triggering an interrupt.
   These are programmed using ARC auxiliary register interface.
   These are present in all ARC cores (ARC700 and ARC HS38)
   TIMER0 serves as clockevent for all ARC linux builds.
   TIMER1 is used for clocksource in arc700 builds.

 - CONFIG_ARC_TIMERS_64BIT: 64-bit counters, RTC and GFRC found in
   ARC HS38 cores. These are independnet IP blocks with different
   programming model respectively.

Link: http://lkml.kernel.org/r/20161111231132.GA4186@mai
Acked-by: Daniel Lezcano &lt;daniel.lezcano@linaro.org&gt;
Signed-off-by: Vineet Gupta &lt;vgupta@synopsys.com&gt;
</content>
</entry>
<entry>
<title>ARC: timer: gfrc, rtc: build under same option (64-bit timers)</title>
<updated>2016-11-30T19:54:25Z</updated>
<author>
<name>Vineet Gupta</name>
</author>
<published>2016-10-31T21:26:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=044214200b0b7aa4633d2e93529e55b5ca50a5a5'/>
<id>urn:sha1:044214200b0b7aa4633d2e93529e55b5ca50a5a5</id>
<content type='text'>
The original distinction was done as they were developed at different
times and primarily because they are specific to UP (RTC) and SMP (GFRC).

But given that driver handles that at runtime, (i.e. not allowing
RTC as clocksource in SMP), we can simplify things a bit.

Signed-off-by: Vineet Gupta &lt;vgupta@synopsys.com&gt;
</content>
</entry>
<entry>
<title>ARC: mm: retire ARC_DBG_TLB_MISS_COUNT...</title>
<updated>2016-10-28T17:10:28Z</updated>
<author>
<name>Vineet Gupta</name>
</author>
<published>2016-10-25T15:58:17Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f644e3688855902ad11549029098a62cbbc8f558'/>
<id>urn:sha1:f644e3688855902ad11549029098a62cbbc8f558</id>
<content type='text'>
... given that we have perf counters abel to do the same thing non
intrusively

Signed-off-by: Vineet Gupta &lt;vgupta@synopsys.com&gt;
</content>
</entry>
<entry>
<title>ARC: [build] Support gz, lzma compressed uImage</title>
<updated>2016-10-16T22:49:07Z</updated>
<author>
<name>Daniel Mentz</name>
</author>
<published>2016-10-04T23:34:27Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=27f3d2a3b59f573a398c9acc810c16ebca07be78'/>
<id>urn:sha1:27f3d2a3b59f573a398c9acc810c16ebca07be78</id>
<content type='text'>
Add support for lzma compressed uImage.

Support for gzip was already available but could not be enabled because
we were missing CONFIG_HAVE_KERNEL_GZIP in arch/arc/Kconfig.

Signed-off-by: Daniel Mentz &lt;danielmentz@google.com&gt;
Cc: linux-snps-arc@lists.infradead.org
Cc: Vineet Gupta &lt;Vineet.Gupta1@synopsys.com&gt;
Signed-off-by: Vineet Gupta &lt;vgupta@synopsys.com&gt;
</content>
</entry>
<entry>
<title>ARCv2: intc: untangle SMP, MCIP and IDU</title>
<updated>2016-10-16T22:49:07Z</updated>
<author>
<name>Vineet Gupta</name>
</author>
<published>2016-09-29T17:00:14Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3ce0fefc51bd56381b1b9a92835cf8f9db3f2ef8'/>
<id>urn:sha1:3ce0fefc51bd56381b1b9a92835cf8f9db3f2ef8</id>
<content type='text'>
The IDU intc is technically part of MCIP (Multi-core IP) hence
historically was only available in a SMP hardware build (and thus only
in a SMP kernel build). Now that hardware restriction has been lifted,
so a UP kernel needs to support it.

This requires breaking mcip.c into parts which are strictly SMP
(inter-core interrupts) and IDU which in reality is just another
intc and thus has no bearing on SMP.

This change allows IDU in UP builds and with a suitable device tree, we
can have the cascaded intc system

    ARCv2 core intc &lt;---&gt; ARCv2 IDU intc &lt;---&gt; periperals

Signed-off-by: Vineet Gupta &lt;vgupta@synopsys.com&gt;
</content>
</entry>
</feed>
