Commit Graph

131364 Commits

Author SHA1 Message Date
Mauro Ribeiro
b457f6db31 Merge "ODROID-N2: config: disable 'CONFIG_AMLOGIC_PAGE_TRACE'" into odroidn2-4.9.y 2019-03-22 20:42:30 +09:00
Mauro Ribeiro
66c954deda Merge "ODROID-N2: config: disable 'CONFIG_AMLOGIC_VMAP'" into odroidn2-4.9.y 2019-03-22 20:42:03 +09:00
Dongjin Kim
eedc06cdd6 ODROID-N2: config: disable 'CONFIG_AMLOGIC_PAGE_TRACE'
This patch is to remove the logs below:

	[    0.000000] can't find symbol:arm_dma_alloc
	[    0.000000] can't find symbol:__alloc_from_contiguous
	[    0.000000] can't find symbol:cma_allocator_alloc
	[    0.000000]  0, addr:ffffff80099a15f0 +  140, aml_cma_alloc_post_hook
	[    0.000000]  1, addr:ffffff800957eb88 +   78, dma_alloc_from_contiguous
	[    0.000000]  2, addr:ffffff800922ebc8 +  2b8, cma_alloc
	[    0.000000]  3, addr:ffffff800921f638 +  300, __kmalloc_track_caller
	[    0.000000]  4, addr:ffffff800921c788 +  300, __kmalloc
	[    0.000000]  5, addr:ffffff800921c430 +  290, kmem_cache_alloc_trace
	[    0.000000]  6, addr:ffffff800921c1b0 +  280, kmem_cache_alloc
	[    0.000000]  7, addr:ffffff800921c138 +   78, __slab_alloc.isra.23.constprop.27
	[    0.000000]  8, addr:ffffff800921bdc0 +  378, ___slab_alloc.constprop.28
	[    0.000000]  9, addr:ffffff80092198d0 +  580, new_slab
	[    0.000000] 10, addr:ffffff800920c940 +   70, vmalloc
	[    0.000000] 11, addr:ffffff800920c858 +   70, vzalloc
	[    0.000000] 12, addr:ffffff800920c308 +  2a0, __vmalloc_node_range
	[    0.000000] 13, addr:ffffff80091f0070 +  110, kmalloc_order_trace
	[    0.000000] 14, addr:ffffff80091eff00 +  170, kmalloc_order
	[    0.000000] 15, addr:ffffff80091cf638 +  168, __alloc_page_frag
	[    0.000000] 16, addr:ffffff80091cf5d0 +   68, alloc_pages_exact
	[    0.000000] 17, addr:ffffff80091cf5a0 +   30, get_zeroed_page
	[    0.000000] 18, addr:ffffff80091cf548 +   58, __get_free_pages
	[    0.000000] 19, addr:ffffff80091ce738 +  e10, __alloc_pages_nodemask
	[    0.000000] 20, addr:ffffff800909d8a0 +  258, __dma_alloc

Change-Id: Ib81bd3617a47b60472aab2cf4adc4beb1a2643aa
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
2019-03-22 16:34:49 +09:00
Dongjin Kim
163fc91f2d ODROID-N2: config: disable 'CONFIG_AMLOGIC_VMAP'
This patch is to remove the error below.

	[    0.282128] VMAP:handle_vmap_fault address ffffff80200c4000 out of range
	[    0.282152] VMAP:handle_vmap_fault PC is:ffffff800925db6c, copy_mount_options, LR is:ffffff800925dad8 copy_mount_options
	[    0.282159] VMAP:handle_vmap_fault task:44 kdevtmpfs, stack:ffffff80200c0000, ffffffc0cf308960
	[    0.282167] CPU: 0 PID: 44 Comm: kdevtmpfs Not tainted 4.9.162+ #1
	[    0.282172] Hardware name: Hardkernel ODROID-N2 (DT)
	[    0.282178] Call trace:
	[    0.282189] [ffffffc0cf308880+ 128][<ffffff800908b908>] dump_backtrace+0x0/0x288
	[    0.282198] [ffffffc0cf308900+  32][<ffffff800908bc14>] show_stack+0x24/0x30
	[    0.282207] [ffffffc0cf308920+  64][<ffffff800944d560>] dump_stack+0xb0/0xe0
	[    0.282218] [ffffffc0cf308960+  64][<ffffff80099a0544>] handle_vmap_fault+0x1e4/0x218
	[    0.282226] [ffffffc0cf3089a0+   0][<ffffff8009082f68>] el1_da+0x14/0x148
	[    0.282234] [ffffff80200c3d20+  80][<ffffff800925dad8>] copy_mount_options+0xb8/0x1b0
	[    0.282241] [ffffff80200c3d70+  64][<ffffff800925eba8>] SyS_mount+0x70/0x108
	[    0.282251] [ffffff80200c3db0+ 112][<ffffff800957d0f8>] devtmpfsd+0x80/0x190
	[    0.282260] [ffffff80200c3e20+   0][<ffffff80090cd298>] kthread+0xf8/0x110
	[    0.282268] [0000000000000000+   0][<ffffff8009083ad0>] ret_from_fork+0x10/0x40

Change-Id: If59066c6e094be7f25ba33f1978acde03975700c
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
2019-03-22 16:34:24 +09:00
Kevin Kim
ba7624d44f ODROID-COMMON:alsa-default-sink set to HDMI-output
Change-Id: I6165eed22baca6150b4dfc79e9108ba344385d0d
2019-03-22 15:21:55 +09:00
Kevin Kim
4b79a61ce3 odroid-common:pwm-fan device enabled for active cooling.
Change-Id: I1dcdfa4c22ab72cd24b1be870727420683073f9a
2019-03-15 11:13:10 +09:00
Joy Cho
4a534ab482 Merge "media: rc: Add lirc helper to support user remote wakeup" into odroidn2-4.9.y 2019-03-14 15:42:48 +09:00
Joy Cho
444000231d media: rc: Add lirc helper to support user remote wakeup
- set user remote wakeup key
- set ir decode protocol for wakeup

Change-Id: If083545f64d4e0b9c30bed89ce4bc9ecd37ea8ac
2019-03-13 16:52:21 +09:00
Kevin Kim
a11bceab27 ODROID-COMMON:audio mclk set to continuous clock
Change-Id: I2184521fb9370018f7d38fad2aea2bb63adab4fa
2019-03-13 16:03:06 +09:00
Dongjin Kim
71551e3aa1 ODROID-C3/N2: remove unsupported feature 'MEDIA_ENHANCEMENT_DOLBYVISION'
Change-Id: I8674837de099f3653d7b101c47cae012273fc8d1
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
2019-03-12 18:39:18 +09:00
Dongjin Kim
06e489b8ed ODROID-COMMON: fbcon: use soft cursor instead of hardware cursor
The hardware cursor is not visible, so ....use soft cursor instead.

Change-Id: Ibb4e4b831940f0a4674adf27a6b6e5653a59d001
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
2019-03-12 17:20:31 +09:00
Dongjin Kim
05e8bced71 ODROID-N2: bios: include PCF8563 RTC driver
Change-Id: I9434ccb11ba2ceeddafdc88dca56713497906961
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
2019-03-12 17:15:15 +09:00
Dongjin Kim
e31fd75ab7 ODROID-N2: config: Add 'gpioplug_ir_recv' for GPIO-based IR receiver
Change-Id: I09c12bfa0f4832971ddedd5140128085bc26087d
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
2019-03-12 14:43:01 +09:00
Dongjin Kim
e5ff7549fd ODROID-N2: arm64/dtb: change to suport 'both' interrupt edge trigger
Change-Id: I033e6bf4cbb35199a26572fd442264cc4cb0e58b
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
2019-03-11 15:34:53 +09:00
Kevin Kim
a4a2424ceb ODROID-N2:40p expansion I2C function enabled by default.
Change-Id: Ifd14a7a8b0fbd14d636122c013cad3452e3ae245
2019-03-11 12:22:05 +09:00
Mauro (mdrjr) Ribeiro
a79c7062da Merge tag 'v4.9.162' of git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable into odroidn2-4.9.y
This is the 4.9.162 stable release

Change-Id: I8042a515f639d3857bb6aae03284aabaede1f7b9
2019-03-06 10:45:14 -03:00
Mauro (mdrjr) Ribeiro
2ab9e6444f Merge tag 'v4.9.161' of git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable into odroidn2-4.9.y
This is the 4.9.161 stable release
2019-03-06 10:45:05 -03:00
Mauro (mdrjr) Ribeiro
9c7f743d41 ODROID-N2: config: re-enable f2fs as built-in
Change-Id: Iea1adf6dfe1cb612a4cbe2b60e568246a25682af
2019-03-06 10:39:03 -03:00
Dongjin Kim
cc078bc87f ODROID-N2: config: reconfig based on BSP openlinux-20190220
Change-Id: I09d6bba84c65b72e72c32f4de9af4bc9ff41b605
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
2019-03-06 02:27:18 +09:00
Dongjin Kim
3c4f21fdf2 Merge remote-tracking branch 'origin/odroidn2-4.9.y' into odroidn2-4.9.y-upstream
Change-Id: If980b269fe64e24846bda4d1a160f99d070831b7
2019-03-06 02:10:14 +09:00
Andy Lutomirski
dd15ae3ccc x86/uaccess: Don't leak the AC flag into __put_user() value evaluation
commit 2a418cf3f5 upstream.

When calling __put_user(foo(), ptr), the __put_user() macro would call
foo() in between __uaccess_begin() and __uaccess_end().  If that code
were buggy, then those bugs would be run without SMAP protection.

Fortunately, there seem to be few instances of the problem in the
kernel. Nevertheless, __put_user() should be fixed to avoid doing this.
Therefore, evaluate __put_user()'s argument before setting AC.

This issue was noticed when an objtool hack by Peter Zijlstra complained
about genregs_get() and I compared the assembly output to the C source.

 [ bp: Massage commit message and fixed up whitespace. ]

Fixes: 11f1a4b975 ("x86: reorganize SMAP handling in user space accesses")
Signed-off-by: Andy Lutomirski <luto@kernel.org>
Signed-off-by: Borislav Petkov <bp@suse.de>
Acked-by: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Brian Gerst <brgerst@gmail.com>
Cc: Josh Poimboeuf <jpoimboe@redhat.com>
Cc: Denys Vlasenko <dvlasenk@redhat.com>
Cc: stable@vger.kernel.org
Link: http://lkml.kernel.org/r/20190225125231.845656645@infradead.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-03-05 17:57:07 +01:00
Seth Forshee
d681c246bf powerpc: Always initialize input array when calling epapr_hypercall()
commit 186b8f1587 upstream.

Several callers to epapr_hypercall() pass an uninitialized stack
allocated array for the input arguments, presumably because they
have no input arguments. However this can produce errors like
this one

 arch/powerpc/include/asm/epapr_hcalls.h:470:42: error: 'in' may be used uninitialized in this function [-Werror=maybe-uninitialized]
  unsigned long register r3 asm("r3") = in[0];
                                        ~~^~~

Fix callers to this function to always zero-initialize the input
arguments array to prevent this.

Signed-off-by: Seth Forshee <seth.forshee@canonical.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Cc: "A. Wilcox" <awilfox@adelielinux.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-03-05 17:57:06 +01:00
Vitaly Kuznetsov
7c0d76ee79 KVM: nSVM: clear events pending from svm_complete_interrupts() when exiting to L1
[ Upstream commit 619ad846fc ]

kvm-unit-tests' eventinj "NMI failing on IDT" test results in NMI being
delivered to the host (L1) when it's running nested. The problem seems to
be: svm_complete_interrupts() raises 'nmi_injected' flag but later we
decide to reflect EXIT_NPF to L1. The flag remains pending and we do NMI
injection upon entry so it got delivered to L1 instead of L2.

It seems that VMX code solves the same issue in prepare_vmcs12(), this was
introduced with code refactoring in commit 5f3d579997 ("KVM: nVMX: Rework
event injection and recovery").

Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-03-05 17:57:06 +01:00
Suravee Suthikulpanit
f5118fea06 svm: Fix AVIC incomplete IPI emulation
[ Upstream commit bb218fbcfa ]

In case of incomplete IPI with invalid interrupt type, the current
SVM driver does not properly emulate the IPI, and fails to boot
FreeBSD guests with multiple vcpus when enabling AVIC.

Fix this by update APIC ICR high/low registers, which also
emulate sending the IPI.

Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-03-05 17:57:06 +01:00
Eugeniy Paltsev
ad5530d0c3 ARC: fix __ffs return value to avoid build warnings
[ Upstream commit 4e868f8419 ]

|  CC      mm/nobootmem.o
|In file included from ./include/asm-generic/bug.h:18:0,
|                 from ./arch/arc/include/asm/bug.h:32,
|                 from ./include/linux/bug.h:5,
|                 from ./include/linux/mmdebug.h:5,
|                 from ./include/linux/gfp.h:5,
|                 from ./include/linux/slab.h:15,
|                 from mm/nobootmem.c:14:
|mm/nobootmem.c: In function '__free_pages_memory':
|./include/linux/kernel.h:845:29: warning: comparison of distinct pointer types lacks a cast
|   (!!(sizeof((typeof(x) *)1 == (typeof(y) *)1)))
|                             ^
|./include/linux/kernel.h:859:4: note: in expansion of macro '__typecheck'
|   (__typecheck(x, y) && __no_side_effects(x, y))
|    ^~~~~~~~~~~
|./include/linux/kernel.h:869:24: note: in expansion of macro '__safe_cmp'
|  __builtin_choose_expr(__safe_cmp(x, y), \
|                        ^~~~~~~~~~
|./include/linux/kernel.h:878:19: note: in expansion of macro '__careful_cmp'
| #define min(x, y) __careful_cmp(x, y, <)
|                   ^~~~~~~~~~~~~
|mm/nobootmem.c:104:11: note: in expansion of macro 'min'
|   order = min(MAX_ORDER - 1UL, __ffs(start));

Change __ffs return value from 'int' to 'unsigned long' as it
is done in other implementations (like asm-generic, x86, etc...)
to avoid build-time warnings in places where type is strictly
checked.

As __ffs may return values in [0-31] interval changing return
type to unsigned is valid.

Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-03-05 17:57:05 +01:00
Kevin Kim
6388e218f9 ODROID-COMMON:Add Mixer control for LINE-OUT Mute
Mute : amixer -c0 sset 'LINE_OUT mute' on
Unmute : amixer -c0 sset 'LINE_OUT mute' off
Boot on state : unmute

Change-Id: If899ea5607cbef8b62fb35b66c79089beb192d1a
2019-03-05 15:42:34 +09:00
Dongjin Kim
3fd41551e8 ODROID-COMMON: usb3: do not reset USB hub on boot
Change-Id: I167f44ff20e35be30851e81cdd180afb5d093d29
Signed-off-by: Dongjin Kim <tobetter@gmail.com>
2019-02-28 03:49:01 -05:00
Will Deacon
411b7ca7f6 irqchip/gic-v3: Convert arm64 GIC accessors to {read,write}_sysreg_s
commit d44ffa5ae7 upstream.

The GIC system registers are accessed using open-coded wrappers around
the mrs_s/msr_s asm macros.

This patch moves the code over to the {read,wrote}_sysreg_s accessors
instead, reducing the amount of explicit asm blocks in the arch headers.

Reviewed-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
[nc: Also fix gic_write_bpr1, which was incidentally fixed in
     0e9884fe63 ("arm64: sysreg: subsume GICv3 sysreg definitions")]
Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-02-27 10:07:02 +01:00
Matthias Kaehlcke
e81c46456b x86/boot: Disable the address-of-packed-member compiler warning
commit 20c6c18904 upstream.

The clang warning 'address-of-packed-member' is disabled for the general
kernel code, also disable it for the x86 boot code.

This suppresses a bunch of warnings like this when building with clang:

./arch/x86/include/asm/processor.h:535:30: warning: taking address of
  packed member 'sp0' of class or structure 'x86_hw_tss' may result in an
  unaligned pointer value [-Waddress-of-packed-member]
    return this_cpu_read_stable(cpu_tss.x86_tss.sp0);
                                ^~~~~~~~~~~~~~~~~~~
./arch/x86/include/asm/percpu.h:391:59: note: expanded from macro
  'this_cpu_read_stable'
    #define this_cpu_read_stable(var)       percpu_stable_op("mov", var)
                                                                    ^~~
./arch/x86/include/asm/percpu.h:228:16: note: expanded from macro
  'percpu_stable_op'
    : "p" (&(var)));
             ^~~

Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
Cc: Doug Anderson <dianders@chromium.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Masahiro Yamada <yamada.masahiro@socionext.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/20170725215053.135586-1-mka@chromium.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-02-27 10:07:02 +01:00
Alexey Brodkin
9e3bd86861 ARC: define ARCH_SLAB_MINALIGN = 8
commit b6835ea777 upstream.

The default value of ARCH_SLAB_MINALIGN in "include/linux/slab.h" is
"__alignof__(unsigned long long)" which for ARC unexpectedly turns out
to be 4. This is not a compiler bug, but as defined by ARC ABI [1]

Thus slab allocator would allocate a struct which is 32-bit aligned,
which is generally OK even if struct has long long members.
There was however potetial problem when it had any atomic64_t which
use LLOCKD/SCONDD instructions which are required by ISA to take
64-bit addresses. This is the problem we ran into

[    4.015732] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[    4.167881] Misaligned Access
[    4.172356] Path: /bin/busybox.nosuid
[    4.176004] CPU: 2 PID: 171 Comm: rm Not tainted 4.19.14-yocto-standard #1
[    4.182851]
[    4.182851] [ECR   ]: 0x000d0000 => Check Programmer's Manual
[    4.190061] [EFA   ]: 0xbeaec3fc
[    4.190061] [BLINK ]: ext4_delete_entry+0x210/0x234
[    4.190061] [ERET  ]: ext4_delete_entry+0x13e/0x234
[    4.202985] [STAT32]: 0x80080002 : IE K
[    4.207236] BTA: 0x9009329c   SP: 0xbe5b1ec4  FP: 0x00000000
[    4.212790] LPS: 0x9074b118  LPE: 0x9074b120 LPC: 0x00000000
[    4.218348] r00: 0x00000040  r01: 0x00000021 r02: 0x00000001
...
...
[    4.270510] Stack Trace:
[    4.274510]   ext4_delete_entry+0x13e/0x234
[    4.278695]   ext4_rmdir+0xe0/0x238
[    4.282187]   vfs_rmdir+0x50/0xf0
[    4.285492]   do_rmdir+0x9e/0x154
[    4.288802]   EV_Trap+0x110/0x114

The fix is to make sure slab allocations are 64-bit aligned.

Do note that atomic64_t is __attribute__((aligned(8)) which means gcc
does generate 64-bit aligned references, relative to beginning of
container struct. However the issue is if the container itself is not
64-bit aligned, atomic64_t ends up unaligned which is what this patch
ensures.

[1] https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/wiki/files/ARCv2_ABI.pdf

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: <stable@vger.kernel.org> # 4.8+
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
[vgupta: reworked changelog, added dependency on LL64+LLSC]
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-02-27 10:07:01 +01:00
Eugeniy Paltsev
036df53862 ARC: U-boot: check arguments paranoidly
commit a66f2e57bd upstream.

Handle U-boot arguments paranoidly:
 * don't allow to pass unknown tag.
 * try to use external device tree blob only if corresponding tag
   (TAG_DTB) is set.
 * don't check uboot_tag if kernel build with no ARC_UBOOT_SUPPORT.

NOTE:
If U-boot args are invalid we skip them and try to use embedded device
tree blob. We can't panic on invalid U-boot args as we really pass
invalid args due to bug in U-boot code.
This happens if we don't provide external DTB to U-boot and
don't set 'bootargs' U-boot environment variable (which is default
case at least for HSDK board) In that case we will pass
{r0 = 1 (bootargs in r2); r1 = 0; r2 = 0;} to linux which is invalid.

While I'm at it refactor U-boot arguments handling code.

Cc: stable@vger.kernel.org
Tested-by: Corentin LABBE <clabbe@baylibre.com>
Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-02-27 10:07:01 +01:00
Eugeniy Paltsev
812224d6b1 ARCv2: Enable unaligned access in early ASM code
commit 252f6e8eae upstream.

It is currently done in arc_init_IRQ() which might be too late
considering gcc 7.3.1 onwards (GNU 2018.03) generates unaligned
memory accesses by default

Cc: stable@vger.kernel.org #4.4+
Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
[vgupta: rewrote changelog]
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-02-27 10:07:01 +01:00
Dmitry V. Levin
e9f06133d7 parisc: Fix ptrace syscall number modification
commit b7dc5a071d upstream.

Commit 910cd32e55 ("parisc: Fix and enable seccomp filter support")
introduced a regression in ptrace-based syscall tampering: when tracer
changes syscall number to -1, the kernel fails to initialize %r28 with
-ENOSYS and subsequently fails to return the error code of the failed
syscall to userspace.

This erroneous behaviour could be observed with a simple strace syscall
fault injection command which is expected to print something like this:

$ strace -a0 -ewrite -einject=write:error=enospc echo hello
write(1, "hello\n", 6) = -1 ENOSPC (No space left on device) (INJECTED)
write(2, "echo: ", 6) = -1 ENOSPC (No space left on device) (INJECTED)
write(2, "write error", 11) = -1 ENOSPC (No space left on device) (INJECTED)
write(2, "\n", 1) = -1 ENOSPC (No space left on device) (INJECTED)
+++ exited with 1 +++

After commit 910cd32e55 it loops printing
something like this instead:

write(1, "hello\n", 6../strace: Failed to tamper with process 12345: unexpectedly got no error (return value 0, error 0)
) = 0 (INJECTED)

This bug was found by strace test suite.

Fixes: 910cd32e55 ("parisc: Fix and enable seccomp filter support")
Cc: stable@vger.kernel.org # v4.5+
Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
Tested-by: Helge Deller <deller@gmx.de>
Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-02-27 10:07:01 +01:00
Thomas Bogendoerfer
8b5c7892fc MIPS: jazz: fix 64bit build
[ Upstream commit 41af167fbc ]

64bit JAZZ builds failed with

  linux-next/arch/mips/jazz/jazzdma.c: In function `vdma_init`:
  /linux-next/arch/mips/jazz/jazzdma.c:77:30: error: implicit declaration
    of function `KSEG1ADDR`; did you mean `CKSEG1ADDR`?
    [-Werror=implicit-function-declaration]
    pgtbl = (VDMA_PGTBL_ENTRY *)KSEG1ADDR(pgtbl);
                                ^~~~~~~~~
                                CKSEG1ADDR
  /linux-next/arch/mips/jazz/jazzdma.c:77:10: error: cast to pointer from
    integer of different size [-Werror=int-to-pointer-cast]
    pgtbl = (VDMA_PGTBL_ENTRY *)KSEG1ADDR(pgtbl);
            ^
  In file included from /linux-next/arch/mips/include/asm/barrier.h:11:0,
                   from /linux-next/include/linux/compiler.h:248,
                   from /linux-next/include/linux/kernel.h:10,
                   from /linux-next/arch/mips/jazz/jazzdma.c:11:
  /linux-next/arch/mips/include/asm/addrspace.h:41:29: error: cast from
    pointer to integer of different size [-Werror=pointer-to-int-cast]
   #define _ACAST32_  (_ATYPE_)(_ATYPE32_) /* widen if necessary */
                               ^
  /linux-next/arch/mips/include/asm/addrspace.h:53:25: note: in
    expansion of macro `_ACAST32_`
   #define CPHYSADDR(a)  ((_ACAST32_(a)) & 0x1fffffff)
                           ^~~~~~~~~
  /linux-next/arch/mips/jazz/jazzdma.c:84:44: note: in expansion of
    macro `CPHYSADDR`
    r4030_write_reg32(JAZZ_R4030_TRSTBL_BASE, CPHYSADDR(pgtbl));

Using correct casts and CKSEG1ADDR when dealing with the pgtbl setup
fixes this.

Signed-off-by: Thomas Bogendoerfer <tbogendoerfer@suse.de>
Signed-off-by: Paul Burton <paul.burton@mips.com>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: James Hogan <jhogan@kernel.org>
Cc: linux-mips@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-02-27 10:06:59 +01:00
Alban Bedel
ef5cb2ef9d MIPS: ath79: Enable OF serial ports in the default config
[ Upstream commit 565dc8a4f5 ]

CONFIG_SERIAL_OF_PLATFORM is needed to get a working console on the OF
boards, enable it in the default config to get a working setup out of
the box.

Signed-off-by: Alban Bedel <albeu@free.fr>
Signed-off-by: Paul Burton <paul.burton@mips.com>
Cc: linux-mips@vger.kernel.org
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: James Hogan <jhogan@kernel.org>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-02-27 10:06:59 +01:00
Joy Cho
08503c1e9b ODROID-N2: staging: lirc: support GPIO based IR Blaster
Change-Id: I0a4993e68784a31f3d89c2f54e69dc70aa7bc5f3
2019-02-27 10:58:44 +09:00
Cheng Tong
7aebba605a dts: g12a: add clk_81 to enable demux pcr [1/1]
PD#SWPL-4469

Problem:
dolby files have no sounds after replay

Solution:
in u212, the clk_81 is null when init, it is related
to demux pcr, so add clk_81 to enable demux pcr

Verify:
verify by franklin

Change-Id: Id862e4e8ac49c19bbd52fa6fa4831de20abad6c8
Signed-off-by: Cheng Tong <cheng.tong@amlogic.com>
2019-02-26 18:47:39 +09:00
Guosong Zhou
6002c65469 isp: config temper buffer size in dts [1/2]
PD#SWPL-4177

Problem:
temper buffer size is a fixed value in code

Solution:
config temper buffer size from dts

Verify:
verify by w400

Change-Id: I17ef428221f149a888e0318bc27d7b7d309c00ce
Signed-off-by: Guosong Zhou <guosong.zhou@amlogic.com>
2019-02-26 18:47:39 +09:00
Guosong Zhou
92b332a129 camera: support the dvp camera [1/1]
PD#SWPL-2133

Problem:
don't support dvp camera

Solution:
add dvp camera driver

Verify:
verify by u200

Change-Id: I8517913e0c3724247b396e8d054d6a4541a1993a
Signed-off-by: Guosong Zhou <guosong.zhou@amlogic.com>
2019-02-26 18:47:39 +09:00
Guosong Zhou
a9ef9dbd5c camera: add dvp camera [1/1]
PD#OTT-1204

Problem:
don't support dvp camera

Solution:
add dvp camera gc2145 camera driver

Verify:
test pass on U200

Change-Id: I5927d49a93952587af7bb460a5c405293d692153
Signed-off-by: Guosong Zhou <guosong.zhou@amlogic.com>
Signed-off-by: Luan Yuan <luan.yuan@amlogic.com>

Conflicts:
	MAINTAINERS
2019-02-26 18:47:39 +09:00
Huan Biao
b05ab06288 arm64: dts: gxl: optimize ipa parameter [1/1]
PD#SWPL-3726

Problem:
game cannot run smoothly

Solution:
1:modify cooling devices min status
    cpufreq 1000Mhz-->1200Mhz
    gpufreq 400MHz -->500MHz
2:modify switch trippoint freq trippoint hotplug trippoint
    70000-->80000
    80000-->90000
    85000-->100000

Verify:
p215 pass

Change-Id: I36d8ac8ca578f92c8aeda7d979df1f3f56311ce3
Signed-off-by: Huan Biao <huan.biao@amlogic.com>
2019-02-26 18:20:10 +09:00
Huan Biao
075def31f3 arm: dts: gxl: optimize ipa parameter [1/1]
PD#SWPL-3726

Problem:
game cannot run smoothly

Solution:
1:modify cooling devices min status
	cpufreq 1000Mhz-->1200Mhz
	gpufreq 400MHz -->500MHz
2:modify switch trippoint freq trippoint hotplug trippoint
	70000-->80000
	80000-->90000
	85000-->100000
3:fix gpupp get fail issue

Verify:
p215 pass

Change-Id: Id0a1e1ac9619f0d9a20e2aad172ba0c84c7a2e9d
Signed-off-by: Huan Biao <huan.biao@amlogic.com>
2019-02-26 18:20:10 +09:00
riqun.ou
59e7a359e7 sound: add resample node for axg_s420_v03gva.dts [1/1]
PD#SWPL-365

Problem:
System can't use resample function on GVA project.

Solution:
Add resample node in axg_s420_v03gva.dts

Verify:
Passed on s420

Change-Id: Ie48c579e9e9f6e1d61147f5410c95e5bca55b0a7
Signed-off-by: riqun.ou <riqun.ou@amlogic.com>

audio: codecs: fix TL1 reference board volume too small [2/2]

PD#SWPL-2652

Problem:
    X301/T309 AMP volume configured to small

Solution:
    change the default external AMP codec mixer name to a match
    the ini parsing function in audio hal.
    TODO: need dynamically check the different codec mixer name
    in ini file.

Verify:
    verify by x301

Change-Id: Iba835d37ea02bec3095556d54fbf327bd6390904
Signed-off-by: Jian Xu <jian.xu@amlogic.com>

audio: codec: the DAC gain set of acodec not work [1/1]

PD#SWPL-3134

Problem:
the DAC gain set is not work

Solution:
update and aml_codec_tl1_acodec.c, change the method of
getting codec pointer from kcontrol pointer.

Verify:
verify by T962x2_X301 board

Change-Id: I02f02b73fab3b8391ef4866a71ffaf0d48bbbbbf
Signed-off-by: Shuyu Li <shuyu.li@amlogic.com>

audio: add tas5805 [1/1]

PD#SWPL-3081

Problem:
compatiable tas5805 module

Solution:
add tas5805 drivers

Verify:
T962X2

Change-Id: I3608e47fe768af0f924751a8bcc103389d0811de
Signed-off-by: Yonghao Jiao <yonghao.jiao@amlogic.com>

audio: auge: add HDMIRX SPDIF in support [1/2]

PD#SWPL-2956

Problem:
HDMI in DTS/Dolby input has noise when treated to LPCM

Solution:
By default,we are using PAO mode for HDMIRX,but we have not
enabled the PaPb search for 61937 raw data input, after add
that, we can detect the raw data, but it can not by clear when
switch from NONE-LPCM to NONE-LPCM, need add IRQ function to
clear that by sw.we enabled spdif in from HDMIRX, which is  the same
design as txl/txlx.we can get the Pc information now.
also we add a new interface to set spdif in source when hdmirx input.

Verify:
x301

Change-Id: I3c4e8b387308ef862a069c29d15b8b5a9e865564
Signed-off-by: Jian Xu <jian.xu@amlogic.com>

udio: auge: tl1 acodec mapping to data 1 [1/2]

PD#SWPL-3277

Problem:
tl1 internal codec volume can by adjusted

Solution:
configure the acodec data layout mapping
to a fixed volume

Verify:
x301

Change-Id: I14d3762b39a0a5291722ef5489026f10fc960120
Signed-off-by: Jian Xu <jian.xu@amlogic.com>

Conflicts:
	arch/arm/boot/dts/amlogic/tl1_t962x2_t309.dts

audio: Fix TDM not wokring on HDMI I2S in [1/1]

PD#SWPL-2887

Problem:
  When TDM is used for HDMI I2S in, the solt set is wrong.

Solution:
  Fix the lane max value from 3 to 4

Verify:
  A113

Change-Id: I33f5ca21bf1e2407d83fa5d0f22e21f7b1f5e749
Signed-off-by: yujie.wu <yujie.wu@amlogic.com>

audio: codec: fix to resume ad82584's volume after suspend [1/1]

PD#SWPL-3456

Problem:
1) After suspend, volume is not resume
2) ARC connected, still sound out from spk

Solution:
1) save channel volume when suspend, then resume the volume
2) add mute mixer control for ad82584

Verify:
x301

Change-Id: Ic6e7502e3f9689cc2d1053295f26aaf4d5be2603
Signed-off-by: Xing Wang <xing.wang@amlogic.com>

audio: auge: add vad driver [1/1]

PD#SWPL-2404

Problem:
VAD for wake up

Solution:
Add vad driver to fetch VAD buffer and ALSA buffer, in userspace, they
will be combined for wakeup engine

Verify:
x301

Change-Id: I3b4de5fdfe173ce18e58a187a3adeda601e226b3
Signed-off-by: Xing Wang <xing.wang@amlogic.com>

audio: fix pop snd after bootup [2/2]

PD#SWPL-3178

Problem:
output big pop noise after system boot up.

Solution:
Add zero and then unmute the stream.
NOTICE: user should unmute the AD82584F after boot.

Verify:
local verified.

Change-Id: I21555318f9347c5340a28f7e5cf0e3e2cde849a0
Signed-off-by: Shuai Li <shuai.li@amlogic.com>

audio: fix no audio after resume of ad82584f [1/1]

PD#SWPL-4090

Problem:
No audio after suspend and resume.
Suspend won't save the mute value,
and after resume, it could not be restored.

Solution:
Add a mute val to save when suspend,
and after resume, restore the mute value.

Verify:
Verified by QA.

Change-Id: Ie24bb11f5c565048391846a66b5d12bab1d55666
Signed-off-by: Shuai Li <shuai.li@amlogic.com>

audio: auge: fix sharebuffer channel map [1/1]

PD#SWPL-2645

Problem:
play ddp source, then play pcm source, no sound

Solution:
1. fix same source control and channel map issue
2. i2s 8ch, spdif 2ch, channels are not mapped, make spdif 8 channel mask
3. when same source used, keep mpll use same mpll

Verify:
x301

Change-Id: I2fe4bbcbcbfff0a1c1a6cebf61d1da5aba9b7a9d
Signed-off-by: Xing Wang <xing.wang@amlogic.com>

Conflicts:
	arch/arm64/boot/dts/amlogic/tl1_t962x2_t309.dts
	arch/arm64/boot/dts/amlogic/tl1_t962x2_x301.dts

audio: add stream mute and continuous clk [1/1]

PD#SWPL-2952

Problem:
Pop noise could be heard
when switching between sources.

Solution:
1. Add stream digital mute functions.
2. continuous clock to eliminate
  the clk reset issue.

Verify:
Local verified.

Change-Id: I372f4c03aaf875d75aa903c9c2dfda00619af000
Signed-off-by: Shuai Li <shuai.li@amlogic.com>

dts: tl1: enable resample for tl1 [1/2]

PD#SWPL-3365

Problem:
not resample for audio in, so output in wrong sample rate

Solution:
1. enable resample in dts
2. fix to check whether resample is needed

Verify:
x301

Change-Id: I99238cc21a00ab53df6a1f8ab1703bc9ab48cbaa
Signed-off-by: Xing Wang <xing.wang@amlogic.com>

Conflicts:
	arch/arm64/boot/dts/amlogic/tl1_t962x2_t309.dts
	arch/arm64/boot/dts/amlogic/tl1_t962x2_x301.dts
2019-02-26 18:20:10 +09:00
Cheng Tong
a521771ef0 dts: u212 2G ddr add dvb dts config [1/1]
PD#SWPL-4140

Problem:
u212 2G dts didn't have dvb config

Solution:
add dvb dts config
defalut commented out as reference

Verify:
Verify by Android P franklin

Change-Id: I1ffc631ff0a729e6701fd8cd17b28f70666b1e30
Signed-off-by: Cheng Tong <cheng.tong@amlogic.com>
2019-02-26 18:20:10 +09:00
Hui Zhang
a614d4ac08 dts: release memory of the reserved 1MB [2/2]
PD#SWPL-2372

Problem:
phy addr (0 - 0x100000) is reserved before. once it is release for system use.
it will be polluted by video decoder (avs2 & vp9)

Solution:
init hw addr (not 0) in decoder to avoid 0 address polluted.
then release reserved 1MB memory space in dts

Verify:
U212

Change-Id: I36f6caa09267ab1180ff12cfed9b9c7befff2842
Signed-off-by: Hui Zhang <hui.zhang@amlogic.com>
2019-02-26 18:20:10 +09:00
Tao Zeng
ca113f30d8 mm: fix range mistake for virt_check [1/1]
PD#SWPL-3793

Problem:
Address 0xC0000000 is in lowmem, which should not be warned by

virt_check:d input of virt:c0000000
                           ~~~~~~~~
CPU: 1 PID: 5141 Comm: Binder:3297_5 Tainted: G           O    4.9.113 #1
Hardware name: Generic DT based system
[<c030e760>] (show_stack+0x20/0x24)
[<c06ee8a8>] (dump_stack+0x90/0xac)
[<c031c7b4>] (virt_check+0x64/0x68)
[<c049c45c>] (__check_object_size+0x184/0x1f8)
[<c07058c0>] (copy_page_to_iter+0x288/0x5b8)
[<c04425dc>] (generic_file_read_iter+0x390/0xa48)
[<c049f238>] (__vfs_read+0xec/0x13c)
[<c04a00e0>] (vfs_read+0x9c/0x164)
[<c05ce7e8>] (sdcardfs_read+0x28/0x50)
[<c049f194>] (__vfs_read+0x48/0x13c)
[<c04a00e0>] (vfs_read+0x9c/0x164)
[<c04a13ac>] (SyS_read+0x5c/0xbc)
[<c0308980>] (ret_fast_syscall+0x0/0x48)

Solution:
Not warning for 0xC0000000 if virt address is equal to it

Verify:
R311

Change-Id: I9a3f8efe89564f31f9a49ab4448323c93ddc761d
Signed-off-by: Tao Zeng <tao.zeng@amlogic.com>
2019-02-26 18:20:10 +09:00
Tao Zeng
1165f98b3a mm: check virt_to_xxxx macro on 32bit OS [1/1]
PD#SWPL-1909

Problem:
virt_to_page may get bad input with virtual address
in high mem.

Solution:
Check input address of this macro and get a warn print

Verify:
p212

Change-Id: I69d81f7aac43f1865d3d1112263276603de166ce
Signed-off-by: Tao Zeng <tao.zeng@amlogic.com>
2019-02-26 18:16:48 +09:00
rongrong zhou
e74f5c60cd dts: add netflix MGKID unify key [3/3]
PD#SWPL-2847

Problem:
    add netflix MGKID support

Solution:
    add netflix MGKID support

Verify:
    ampere NTS

Change-Id: I7bf7f7b7527a36dc7b50f1a98bdb5d0a60af8741
Signed-off-by: rongrong zhou <rongrong.zhou@amlogic.com>
2019-02-26 18:16:48 +09:00
Hanjie Lin
3c3255d755 dts: fix g12b energy-cost config error [1/1]
PD#SWPL-1007

Problem:
g12b a53 core energy-cost config is error.

Solution:
modify with right cost value

Verify:
w400

Change-Id: I1ffba5b147879a4178f255247f338b594e440eed
Signed-off-by: Hanjie Lin <hanjie.lin@amlogic.com>
2019-02-26 18:16:48 +09:00
Luan Yuan
4e2f604e4e Revert "mm: check virt_to_xxxx macro on 32bit OS [1/1]"
This reverts commit 0d79066451.
2019-02-26 18:16:48 +09:00