Skip to content

Commit 6917b51

Browse files
committed
Merge tag 'cris-for-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/jesper/cris
Pull CRIS updates from Jesper Nilsson: "Mostly removal of old cruft of which we can use a generic version, or fixes for code not commonly run in the cris port, but also additions to enable some good debug" * tag 'cris-for-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/jesper/cris: (25 commits) CRISv10: delete unused lib/dmacopy.c CRISv10: delete unused lib/old_checksum.c CRIS: fix switch_mm() lockdep splat CRISv32: enable LOCKDEP_SUPPORT CRIS: add STACKTRACE_SUPPORT CRISv32: annotate irq enable in idle loop CRISv32: add support for irqflags tracing CRIS: UAPI: use generic types.h CRIS: UAPI: use generic shmbuf.h CRIS: UAPI: use generic msgbuf.h CRIS: UAPI: use generic socket.h CRIS: UAPI: use generic sembuf.h CRIS: UAPI: use generic sockios.h CRIS: UAPI: use generic auxvec.h CRIS: UAPI: use generic headers via Kbuild CRIS: UAPI: fix elf.h export CRIS: don't make asm/elf.h depend on asm/user.h CRIS: UAPI: fix ptrace.h CRISv32: Squash compile warnings for axisflashmap CRISv32: Add GPIO driver to the default configs ...
2 parents 10fbd36 + 254a0f4 commit 6917b51

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

50 files changed

+220
-421
lines changed

arch/cris/Kconfig

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,17 @@ config FORCE_MAX_ZONEORDER
3636
int
3737
default 6
3838

39+
config TRACE_IRQFLAGS_SUPPORT
40+
depends on ETRAX_ARCH_V32
41+
def_bool y
42+
43+
config STACKTRACE_SUPPORT
44+
def_bool y
45+
46+
config LOCKDEP_SUPPORT
47+
depends on ETRAX_ARCH_V32
48+
def_bool y
49+
3950
config CRIS
4051
bool
4152
default y
@@ -58,6 +69,7 @@ config CRIS
5869
select CLKSRC_MMIO if ETRAX_ARCH_V32
5970
select GENERIC_CLOCKEVENTS if ETRAX_ARCH_V32
6071
select GENERIC_SCHED_CLOCK if ETRAX_ARCH_V32
72+
select HAVE_DEBUG_BUGVERBOSE if ETRAX_ARCH_V32
6173

6274
config HZ
6375
int

arch/cris/arch-v10/kernel/entry.S

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -955,6 +955,14 @@ sys_call_table:
955955
.long sys_process_vm_writev
956956
.long sys_kcmp /* 350 */
957957
.long sys_finit_module
958+
.long sys_sched_setattr
959+
.long sys_sched_getattr
960+
.long sys_renameat2
961+
.long sys_seccomp /* 355 */
962+
.long sys_getrandom
963+
.long sys_memfd_create
964+
.long sys_bpf
965+
.long sys_execveat
958966

959967
/*
960968
* NOTE!! This doesn't have to be exact - we just have

arch/cris/arch-v10/lib/dmacopy.c

Lines changed: 0 additions & 42 deletions
This file was deleted.

arch/cris/arch-v10/lib/old_checksum.c

Lines changed: 0 additions & 86 deletions
This file was deleted.

arch/cris/arch-v32/drivers/Kconfig

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -202,7 +202,7 @@ config ETRAX_PA_CHANGEABLE_DIR
202202
default "0x00" if ETRAXFS
203203
default "0x00000000" if !ETRAXFS
204204
help
205-
This is a bitmask (8 bits) with information of what bits in PA that a
205+
This is a bitmask with information of what bits in PA that a
206206
user can change direction on using ioctl's.
207207
Bit set = changeable.
208208
You probably want 0 here, but it depends on your hardware.
@@ -213,7 +213,7 @@ config ETRAX_PA_CHANGEABLE_BITS
213213
default "0x00" if ETRAXFS
214214
default "0x00000000" if !ETRAXFS
215215
help
216-
This is a bitmask (8 bits) with information of what bits in PA
216+
This is a bitmask with information of what bits in PA
217217
that a user can change the value on using ioctl's.
218218
Bit set = changeable.
219219

@@ -223,7 +223,7 @@ config ETRAX_PB_CHANGEABLE_DIR
223223
default "0x00000" if ETRAXFS
224224
default "0x00000000" if !ETRAXFS
225225
help
226-
This is a bitmask (18 bits) with information of what bits in PB
226+
This is a bitmask with information of what bits in PB
227227
that a user can change direction on using ioctl's.
228228
Bit set = changeable.
229229
You probably want 0 here, but it depends on your hardware.
@@ -234,7 +234,7 @@ config ETRAX_PB_CHANGEABLE_BITS
234234
default "0x00000" if ETRAXFS
235235
default "0x00000000" if !ETRAXFS
236236
help
237-
This is a bitmask (18 bits) with information of what bits in PB
237+
This is a bitmask with information of what bits in PB
238238
that a user can change the value on using ioctl's.
239239
Bit set = changeable.
240240

@@ -244,7 +244,7 @@ config ETRAX_PC_CHANGEABLE_DIR
244244
default "0x00000" if ETRAXFS
245245
default "0x00000000" if !ETRAXFS
246246
help
247-
This is a bitmask (18 bits) with information of what bits in PC
247+
This is a bitmask with information of what bits in PC
248248
that a user can change direction on using ioctl's.
249249
Bit set = changeable.
250250
You probably want 0 here, but it depends on your hardware.
@@ -253,9 +253,9 @@ config ETRAX_PC_CHANGEABLE_BITS
253253
hex "PC user changeable bits mask"
254254
depends on ETRAX_GPIO
255255
default "0x00000" if ETRAXFS
256-
default "0x00000000" if ETRAXFS
256+
default "0x00000000" if !ETRAXFS
257257
help
258-
This is a bitmask (18 bits) with information of what bits in PC
258+
This is a bitmask with information of what bits in PC
259259
that a user can change the value on using ioctl's.
260260
Bit set = changeable.
261261

@@ -264,7 +264,7 @@ config ETRAX_PD_CHANGEABLE_DIR
264264
depends on ETRAX_GPIO && ETRAXFS
265265
default "0x00000"
266266
help
267-
This is a bitmask (18 bits) with information of what bits in PD
267+
This is a bitmask with information of what bits in PD
268268
that a user can change direction on using ioctl's.
269269
Bit set = changeable.
270270
You probably want 0x00000 here, but it depends on your hardware.

arch/cris/arch-v32/drivers/axisflashmap.c

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -313,6 +313,7 @@ static int __init init_axis_flash(void)
313313
size_t len;
314314
int ram_rootfs_partition = -1; /* -1 => no RAM rootfs partition */
315315
int part;
316+
struct mtd_partition *partition;
316317

317318
/* We need a root fs. If it resides in RAM, we need to use an
318319
* MTDRAM device, so it must be enabled in the kernel config,
@@ -329,7 +330,7 @@ static int __init init_axis_flash(void)
329330

330331
main_mtd = flash_probe();
331332
if (main_mtd)
332-
printk(KERN_INFO "%s: 0x%08x bytes of NOR flash memory.\n",
333+
printk(KERN_INFO "%s: 0x%08llx bytes of NOR flash memory.\n",
333334
main_mtd->name, main_mtd->size);
334335

335336
#ifdef CONFIG_ETRAX_NANDFLASH
@@ -388,10 +389,10 @@ static int __init init_axis_flash(void)
388389
#endif
389390

390391
if (main_mtd) {
392+
loff_t ptable_sector = CONFIG_ETRAX_PTABLE_SECTOR;
391393
main_mtd->owner = THIS_MODULE;
392394
axisflash_mtd = main_mtd;
393395

394-
loff_t ptable_sector = CONFIG_ETRAX_PTABLE_SECTOR;
395396

396397
/* First partition (rescue) is always set to the default. */
397398
pidx++;
@@ -517,7 +518,7 @@ static int __init init_axis_flash(void)
517518
/* Decide whether to use default partition table. */
518519
/* Only use default table if we actually have a device (main_mtd) */
519520

520-
struct mtd_partition *partition = &axis_partitions[0];
521+
partition = &axis_partitions[0];
521522
if (main_mtd && !ptable_ok) {
522523
memcpy(axis_partitions, axis_default_partitions,
523524
sizeof(axis_default_partitions));
@@ -580,7 +581,7 @@ static int __init init_axis_flash(void)
580581
printk(KERN_INFO "axisflashmap: Adding RAM partition "
581582
"for rootfs image.\n");
582583
err = mtdram_init_device(mtd_ram,
583-
(void *)partition[part].offset,
584+
(void *)(u_int32_t)partition[part].offset,
584585
partition[part].size,
585586
partition[part].name);
586587
if (err)

arch/cris/arch-v32/drivers/mach-a3/gpio.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -957,7 +957,7 @@ static void __init virtual_gpio_init(void)
957957

958958
static int __init gpio_init(void)
959959
{
960-
int res;
960+
int res, res2;
961961

962962
printk(KERN_INFO "ETRAX FS GPIO driver v2.7, (c) 2003-2008 "
963963
"Axis Communications AB\n");
@@ -977,7 +977,7 @@ static int __init gpio_init(void)
977977
CRIS_LED_DISK_READ(0);
978978
CRIS_LED_DISK_WRITE(0);
979979

980-
int res2 = request_irq(GIO_INTR_VECT, gpio_interrupt,
980+
res2 = request_irq(GIO_INTR_VECT, gpio_interrupt,
981981
IRQF_SHARED, "gpio", &alarmlist);
982982
if (res2) {
983983
printk(KERN_ERR "err: irq for gpio\n");

arch/cris/arch-v32/drivers/mach-fs/gpio.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -425,12 +425,11 @@ gpio_open(struct inode *inode, struct file *filp)
425425
if (p > GPIO_MINOR_LAST)
426426
return -EINVAL;
427427

428-
priv = kmalloc(sizeof(struct gpio_private), GFP_KERNEL);
428+
priv = kzalloc(sizeof(struct gpio_private), GFP_KERNEL);
429429
if (!priv)
430430
return -ENOMEM;
431431

432432
mutex_lock(&gpio_mutex);
433-
memset(priv, 0, sizeof(*priv));
434433

435434
priv->minor = p;
436435

arch/cris/arch-v32/kernel/entry.S

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -240,6 +240,17 @@ ret_from_sys_call:
240240

241241
.type _Rexit,@function
242242
_Rexit:
243+
#if defined(CONFIG_TRACE_IRQFLAGS)
244+
addoq +PT_ccs, $sp, $acr
245+
move.d [$acr], $r0
246+
btstq 15, $r0 ; I1
247+
bpl 1f
248+
nop
249+
jsr trace_hardirqs_on
250+
nop
251+
1:
252+
#endif
253+
243254
;; This epilogue MUST match the prologues in multiple_interrupt, irq.h
244255
;; and ptregs.h.
245256
addq 4, $sp ; Skip orig_r10.
@@ -875,6 +886,14 @@ sys_call_table:
875886
.long sys_process_vm_writev
876887
.long sys_kcmp /* 350 */
877888
.long sys_finit_module
889+
.long sys_sched_setattr
890+
.long sys_sched_getattr
891+
.long sys_renameat2
892+
.long sys_seccomp /* 355 */
893+
.long sys_getrandom
894+
.long sys_memfd_create
895+
.long sys_bpf
896+
.long sys_execveat
878897

879898
/*
880899
* NOTE!! This doesn't have to be exact - we just have

arch/cris/arch-v32/kernel/process.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,9 @@ extern void stop_watchdog(void);
2323
/* We use this if we don't have any better idle routine. */
2424
void default_idle(void)
2525
{
26+
local_irq_enable();
2627
/* Halt until exception. */
27-
__asm__ volatile("ei \n\t"
28-
"halt ");
28+
__asm__ volatile("halt");
2929
}
3030

3131
/*

arch/cris/arch-v32/kernel/signal.c

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919
#include <asm/processor.h>
2020
#include <asm/ucontext.h>
2121
#include <asm/uaccess.h>
22-
#include <arch/ptrace.h>
2322
#include <arch/hwregs/cpu_vect.h>
2423

2524
extern unsigned long cris_signal_return_page;

0 commit comments

Comments
 (0)