Commit 24180a60 authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'riscv-for-linus-4.16-rc3-riscv_cleanups' of...

Merge tag 'riscv-for-linus-4.16-rc3-riscv_cleanups' of git://git.kernel.org/pub/scm/linux/kernel/git/palmer/riscv-linux

Pull RISC-V cleanups from Palmer Dabbelt:
 "This contains a handful of small cleanups.

  The only functional change is that IRQs are now enabled during
  exception handling, which was found when some warnings triggered with
  `CONFIG_DEBUG_ATOMIC_SLEEP=y`.

  The remaining fixes should have no functional change: `sbi_save()` has
  been renamed to `parse_dtb()` reflect what it actually does, and a
  handful of unused Kconfig entries have been removed"

* tag 'riscv-for-linus-4.16-rc3-riscv_cleanups' of git://git.kernel.org/pub/scm/linux/kernel/git/palmer/riscv-linux:
  Rename sbi_save to parse_dtb to improve code readability
  RISC-V: Enable IRQ during exception handling
  riscv: Remove ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE select
  riscv: kconfig: Remove RISCV_IRQ_INTC select
  riscv: Remove ARCH_WANT_OPTIONAL_GPIOLIB select
parents 238ca357 8b08f501
...@@ -8,7 +8,6 @@ config RISCV ...@@ -8,7 +8,6 @@ config RISCV
select OF select OF
select OF_EARLY_FLATTREE select OF_EARLY_FLATTREE
select OF_IRQ select OF_IRQ
select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
select ARCH_WANT_FRAME_POINTERS select ARCH_WANT_FRAME_POINTERS
select CLONE_BACKWARDS select CLONE_BACKWARDS
select COMMON_CLK select COMMON_CLK
...@@ -20,7 +19,6 @@ config RISCV ...@@ -20,7 +19,6 @@ config RISCV
select GENERIC_STRNLEN_USER select GENERIC_STRNLEN_USER
select GENERIC_SMP_IDLE_THREAD select GENERIC_SMP_IDLE_THREAD
select GENERIC_ATOMIC64 if !64BIT || !RISCV_ISA_A select GENERIC_ATOMIC64 if !64BIT || !RISCV_ISA_A
select ARCH_WANT_OPTIONAL_GPIOLIB
select HAVE_MEMBLOCK select HAVE_MEMBLOCK
select HAVE_MEMBLOCK_NODE_MAP select HAVE_MEMBLOCK_NODE_MAP
select HAVE_DMA_API_DEBUG select HAVE_DMA_API_DEBUG
...@@ -34,7 +32,6 @@ config RISCV ...@@ -34,7 +32,6 @@ config RISCV
select HAVE_ARCH_TRACEHOOK select HAVE_ARCH_TRACEHOOK
select MODULES_USE_ELF_RELA if MODULES select MODULES_USE_ELF_RELA if MODULES
select THREAD_INFO_IN_TASK select THREAD_INFO_IN_TASK
select RISCV_IRQ_INTC
select RISCV_TIMER select RISCV_TIMER
config MMU config MMU
......
...@@ -172,6 +172,9 @@ ENTRY(handle_exception) ...@@ -172,6 +172,9 @@ ENTRY(handle_exception)
move a1, sp /* pt_regs */ move a1, sp /* pt_regs */
tail do_IRQ tail do_IRQ
1: 1:
/* Exceptions run with interrupts enabled */
csrs sstatus, SR_SIE
/* Handle syscalls */ /* Handle syscalls */
li t0, EXC_SYSCALL li t0, EXC_SYSCALL
beq s4, t0, handle_syscall beq s4, t0, handle_syscall
...@@ -198,8 +201,6 @@ handle_syscall: ...@@ -198,8 +201,6 @@ handle_syscall:
*/ */
addi s2, s2, 0x4 addi s2, s2, 0x4
REG_S s2, PT_SEPC(sp) REG_S s2, PT_SEPC(sp)
/* System calls run with interrupts enabled */
csrs sstatus, SR_SIE
/* Trace syscalls, but only if requested by the user. */ /* Trace syscalls, but only if requested by the user. */
REG_L t0, TASK_TI_FLAGS(tp) REG_L t0, TASK_TI_FLAGS(tp)
andi t0, t0, _TIF_SYSCALL_TRACE andi t0, t0, _TIF_SYSCALL_TRACE
......
...@@ -64,7 +64,7 @@ ENTRY(_start) ...@@ -64,7 +64,7 @@ ENTRY(_start)
/* Start the kernel */ /* Start the kernel */
mv a0, s0 mv a0, s0
mv a1, s1 mv a1, s1
call sbi_save call parse_dtb
tail start_kernel tail start_kernel
relocate: relocate:
......
...@@ -144,7 +144,7 @@ asmlinkage void __init setup_vm(void) ...@@ -144,7 +144,7 @@ asmlinkage void __init setup_vm(void)
#endif #endif
} }
void __init sbi_save(unsigned int hartid, void *dtb) void __init parse_dtb(unsigned int hartid, void *dtb)
{ {
early_init_dt_scan(__va(dtb)); early_init_dt_scan(__va(dtb));
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment