Skip to content

Commit 3c9e665

Browse files
committed
Merge tag 'arc-5.7-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc
Pull ARC fixes from Vineet Gupta: - fix recent DSP code regression on ARC700 platforms - fix thinkos in ICCM/DCCM size checks - USB regression fix - other small fixes here and there * tag 'arc-5.7-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc: ARC: show_regs: avoid extra line of output ARC: guard dsp early init against non ARCv2 ARC: [plat-eznps]: Restrict to CONFIG_ISA_ARCOMPACT ARC: entry: comment arc: remove #ifndef CONFIG_AS_CFI_SIGNAL_FRAME arc: ptrace: hard-code "arc" instead of UTS_MACHINE ARC: [plat-hsdk]: fix USB regression ARC: Fix ICCM & DCCM runtime size checks
2 parents 03fb3ac + 7915502 commit 3c9e665

File tree

9 files changed

+16
-16
lines changed

9 files changed

+16
-16
lines changed

arch/arc/configs/hsdk_defconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ CONFIG_DRM_UDL=y
6565
CONFIG_DRM_ETNAVIV=y
6666
CONFIG_FB=y
6767
CONFIG_FRAMEBUFFER_CONSOLE=y
68+
CONFIG_USB=y
6869
CONFIG_USB_EHCI_HCD=y
6970
CONFIG_USB_EHCI_HCD_PLATFORM=y
7071
CONFIG_USB_OHCI_HCD=y

arch/arc/include/asm/dsp-impl.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,14 @@
1515

1616
/* clobbers r5 register */
1717
.macro DSP_EARLY_INIT
18+
#ifdef CONFIG_ISA_ARCV2
1819
lr r5, [ARC_AUX_DSP_BUILD]
1920
bmsk r5, r5, 7
2021
breq r5, 0, 1f
2122
mov r5, DSP_CTRL_DISABLED_ALL
2223
sr r5, [ARC_AUX_DSP_CTRL]
2324
1:
25+
#endif
2426
.endm
2527

2628
/* clobbers r10, r11 registers pair */

arch/arc/include/asm/entry-arcv2.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -233,6 +233,8 @@
233233

234234
#ifdef CONFIG_ARC_IRQ_NO_AUTOSAVE
235235
__RESTORE_REGFILE_HARD
236+
237+
; SP points to PC/STAT32: hw restores them despite NO_AUTOSAVE
236238
add sp, sp, SZ_PT_REGS - 8
237239
#else
238240
add sp, sp, PT_r0

arch/arc/kernel/Makefile

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,6 @@
33
# Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com)
44
#
55

6-
# Pass UTS_MACHINE for user_regset definition
7-
CFLAGS_ptrace.o += -DUTS_MACHINE='"$(UTS_MACHINE)"'
8-
96
obj-y := arcksyms.o setup.o irq.o reset.o ptrace.o process.o devtree.o
107
obj-y += signal.o traps.o sys.o troubleshoot.o stacktrace.o disasm.o
118
obj-$(CONFIG_ISA_ARCOMPACT) += entry-compact.o intc-compact.o

arch/arc/kernel/ptrace.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -253,7 +253,7 @@ static const struct user_regset arc_regsets[] = {
253253
};
254254

255255
static const struct user_regset_view user_arc_view = {
256-
.name = UTS_MACHINE,
256+
.name = "arc",
257257
.e_machine = EM_ARC_INUSE,
258258
.regsets = arc_regsets,
259259
.n = ARRAY_SIZE(arc_regsets)

arch/arc/kernel/setup.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
#include <linux/clocksource.h>
1212
#include <linux/console.h>
1313
#include <linux/module.h>
14+
#include <linux/sizes.h>
1415
#include <linux/cpu.h>
1516
#include <linux/of_clk.h>
1617
#include <linux/of_fdt.h>
@@ -424,12 +425,12 @@ static void arc_chk_core_config(void)
424425
if ((unsigned int)__arc_dccm_base != cpu->dccm.base_addr)
425426
panic("Linux built with incorrect DCCM Base address\n");
426427

427-
if (CONFIG_ARC_DCCM_SZ != cpu->dccm.sz)
428+
if (CONFIG_ARC_DCCM_SZ * SZ_1K != cpu->dccm.sz)
428429
panic("Linux built with incorrect DCCM Size\n");
429430
#endif
430431

431432
#ifdef CONFIG_ARC_HAS_ICCM
432-
if (CONFIG_ARC_ICCM_SZ != cpu->iccm.sz)
433+
if (CONFIG_ARC_ICCM_SZ * SZ_1K != cpu->iccm.sz)
433434
panic("Linux built with incorrect ICCM Size\n");
434435
#endif
435436

arch/arc/kernel/troubleshoot.c

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -191,10 +191,9 @@ void show_regs(struct pt_regs *regs)
191191
if (user_mode(regs))
192192
show_faulting_vma(regs->ret); /* faulting code, not data */
193193

194-
pr_info("ECR: 0x%08lx EFA: 0x%08lx ERET: 0x%08lx\n",
195-
regs->event, current->thread.fault_address, regs->ret);
196-
197-
pr_info("STAT32: 0x%08lx", regs->status32);
194+
pr_info("ECR: 0x%08lx EFA: 0x%08lx ERET: 0x%08lx\nSTAT: 0x%08lx",
195+
regs->event, current->thread.fault_address, regs->ret,
196+
regs->status32);
198197

199198
#define STS_BIT(r, bit) r->status32 & STATUS_##bit##_MASK ? #bit" " : ""
200199

@@ -210,11 +209,10 @@ void show_regs(struct pt_regs *regs)
210209
(regs->status32 & STATUS_U_MASK) ? "U " : "K ",
211210
STS_BIT(regs, DE), STS_BIT(regs, AE));
212211
#endif
213-
pr_cont(" BTA: 0x%08lx\n", regs->bta);
214-
pr_info("BLK: %pS\n SP: 0x%08lx FP: 0x%08lx\n",
215-
(void *)regs->blink, regs->sp, regs->fp);
212+
pr_cont(" BTA: 0x%08lx\n SP: 0x%08lx FP: 0x%08lx BLK: %pS\n",
213+
regs->bta, regs->sp, regs->fp, (void *)regs->blink);
216214
pr_info("LPS: 0x%08lx\tLPE: 0x%08lx\tLPC: 0x%08lx\n",
217-
regs->lp_start, regs->lp_end, regs->lp_count);
215+
regs->lp_start, regs->lp_end, regs->lp_count);
218216

219217
/* print regs->r0 thru regs->r12
220218
* Sequential printing was generating horrible code

arch/arc/kernel/unwind.c

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1178,11 +1178,9 @@ int arc_unwind(struct unwind_frame_info *frame)
11781178
#endif
11791179

11801180
/* update frame */
1181-
#ifndef CONFIG_AS_CFI_SIGNAL_FRAME
11821181
if (frame->call_frame
11831182
&& !UNW_DEFAULT_RA(state.regs[retAddrReg], state.dataAlign))
11841183
frame->call_frame = 0;
1185-
#endif
11861184
cfa = FRAME_REG(state.cfa.reg, unsigned long) + state.cfa.offs;
11871185
startLoc = min_t(unsigned long, UNW_SP(frame), cfa);
11881186
endLoc = max_t(unsigned long, UNW_SP(frame), cfa);

arch/arc/plat-eznps/Kconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
menuconfig ARC_PLAT_EZNPS
88
bool "\"EZchip\" ARC dev platform"
9+
depends on ISA_ARCOMPACT
910
select CPU_BIG_ENDIAN
1011
select CLKSRC_NPS if !PHYS_ADDR_T_64BIT
1112
select EZNPS_GIC

0 commit comments

Comments
 (0)