Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
4a979862
Commit
4a979862
authored
Nov 22, 2019
by
Paul Walmsley
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'next/misc' into for-next
parents
e8cad25b
c5ab54e9
Changes
18
Hide whitespace changes
Inline
Side-by-side
Showing
18 changed files
with
63 additions
and
42 deletions
+63
-42
arch/riscv/boot/Makefile
arch/riscv/boot/Makefile
+12
-0
arch/riscv/boot/dts/sifive/fu540-c000.dtsi
arch/riscv/boot/dts/sifive/fu540-c000.dtsi
+7
-0
arch/riscv/include/asm/asm-prototypes.h
arch/riscv/include/asm/asm-prototypes.h
+1
-0
arch/riscv/include/asm/current.h
arch/riscv/include/asm/current.h
+3
-3
arch/riscv/include/asm/ftrace.h
arch/riscv/include/asm/ftrace.h
+5
-0
arch/riscv/include/asm/futex.h
arch/riscv/include/asm/futex.h
+3
-3
arch/riscv/include/asm/hwcap.h
arch/riscv/include/asm/hwcap.h
+4
-3
arch/riscv/include/asm/image.h
arch/riscv/include/asm/image.h
+3
-3
arch/riscv/include/asm/kprobes.h
arch/riscv/include/asm/kprobes.h
+3
-3
arch/riscv/include/asm/mmiowb.h
arch/riscv/include/asm/mmiowb.h
+1
-1
arch/riscv/include/asm/pci.h
arch/riscv/include/asm/pci.h
+3
-3
arch/riscv/include/asm/sbi.h
arch/riscv/include/asm/sbi.h
+1
-1
arch/riscv/include/asm/sparsemem.h
arch/riscv/include/asm/sparsemem.h
+3
-3
arch/riscv/include/asm/spinlock_types.h
arch/riscv/include/asm/spinlock_types.h
+1
-1
arch/riscv/include/uapi/asm/elf.h
arch/riscv/include/uapi/asm/elf.h
+3
-3
arch/riscv/include/uapi/asm/hwcap.h
arch/riscv/include/uapi/asm/hwcap.h
+3
-3
arch/riscv/include/uapi/asm/ucontext.h
arch/riscv/include/uapi/asm/ucontext.h
+3
-3
arch/riscv/mm/init.c
arch/riscv/mm/init.c
+4
-9
No files found.
arch/riscv/boot/Makefile
View file @
4a979862
...
@@ -24,6 +24,18 @@ $(obj)/Image: vmlinux FORCE
...
@@ -24,6 +24,18 @@ $(obj)/Image: vmlinux FORCE
$(obj)/Image.gz
:
$(obj)/Image FORCE
$(obj)/Image.gz
:
$(obj)/Image FORCE
$(
call
if_changed,gzip
)
$(
call
if_changed,gzip
)
$(obj)/Image.bz2
:
$(obj)/Image FORCE
$(
call
if_changed,bzip2
)
$(obj)/Image.lz4
:
$(obj)/Image FORCE
$(
call
if_changed,lz4
)
$(obj)/Image.lzma
:
$(obj)/Image FORCE
$(
call
if_changed,lzma
)
$(obj)/Image.lzo
:
$(obj)/Image FORCE
$(
call
if_changed,lzo
)
install
:
install
:
$(CONFIG_SHELL)
$(srctree)
/
$(src)
/install.sh
$(KERNELRELEASE)
\
$(CONFIG_SHELL)
$(srctree)
/
$(src)
/install.sh
$(KERNELRELEASE)
\
$(obj)
/Image System.map
"
$(INSTALL_PATH)
"
$(obj)
/Image System.map
"
$(INSTALL_PATH)
"
...
...
arch/riscv/boot/dts/sifive/fu540-c000.dtsi
View file @
4a979862
...
@@ -162,6 +162,13 @@ uart0: serial@10010000 {
...
@@ -162,6 +162,13 @@ uart0: serial@10010000 {
clocks = <&prci PRCI_CLK_TLCLK>;
clocks = <&prci PRCI_CLK_TLCLK>;
status = "disabled";
status = "disabled";
};
};
dma: dma@3000000 {
compatible = "sifive,fu540-c000-pdma";
reg = <0x0 0x3000000 0x0 0x8000>;
interrupt-parent = <&plic0>;
interrupts = <23 24 25 26 27 28 29 30>;
#dma-cells = <1>;
};
uart1: serial@10011000 {
uart1: serial@10011000 {
compatible = "sifive,fu540-c000-uart", "sifive,uart0";
compatible = "sifive,fu540-c000-uart", "sifive,uart0";
reg = <0x0 0x10011000 0x0 0x1000>;
reg = <0x0 0x10011000 0x0 0x1000>;
...
...
arch/riscv/include/asm/asm-prototypes.h
View file @
4a979862
/* SPDX-License-Identifier: GPL-2.0 */
/* SPDX-License-Identifier: GPL-2.0 */
#ifndef _ASM_RISCV_PROTOTYPES_H
#ifndef _ASM_RISCV_PROTOTYPES_H
#define _ASM_RISCV_PROTOTYPES_H
#include <linux/ftrace.h>
#include <linux/ftrace.h>
#include <asm-generic/asm-prototypes.h>
#include <asm-generic/asm-prototypes.h>
...
...
arch/riscv/include/asm/current.h
View file @
4a979862
...
@@ -7,8 +7,8 @@
...
@@ -7,8 +7,8 @@
*/
*/
#ifndef _
_ASM
_CURRENT_H
#ifndef _
ASM_RISCV
_CURRENT_H
#define _
_ASM
_CURRENT_H
#define _
ASM_RISCV
_CURRENT_H
#include <linux/bug.h>
#include <linux/bug.h>
#include <linux/compiler.h>
#include <linux/compiler.h>
...
@@ -34,4 +34,4 @@ static __always_inline struct task_struct *get_current(void)
...
@@ -34,4 +34,4 @@ static __always_inline struct task_struct *get_current(void)
#endif
/* __ASSEMBLY__ */
#endif
/* __ASSEMBLY__ */
#endif
/* _
_ASM
_CURRENT_H */
#endif
/* _
ASM_RISCV
_CURRENT_H */
arch/riscv/include/asm/ftrace.h
View file @
4a979862
/* SPDX-License-Identifier: GPL-2.0 */
/* SPDX-License-Identifier: GPL-2.0 */
/* Copyright (C) 2017 Andes Technology Corporation */
/* Copyright (C) 2017 Andes Technology Corporation */
#ifndef _ASM_RISCV_FTRACE_H
#define _ASM_RISCV_FTRACE_H
/*
/*
* The graph frame test is not possible if CONFIG_FRAME_POINTER is not enabled.
* The graph frame test is not possible if CONFIG_FRAME_POINTER is not enabled.
* Check arch/riscv/kernel/mcount.S for detail.
* Check arch/riscv/kernel/mcount.S for detail.
...
@@ -64,3 +67,5 @@ do { \
...
@@ -64,3 +67,5 @@ do { \
*/
*/
#define MCOUNT_INSN_SIZE 8
#define MCOUNT_INSN_SIZE 8
#endif
#endif
#endif
/* _ASM_RISCV_FTRACE_H */
arch/riscv/include/asm/futex.h
View file @
4a979862
...
@@ -4,8 +4,8 @@
...
@@ -4,8 +4,8 @@
* Copyright (c) 2018 Jim Wilson (jimw@sifive.com)
* Copyright (c) 2018 Jim Wilson (jimw@sifive.com)
*/
*/
#ifndef _ASM_FUTEX_H
#ifndef _ASM_
RISCV_
FUTEX_H
#define _ASM_FUTEX_H
#define _ASM_
RISCV_
FUTEX_H
#include <linux/futex.h>
#include <linux/futex.h>
#include <linux/uaccess.h>
#include <linux/uaccess.h>
...
@@ -112,4 +112,4 @@ futex_atomic_cmpxchg_inatomic(u32 *uval, u32 __user *uaddr,
...
@@ -112,4 +112,4 @@ futex_atomic_cmpxchg_inatomic(u32 *uval, u32 __user *uaddr,
return
ret
;
return
ret
;
}
}
#endif
/* _ASM_FUTEX_H */
#endif
/* _ASM_
RISCV_
FUTEX_H */
arch/riscv/include/asm/hwcap.h
View file @
4a979862
...
@@ -5,8 +5,8 @@
...
@@ -5,8 +5,8 @@
* Copyright (C) 2012 ARM Ltd.
* Copyright (C) 2012 ARM Ltd.
* Copyright (C) 2017 SiFive
* Copyright (C) 2017 SiFive
*/
*/
#ifndef _
_ASM
_HWCAP_H
#ifndef _
ASM_RISCV
_HWCAP_H
#define _
_ASM
_HWCAP_H
#define _
ASM_RISCV
_HWCAP_H
#include <uapi/asm/hwcap.h>
#include <uapi/asm/hwcap.h>
...
@@ -23,4 +23,5 @@ enum {
...
@@ -23,4 +23,5 @@ enum {
extern
unsigned
long
elf_hwcap
;
extern
unsigned
long
elf_hwcap
;
#endif
#endif
#endif
#endif
/* _ASM_RISCV_HWCAP_H */
arch/riscv/include/asm/image.h
View file @
4a979862
/* SPDX-License-Identifier: GPL-2.0 */
/* SPDX-License-Identifier: GPL-2.0 */
#ifndef _
_ASM
_IMAGE_H
#ifndef _
ASM_RISCV
_IMAGE_H
#define _
_ASM
_IMAGE_H
#define _
ASM_RISCV
_IMAGE_H
#define RISCV_IMAGE_MAGIC "RISCV\0\0\0"
#define RISCV_IMAGE_MAGIC "RISCV\0\0\0"
#define RISCV_IMAGE_MAGIC2 "RSC\x05"
#define RISCV_IMAGE_MAGIC2 "RSC\x05"
...
@@ -62,4 +62,4 @@ struct riscv_image_header {
...
@@ -62,4 +62,4 @@ struct riscv_image_header {
u32
res4
;
u32
res4
;
};
};
#endif
/* __ASSEMBLY__ */
#endif
/* __ASSEMBLY__ */
#endif
/* _
_ASM
_IMAGE_H */
#endif
/* _
ASM_RISCV
_IMAGE_H */
arch/riscv/include/asm/kprobes.h
View file @
4a979862
...
@@ -6,9 +6,9 @@
...
@@ -6,9 +6,9 @@
* Copyright (C) 2017 SiFive
* Copyright (C) 2017 SiFive
*/
*/
#ifndef _RISCV_KPROBES_H
#ifndef _
ASM_
RISCV_KPROBES_H
#define _RISCV_KPROBES_H
#define _
ASM_
RISCV_KPROBES_H
#include <asm-generic/kprobes.h>
#include <asm-generic/kprobes.h>
#endif
/* _RISCV_KPROBES_H */
#endif
/* _
ASM_
RISCV_KPROBES_H */
arch/riscv/include/asm/mmiowb.h
View file @
4a979862
...
@@ -11,4 +11,4 @@
...
@@ -11,4 +11,4 @@
#include <asm-generic/mmiowb.h>
#include <asm-generic/mmiowb.h>
#endif
/* ASM_RISCV_MMIOWB_H */
#endif
/*
_
ASM_RISCV_MMIOWB_H */
arch/riscv/include/asm/pci.h
View file @
4a979862
...
@@ -3,8 +3,8 @@
...
@@ -3,8 +3,8 @@
* Copyright (C) 2016 SiFive
* Copyright (C) 2016 SiFive
*/
*/
#ifndef _
_
ASM_RISCV_PCI_H
#ifndef _ASM_RISCV_PCI_H
#define _
_
ASM_RISCV_PCI_H
#define _ASM_RISCV_PCI_H
#include <linux/types.h>
#include <linux/types.h>
#include <linux/slab.h>
#include <linux/slab.h>
...
@@ -34,4 +34,4 @@ static inline int pci_proc_domain(struct pci_bus *bus)
...
@@ -34,4 +34,4 @@ static inline int pci_proc_domain(struct pci_bus *bus)
}
}
#endif
/* CONFIG_PCI */
#endif
/* CONFIG_PCI */
#endif
/* _
_ASM
_PCI_H */
#endif
/* _
ASM_RISCV
_PCI_H */
arch/riscv/include/asm/sbi.h
View file @
4a979862
...
@@ -94,4 +94,4 @@ static inline void sbi_remote_sfence_vma_asid(const unsigned long *hart_mask,
...
@@ -94,4 +94,4 @@ static inline void sbi_remote_sfence_vma_asid(const unsigned long *hart_mask,
SBI_CALL_4
(
SBI_REMOTE_SFENCE_VMA_ASID
,
hart_mask
,
start
,
size
,
asid
);
SBI_CALL_4
(
SBI_REMOTE_SFENCE_VMA_ASID
,
hart_mask
,
start
,
size
,
asid
);
}
}
#endif
#endif
/* _ASM_RISCV_SBI_H */
arch/riscv/include/asm/sparsemem.h
View file @
4a979862
/* SPDX-License-Identifier: GPL-2.0 */
/* SPDX-License-Identifier: GPL-2.0 */
#ifndef _
_ASM
_SPARSEMEM_H
#ifndef _
ASM_RISCV
_SPARSEMEM_H
#define _
_ASM
_SPARSEMEM_H
#define _
ASM_RISCV
_SPARSEMEM_H
#ifdef CONFIG_SPARSEMEM
#ifdef CONFIG_SPARSEMEM
#define MAX_PHYSMEM_BITS CONFIG_PA_BITS
#define MAX_PHYSMEM_BITS CONFIG_PA_BITS
#define SECTION_SIZE_BITS 27
#define SECTION_SIZE_BITS 27
#endif
/* CONFIG_SPARSEMEM */
#endif
/* CONFIG_SPARSEMEM */
#endif
/* _
_ASM
_SPARSEMEM_H */
#endif
/* _
ASM_RISCV
_SPARSEMEM_H */
arch/riscv/include/asm/spinlock_types.h
View file @
4a979862
...
@@ -22,4 +22,4 @@ typedef struct {
...
@@ -22,4 +22,4 @@ typedef struct {
#define __ARCH_RW_LOCK_UNLOCKED { 0 }
#define __ARCH_RW_LOCK_UNLOCKED { 0 }
#endif
#endif
/* _ASM_RISCV_SPINLOCK_TYPES_H */
arch/riscv/include/uapi/asm/elf.h
View file @
4a979862
...
@@ -9,8 +9,8 @@
...
@@ -9,8 +9,8 @@
* (at your option) any later version.
* (at your option) any later version.
*/
*/
#ifndef _UAPI_ASM_ELF_H
#ifndef _UAPI_ASM_
RISCV_
ELF_H
#define _UAPI_ASM_ELF_H
#define _UAPI_ASM_
RISCV_
ELF_H
#include <asm/ptrace.h>
#include <asm/ptrace.h>
...
@@ -95,4 +95,4 @@ typedef union __riscv_fp_state elf_fpregset_t;
...
@@ -95,4 +95,4 @@ typedef union __riscv_fp_state elf_fpregset_t;
#define R_RISCV_32_PCREL 57
#define R_RISCV_32_PCREL 57
#endif
/* _UAPI_ASM_ELF_H */
#endif
/* _UAPI_ASM_
RISCV_
ELF_H */
arch/riscv/include/uapi/asm/hwcap.h
View file @
4a979862
...
@@ -5,8 +5,8 @@
...
@@ -5,8 +5,8 @@
* Copyright (C) 2012 ARM Ltd.
* Copyright (C) 2012 ARM Ltd.
* Copyright (C) 2017 SiFive
* Copyright (C) 2017 SiFive
*/
*/
#ifndef _
_UAPI_ASM
_HWCAP_H
#ifndef _
UAPI_ASM_RISCV
_HWCAP_H
#define _
_UAPI_ASM
_HWCAP_H
#define _
UAPI_ASM_RISCV
_HWCAP_H
/*
/*
* Linux saves the floating-point registers according to the ISA Linux is
* Linux saves the floating-point registers according to the ISA Linux is
...
@@ -22,4 +22,4 @@
...
@@ -22,4 +22,4 @@
#define COMPAT_HWCAP_ISA_D (1 << ('D' - 'A'))
#define COMPAT_HWCAP_ISA_D (1 << ('D' - 'A'))
#define COMPAT_HWCAP_ISA_C (1 << ('C' - 'A'))
#define COMPAT_HWCAP_ISA_C (1 << ('C' - 'A'))
#endif
#endif
/* _UAPI_ASM_RISCV_HWCAP_H */
arch/riscv/include/uapi/asm/ucontext.h
View file @
4a979862
...
@@ -5,8 +5,8 @@
...
@@ -5,8 +5,8 @@
*
*
* This file was copied from arch/arm64/include/uapi/asm/ucontext.h
* This file was copied from arch/arm64/include/uapi/asm/ucontext.h
*/
*/
#ifndef _UAPI_
_ASM
_UCONTEXT_H
#ifndef _UAPI_
ASM_RISCV
_UCONTEXT_H
#define _UAPI_
_ASM
_UCONTEXT_H
#define _UAPI_
ASM_RISCV
_UCONTEXT_H
#include <linux/types.h>
#include <linux/types.h>
...
@@ -31,4 +31,4 @@ struct ucontext {
...
@@ -31,4 +31,4 @@ struct ucontext {
struct
sigcontext
uc_mcontext
;
struct
sigcontext
uc_mcontext
;
};
};
#endif
/* _UAPI_
_ASM
_UCONTEXT_H */
#endif
/* _UAPI_
ASM_RISCV
_UCONTEXT_H */
arch/riscv/mm/init.c
View file @
4a979862
...
@@ -273,7 +273,6 @@ static void __init create_pmd_mapping(pmd_t *pmdp,
...
@@ -273,7 +273,6 @@ static void __init create_pmd_mapping(pmd_t *pmdp,
#define get_pgd_next_virt(__pa) get_pmd_virt(__pa)
#define get_pgd_next_virt(__pa) get_pmd_virt(__pa)
#define create_pgd_next_mapping(__nextp, __va, __pa, __sz, __prot) \
#define create_pgd_next_mapping(__nextp, __va, __pa, __sz, __prot) \
create_pmd_mapping(__nextp, __va, __pa, __sz, __prot)
create_pmd_mapping(__nextp, __va, __pa, __sz, __prot)
#define PTE_PARENT_SIZE PMD_SIZE
#define fixmap_pgd_next fixmap_pmd
#define fixmap_pgd_next fixmap_pmd
#else
#else
#define pgd_next_t pte_t
#define pgd_next_t pte_t
...
@@ -281,7 +280,6 @@ static void __init create_pmd_mapping(pmd_t *pmdp,
...
@@ -281,7 +280,6 @@ static void __init create_pmd_mapping(pmd_t *pmdp,
#define get_pgd_next_virt(__pa) get_pte_virt(__pa)
#define get_pgd_next_virt(__pa) get_pte_virt(__pa)
#define create_pgd_next_mapping(__nextp, __va, __pa, __sz, __prot) \
#define create_pgd_next_mapping(__nextp, __va, __pa, __sz, __prot) \
create_pte_mapping(__nextp, __va, __pa, __sz, __prot)
create_pte_mapping(__nextp, __va, __pa, __sz, __prot)
#define PTE_PARENT_SIZE PGDIR_SIZE
#define fixmap_pgd_next fixmap_pte
#define fixmap_pgd_next fixmap_pte
#endif
#endif
...
@@ -314,14 +312,11 @@ static void __init create_pgd_mapping(pgd_t *pgdp,
...
@@ -314,14 +312,11 @@ static void __init create_pgd_mapping(pgd_t *pgdp,
static
uintptr_t
__init
best_map_size
(
phys_addr_t
base
,
phys_addr_t
size
)
static
uintptr_t
__init
best_map_size
(
phys_addr_t
base
,
phys_addr_t
size
)
{
{
uintptr_t
map_size
=
PAGE_SIZE
;
/* Upgrade to PMD_SIZE mappings whenever possible */
if
((
base
&
(
PMD_SIZE
-
1
))
||
(
size
&
(
PMD_SIZE
-
1
)))
return
PAGE_SIZE
;
/* Upgrade to PMD/PGDIR mappings whenever possible */
return
PMD_SIZE
;
if
(
!
(
base
&
(
PTE_PARENT_SIZE
-
1
))
&&
!
(
size
&
(
PTE_PARENT_SIZE
-
1
)))
map_size
=
PTE_PARENT_SIZE
;
return
map_size
;
}
}
/*
/*
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment