[PATCH v2 06/11] ARC: [plat-eznps] Fix TLB Errata

2017-05-27 Thread Noam Camus
From: Noam Camus Due to a HW bug in NPS400 we get from time to time false TLB miss. Workaround this by validating each miss. Signed-off-by: Noam Camus --- arch/arc/mm/tlbex.S |9 + 1 files changed, 9 insertions(+), 0 deletions(-) diff --git a/arch/arc/mm/tlbex.S b/arch/arc/mm/tlbe

[PATCH v2 09/11] ARC: [plat-eznps] use schd.wft instruction instead of sleep at idle task

2017-05-27 Thread Noam Camus
From: Noam Camus When HW threads are active we want CPU to enter idle state only for the calling HW thread and not to put on sleep all HW threads sharing this core. For this need the NPS400 got dedicated instruction so only calling thread is entring sleep and all other are still awake and can exe

[PATCH v2 08/11] ARC: [plat-eznps] spinlock aware for MTM

2017-05-27 Thread Noam Camus
From: Noam Camus This way when we execute "ex" during trying to hold lock we can switch to other HW thread and utilize the core intead of just spinning on a lock. We noticed about 10% improvement of execution time with hackbench test. Signed-off-by: Noam Camus --- arch/arc/include/asm/spinloc

[PATCH v2 10/11] ARC: enable platform specific mem_service implementation

2017-05-27 Thread Noam Camus
From: Noam Camus For User Mode Memory Bus Error some platforms do not creat interrupt level 2 e.g. nps400 creates machine check exception. Turning mem_service into weak symbol allows each platform to override mem_service with its own implementation. Signed-off-by: Noam Camus --- arch/arc/kerne

[PATCH v2 01/11] ARC: set level of log per CPU during boot to be debug level

2017-05-27 Thread Noam Camus
From: Noam Camus The reasons are: 1) speeding up boot time, becomes critical for many CPUs machine, e.g. NPS400 with 4K CPUs 2) shorten kernel log at boot time, again easy to scan for large scale machines such NPS400 Signed-off-by: Noam Camus --- arch/arc/kernel/setup.c |6 +++--- ar

[PATCH v2 03/11] ARC: typo fix in mm/fault.c

2017-05-27 Thread Noam Camus
From: Liav Rehana Signed-off-by: Liav Rehana Signed-off-by: Noam Camus Reviewed-by: Alexey Brodkin --- arch/arc/mm/fault.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/arch/arc/mm/fault.c b/arch/arc/mm/fault.c index 162c975..a0b7bd6 100644 --- a/arch/arc/mm/fault.

[PATCH v2 11/11] ARC: [plat-eznps] Handle memory error as an exception

2017-05-27 Thread Noam Camus
From: Noam Camus This commit adds the configuration CONFIG_EZNPS_MEM_ERROR. If set, it will cause the kernel to handle user memory error as a machine check exception. It is required in order to align the NPS simulator memory error handling to the one of the NPS400 real chip behavior. We override

[PATCH v2 04/11] ARC: typos fix in kernel/entry-compact.S

2017-05-27 Thread Noam Camus
From: Liav Rehana Signed-off-by: Liav Rehana Signed-off-by: Noam Camus Reviewed-by: Alexey Brodkin --- arch/arc/kernel/entry-compact.S | 22 +++--- 1 files changed, 11 insertions(+), 11 deletions(-) diff --git a/arch/arc/kernel/entry-compact.S b/arch/arc/kernel/entry-compac

[PATCH v2 07/11] ARC: [plat-eznps] disabled stall counter due to a HW bug

2017-05-27 Thread Noam Camus
From: Noam Camus This counter represents threshold for consecutive stall that which trigger HW threads scheduling. When this feature is enabled low values of this counter cause downgrade in performance and in the worst case even a livelock. Remove those couple of lines and resort to HW reset val

[PATCH v2 00/11] ARC plat-eznps upstream cont.

2017-05-27 Thread Noam Camus
From: Noam Camus Change Log --- v1 --> v2: Outcome of Alexey Brodkin comments 1) Turned mem_service into weak symbol, so it can be override by any platform 2) remove ifedf wrapper on '88' lable at assembly of TLB exception. With this patch set I continue the effort of upstreaming the ez

[PATCH v2 02/11] ARC: send ipi to all cpus sharing task mm in case of page fault

2017-05-27 Thread Noam Camus
From: Noam Camus This patch is derived due to performance issue. The use case is a page fault that resides on more than the local cpu. Trying to broadcast all CPUs results on performance degradation. So we try to avoid this by sending only to the relevant CPUs. Signed-off-by: Noam Camus Reviewe

[PATCH v2 05/11] ARC: [plat-eznps] typo fix at Kconfig

2017-05-27 Thread Noam Camus
From: Noam Camus Signed-off-by: Noam Camus Reviewed-by: Alexey Brodkin --- arch/arc/plat-eznps/Kconfig |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arc/plat-eznps/Kconfig b/arch/arc/plat-eznps/Kconfig index 1595a38..feaa471 100644 --- a/arch/arc/plat-eznps/K

[PATCH 3/7] clocksource: Rename clocksource_probe

2017-05-27 Thread Daniel Lezcano
The function name is now renamed to 'timer_probe' for consistency with the CLOCKSOURCE_OF_DECLARE => TIMER_OF_DECLARE change. Signed-off-by: Daniel Lezcano --- arch/arc/kernel/setup.c | 2 +- arch/arm/kernel/time.c | 2 +- arch/arm/mach-mediatek/mediatek.c

[PATCH 2/7] clocksource: Rename CLOCKSOURCE_OF_DECLARE

2017-05-27 Thread Daniel Lezcano
The CLOCKSOUCE_OF_DECLARE macro is used widely for the timers to declare the clocksource at early stage. However, this macro is also used to initialize the clockevent if any, or the clockevent only. It was originally suggested to declare another macro to initialize a clockevent, so in order to sep