Skip to content

Commit

Permalink
origin
Browse files Browse the repository at this point in the history
GIT e1915c8

commit abb62c4
Author: Masahiro Yamada <[email protected]>
Date:   Fri Dec 29 21:15:54 2017 +0900

    arm64: dts: uniphier: fix gpio-ranges property of PXs3 SoC
    
    This is probably a copy-paste mistake.  The gpio-ranges of PXs3 is
    different from that of LD20.
    
    Fixes: 277b51e ("arm64: dts: uniphier: add GPIO controller nodes")
    Signed-off-by: Masahiro Yamada <[email protected]>
    Signed-off-by: Arnd Bergmann <[email protected]>

commit 2fd9c41
Author: Nick Desaulniers <[email protected]>
Date:   Wed Jan 3 12:39:52 2018 -0800

    x86/process: Define cpu_tss_rw in same section as declaration
    
    cpu_tss_rw is declared with DECLARE_PER_CPU_PAGE_ALIGNED
    but then defined with DEFINE_PER_CPU_SHARED_ALIGNED
    leading to section mismatch warnings.
    
    Use DEFINE_PER_CPU_PAGE_ALIGNED consistently. This is necessary because
    it's mapped to the cpu entry area and must be page aligned.
    
    [ tglx: Massaged changelog a bit ]
    
    Fixes: 1a935bc ("x86/entry: Move SYSENTER_stack to the beginning of struct tss_struct")
    Suggested-by: Thomas Gleixner <[email protected]>
    Signed-off-by: Nick Desaulniers <[email protected]>
    Signed-off-by: Thomas Gleixner <[email protected]>
    Cc: [email protected]
    Cc: Borislav Petkov <[email protected]>
    Cc: [email protected]
    Cc: [email protected]
    Cc: [email protected]
    Cc: [email protected]
    Cc: [email protected]
    Cc: [email protected]
    Cc: [email protected]
    Cc: [email protected]
    Cc: [email protected]
    Cc: [email protected]
    Cc: [email protected]
    Cc: [email protected]
    Link: https://lkml.kernel.org/r/[email protected]

commit d7732ba
Author: Thomas Gleixner <[email protected]>
Date:   Wed Jan 3 19:52:04 2018 +0100

    x86/pti: Switch to kernel CR3 at early in entry_SYSCALL_compat()
    
    The preparation for PTI which added CR3 switching to the entry code
    misplaced the CR3 switch in entry_SYSCALL_compat().
    
    With PTI enabled the entry code tries to access a per cpu variable after
    switching to kernel GS. This fails because that variable is not mapped to
    user space. This results in a double fault and in the worst case a kernel
    crash.
    
    Move the switch ahead of the access and clobber RSP which has been saved
    already.
    
    Fixes: 8a09317 ("x86/mm/pti: Prepare the x86/entry assembly code for entry/exit CR3 switching")
    Reported-by: Lars Wendler <[email protected]>
    Reported-by: Laura Abbott <[email protected]>
    Signed-off-by: Thomas Gleixner <[email protected]>
    Cc: Borislav Betkov <[email protected]>
    Cc: Andy Lutomirski <[email protected]>,
    Cc: Dave Hansen <[email protected]>,
    Cc: Peter Zijlstra <[email protected]>,
    Cc: Greg KH <[email protected]>, ,
    Cc: Boris Ostrovsky <[email protected]>,
    Cc: Juergen Gross <[email protected]>
    Cc: [email protected]
    Link: https://lkml.kernel.org/r/alpine.DEB.2.20.1801031949200.1957@nanos

commit e816c20
Author: Kees Cook <[email protected]>
Date:   Tue Jan 2 15:21:33 2018 -0800

    exec: Weaken dumpability for secureexec
    
    This is a logical revert of commit e37fdb7 ("exec: Use secureexec
    for setting dumpability")
    
    This weakens dumpability back to checking only for uid/gid changes in
    current (which is useless), but userspace depends on dumpability not
    being tied to secureexec.
    
      https://bugzilla.redhat.com/show_bug.cgi?id=1528633
    
    Reported-by: Tom Horsley <[email protected]>
    Fixes: e37fdb7 ("exec: Use secureexec for setting dumpability")
    Cc: [email protected]
    Signed-off-by: Kees Cook <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>

commit 3ffdeb1
Author: Josh Poimboeuf <[email protected]>
Date:   Sun Dec 31 10:18:07 2017 -0600

    x86/dumpstack: Print registers for first stack frame
    
    In the stack dump code, if the frame after the starting pt_regs is also
    a regs frame, the registers don't get printed.  Fix that.
    
    Reported-by: Andy Lutomirski <[email protected]>
    Tested-by: Alexander Tsoy <[email protected]>
    Signed-off-by: Josh Poimboeuf <[email protected]>
    Cc: Andy Lutomirski <[email protected]>
    Cc: Linus Torvalds <[email protected]>
    Cc: Peter Zijlstra <[email protected]>
    Cc: Thomas Gleixner <[email protected]>
    Cc: Toralf Förster <[email protected]>
    Cc: [email protected]
    Fixes: 3b3fa11 ("x86/dumpstack: Print any pt_regs found on the stack")
    Link: http://lkml.kernel.org/r/396f84491d2f0ef64eda4217a2165f5712f6a115.1514736742.git.jpoimboe@redhat.com
    Signed-off-by: Ingo Molnar <[email protected]>

commit a9cdbe7
Author: Josh Poimboeuf <[email protected]>
Date:   Sun Dec 31 10:18:06 2017 -0600

    x86/dumpstack: Fix partial register dumps
    
    The show_regs_safe() logic is wrong.  When there's an iret stack frame,
    it prints the entire pt_regs -- most of which is random stack data --
    instead of just the five registers at the end.
    
    show_regs_safe() is also poorly named: the on_stack() checks aren't for
    safety.  Rename the function to show_regs_if_on_stack() and add a
    comment to explain why the checks are needed.
    
    These issues were introduced with the "partial register dump" feature of
    the following commit:
    
      b02fcf9 ("x86/unwinder: Handle stack overflows more gracefully")
    
    That patch had gone through a few iterations of development, and the
    above issues were artifacts from a previous iteration of the patch where
    'regs' pointed directly to the iret frame rather than to the (partially
    empty) pt_regs.
    
    Tested-by: Alexander Tsoy <[email protected]>
    Signed-off-by: Josh Poimboeuf <[email protected]>
    Cc: Andy Lutomirski <[email protected]>
    Cc: Linus Torvalds <[email protected]>
    Cc: Peter Zijlstra <[email protected]>
    Cc: Thomas Gleixner <[email protected]>
    Cc: Toralf Förster <[email protected]>
    Cc: [email protected]
    Fixes: b02fcf9 ("x86/unwinder: Handle stack overflows more gracefully")
    Link: http://lkml.kernel.org/r/5b05b8b344f59db2d3d50dbdeba92d60f2304c54.1514736742.git.jpoimboe@redhat.com
    Signed-off-by: Ingo Molnar <[email protected]>

commit 52994c2
Author: Thomas Gleixner <[email protected]>
Date:   Wed Jan 3 15:57:59 2018 +0100

    x86/pti: Make sure the user/kernel PTEs match
    
    Meelis reported that his K8 Athlon64 emits MCE warnings when PTI is
    enabled:
    
    [Hardware Error]: Error Addr: 0x0000ffff81e000e0
    [Hardware Error]: MC1 Error: L1 TLB multimatch.
    [Hardware Error]: cache level: L1, tx: INSN
    
    The address is in the entry area, which is mapped into kernel _AND_ user
    space. That's special because we switch CR3 while we are executing
    there.
    
    User mapping:
    0xffffffff81e00000-0xffffffff82000000           2M     ro         PSE     GLB x  pmd
    
    Kernel mapping:
    0xffffffff81000000-0xffffffff82000000          16M     ro         PSE         x  pmd
    
    So the K8 is complaining that the TLB entries differ. They differ in the
    GLB bit.
    
    Drop the GLB bit when installing the user shared mapping.
    
    Fixes: 6dc72c3 ("x86/mm/pti: Share entry text PMD")
    Reported-by: Meelis Roos <[email protected]>
    Signed-off-by: Thomas Gleixner <[email protected]>
    Tested-by: Meelis Roos <[email protected]>
    Cc: Borislav Petkov <[email protected]>
    Cc: Tom Lendacky <[email protected]>
    Cc: [email protected]
    Link: https://lkml.kernel.org/r/alpine.DEB.2.20.1801031407180.1957@nanos

commit 694d99d
Author: Tom Lendacky <[email protected]>
Date:   Tue Dec 26 23:43:54 2017 -0600

    x86/cpu, x86/pti: Do not enable PTI on AMD processors
    
    AMD processors are not subject to the types of attacks that the kernel
    page table isolation feature protects against.  The AMD microarchitecture
    does not allow memory references, including speculative references, that
    access higher privileged data when running in a lesser privileged mode
    when that access would result in a page fault.
    
    Disable page table isolation by default on AMD processors by not setting
    the X86_BUG_CPU_INSECURE feature, which controls whether X86_FEATURE_PTI
    is set.
    
    Signed-off-by: Tom Lendacky <[email protected]>
    Signed-off-by: Thomas Gleixner <[email protected]>
    Reviewed-by: Borislav Petkov <[email protected]>
    Cc: Dave Hansen <[email protected]>
    Cc: Andy Lutomirski <[email protected]>
    Cc: [email protected]
    Link: https://lkml.kernel.org/r/[email protected]

commit 87faa0d
Author: Thomas Gleixner <[email protected]>
Date:   Wed Jan 3 15:18:44 2018 +0100

    x86/pti: Enable PTI by default
    
    This really want's to be enabled by default. Users who know what they are
    doing can disable it either in the config or on the kernel command line.
    
    Signed-off-by: Thomas Gleixner <[email protected]>
    Cc: [email protected]

commit afae457
Author: David Howells <[email protected]>
Date:   Tue Jan 2 10:02:19 2018 +0000

    afs: Fix missing error handling in afs_write_end()
    
    afs_write_end() is missing page unlock and put if afs_fill_page() fails.
    
    Reported-by: Al Viro <[email protected]>
    Signed-off-by: David Howells <[email protected]>

commit 440fbc3
Author: David Howells <[email protected]>
Date:   Tue Jan 2 10:02:19 2018 +0000

    afs: Fix unlink
    
    Repeating creation and deletion of a file on an afs mount will run the box
    out of memory, e.g.:
    
            dd if=/dev/zero of=/afs/scratch/m0 bs=$((1024*1024)) count=512
            rm /afs/scratch/m0
    
    The problem seems to be that it's not properly decrementing the nlink count
    so that the inode can be scrapped.
    
    Note that this doesn't fix local creation followed by remote deletion.
    That's harder to handle and will require a separate patch as we're not told
    that the file has been deleted - only that the directory has changed.
    
    Reported-by: Marc Dionne <[email protected]>
    Signed-off-by: David Howells <[email protected]>

commit 7888da9
Author: Dan Carpenter <[email protected]>
Date:   Tue Jan 2 10:02:19 2018 +0000

    afs: Potential uninitialized variable in afs_extract_data()
    
    Smatch warns that:
    
        fs/afs/rxrpc.c:922 afs_extract_data()
        error: uninitialized symbol 'remote_abort'.
    
    Smatch is right that "remote_abort" might be uninitialized when we pass
    it to afs_set_call_complete().  I don't know if that function uses the
    uninitialized variable.  Anyway, the comment for rxrpc_kernel_recv_data(),
    says that "*_abort should also be initialised to 0." and this patch does
    that.
    
    Signed-off-by: Dan Carpenter <[email protected]>
    Signed-off-by: David Howells <[email protected]>

commit 9880150
Author: David Howells <[email protected]>
Date:   Tue Jan 2 10:02:19 2018 +0000

    fscache: Fix the default for fscache_maybe_release_page()
    
    Fix the default for fscache_maybe_release_page() for when the cookie isn't
    valid or the page isn't cached.  It mustn't return false as that indicates
    the page cannot yet be freed.
    
    The problem with the default is that if, say, there's no cache, but a
    network filesystem's pages are using up almost all the available memory, a
    system can OOM because the filesystem ->releasepage() op will not allow
    them to be released as fscache_maybe_release_page() incorrectly prevents
    it.
    
    This can be tested by writing a sequence of 512MiB files to an AFS mount.
    It does not affect NFS or CIFS because both of those wrap the call in a
    check of PG_fscache and it shouldn't bother Ceph as that only has
    PG_private set whilst writeback is in progress.  This might be an issue for
    9P, however.
    
    Note that the pages aren't entirely stuck.  Removing a file or unmounting
    will clear things because that uses ->invalidatepage() instead.
    
    Fixes: 201a154 ("FS-Cache: Handle pages pending storage that get evicted under OOM conditions")
    Reported-by: Marc Dionne <[email protected]>
    Signed-off-by: David Howells <[email protected]>
    Reviewed-by: Jeff Layton <[email protected]>
    Acked-by: Al Viro <[email protected]>
    Tested-by: Marc Dionne <[email protected]>
    cc: [email protected] # 2.6.32+

commit dc32b5c
Author: Eric Biggers <[email protected]>
Date:   Mon Jan 1 09:28:31 2018 -0600

    capabilities: fix buffer overread on very short xattr
    
    If userspace attempted to set a "security.capability" xattr shorter than
    4 bytes (e.g. 'setfattr -n security.capability -v x file'), then
    cap_convert_nscap() read past the end of the buffer containing the xattr
    value because it accessed the ->magic_etc field without verifying that
    the xattr value is long enough to contain that field.
    
    Fix it by validating the xattr value size first.
    
    This bug was found using syzkaller with KASAN.  The KASAN report was as
    follows (cleaned up slightly):
    
        BUG: KASAN: slab-out-of-bounds in cap_convert_nscap+0x514/0x630 security/commoncap.c:498
        Read of size 4 at addr ffff88002d8741c0 by task syz-executor1/2852
    
        CPU: 0 PID: 2852 Comm: syz-executor1 Not tainted 4.15.0-rc6-00200-gcc0aac99d977 torvalds#253
        Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.11.0-20171110_100015-anatol 04/01/2014
        Call Trace:
         __dump_stack lib/dump_stack.c:17 [inline]
         dump_stack+0xe3/0x195 lib/dump_stack.c:53
         print_address_description+0x73/0x260 mm/kasan/report.c:252
         kasan_report_error mm/kasan/report.c:351 [inline]
         kasan_report+0x235/0x350 mm/kasan/report.c:409
         cap_convert_nscap+0x514/0x630 security/commoncap.c:498
         setxattr+0x2bd/0x350 fs/xattr.c:446
         path_setxattr+0x168/0x1b0 fs/xattr.c:472
         SYSC_setxattr fs/xattr.c:487 [inline]
         SyS_setxattr+0x36/0x50 fs/xattr.c:483
         entry_SYSCALL_64_fastpath+0x18/0x85
    
    Fixes: 8db6c34 ("Introduce v3 namespaced file capabilities")
    Cc: <[email protected]> # v4.14+
    Signed-off-by: Eric Biggers <[email protected]>
    Reviewed-by: Serge Hallyn <[email protected]>
    Signed-off-by: James Morris <[email protected]>

commit c0ee554
Author: Eric W. Biederman <[email protected]>
Date:   Fri Dec 22 12:37:43 2017 -0600

    pid: Handle failure to allocate the first pid in a pid namespace
    
    With the replacement of the pid bitmap and hashtable with an idr in
    alloc_pid started occassionally failing when allocating the first pid
    in a pid namespace.  Things were not completely reset resulting in
    the first allocated pid getting the number 2 (not 1).  Which
    further resulted in ns->proc_mnt not getting set and eventually
    causing an oops in proc_flush_task.
    
    Oops: 0000 [#1] SMP
    CPU: 2 PID: 6743 Comm: trinity-c117 Not tainted 4.15.0-rc4-think+ #2
    RIP: 0010:proc_flush_task+0x8e/0x1b0
    RSP: 0018:ffffc9000bbffc40 EFLAGS: 00010286
    RAX: 0000000000000001 RBX: 0000000000000001 RCX: 00000000fffffffb
    RDX: 0000000000000000 RSI: ffffc9000bbffc50 RDI: 0000000000000000
    RBP: ffffc9000bbffc63 R08: 0000000000000000 R09: 0000000000000002
    R10: ffffc9000bbffb70 R11: ffffc9000bbffc64 R12: 0000000000000003
    R13: 0000000000000000 R14: 0000000000000003 R15: ffff8804c10d7840
    FS:  00007f7cb8965700(0000) GS:ffff88050a200000(0000) knlGS:0000000000000000
    CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
    CR2: 0000000000000000 CR3: 00000003e21ae003 CR4: 00000000001606e0
    DR0: 00007fb1d6c22000 DR1: 0000000000000000 DR2: 0000000000000000
    DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000600
    Call Trace:
     ? release_task+0xaf/0x680
     release_task+0xd2/0x680
     ? wait_consider_task+0xb82/0xce0
     wait_consider_task+0xbe9/0xce0
     ? do_wait+0xe1/0x330
     do_wait+0x151/0x330
     kernel_wait4+0x8d/0x150
     ? task_stopped_code+0x50/0x50
     SYSC_wait4+0x95/0xa0
     ? rcu_read_lock_sched_held+0x6c/0x80
     ? syscall_trace_enter+0x2d7/0x340
     ? do_syscall_64+0x60/0x210
     do_syscall_64+0x60/0x210
     entry_SYSCALL64_slow_path+0x25/0x25
    RIP: 0033:0x7f7cb82603aa
    RSP: 002b:00007ffd60770bc8 EFLAGS: 00000246
     ORIG_RAX: 000000000000003d
    RAX: ffffffffffffffda RBX: 00007f7cb6cd4000 RCX: 00007f7cb82603aa
    RDX: 000000000000000b RSI: 00007ffd60770bd0 RDI: 0000000000007cca
    RBP: 0000000000007cca R08: 00007f7cb8965700 R09: 00007ffd607c7080
    R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
    R13: 00007ffd60770bd0 R14: 00007f7cb6cd4058 R15: 00000000cccccccd
    Code: c1 e2 04 44 8b 60 30 48 8b 40 38 44 8b 34 11 48 c7 c2 60 3a f5 81 44 89 e1 4c 8b 68 58 e8 4b b4 77 00 89 44 24 14 48 8d 74 24 10 <49> 8b 7d 00 e8 b9 6a f9 ff 48 85 c0 74 1a 48 89 c7 48 89 44 24
    RIP: proc_flush_task+0x8e/0x1b0 RSP: ffffc9000bbffc40
    CR2: 0000000000000000
    ---[ end trace 53d67a6481059862 ]---
    
    Improve the quality of the implementation by resetting the place to
    start allocating pids on failure to allocate the first pid.
    
    As improving the quality of the implementation is the goal remove the now
    unnecesarry disable_pid_allocations call when we fail to mount proc.
    
    Fixes: 95846ec ("pid: replace pid bitmap implementation with IDR API")
    Fixes: 8ef047a ("pid namespaces: make alloc_pid(), free_pid() and put_pid() work with struct upid")
    Reported-by: Dave Jones <[email protected]>
    Signed-off-by: "Eric W. Biederman" <[email protected]>

commit 7d2901f
Author: Bogdan Mirea <[email protected]>
Date:   Thu Dec 21 17:18:59 2017 +0200

    arm64: dts: renesas: ulcb: Remove renesas, no-ether-link property
    
    The present change is a bug fix for AVB link iteratively up/down.
    
    Steps to reproduce:
    - start AVB TX stream (Using aplay via MSE),
    - disconnect+reconnect the eth cable,
    - after a reconnection the eth connection goes iteratively up/down
      without user interaction,
    - this may heal after some seconds or even stay for minutes.
    
    As the documentation specifies, the "renesas,no-ether-link" option
    should be used when a board does not provide a proper AVB_LINK signal.
    There is no need for this option enabled on RCAR H3/M3 Salvator-X/XS
    and ULCB starter kits since the AVB_LINK is correctly handled by HW.
    
    Choosing to keep or remove the "renesas,no-ether-link" option will
    have impact on the code flow in the following ways:
    - keeping this option enabled may lead to unexpected behavior since
      the RX & TX are enabled/disabled directly from adjust_link function
      without any HW interrogation,
    - removing this option, the RX & TX will only be enabled/disabled after
      HW interrogation. The HW check is made through the LMON pin in PSR
      register which specifies AVB_LINK signal value (0 - at low level;
      1 - at high level).
    
    In conclusion, the present change is also a safety improvement because
    it removes the "renesas,no-ether-link" option leading to a proper way
    of detecting the link state based on HW interrogation and not on
    software heuristic.
    
    Fixes: dc36965 ("arm64: dts: r8a7796: salvator-x: Enable EthernetAVB")
    Fixes: 6fa501c ("arm64: dts: r8a7795: enable EthernetAVB on Salvator-X")
    Signed-off-by: Bogdan Mirea <[email protected]>
    Signed-off-by: Vladimir Zapolskiy <[email protected]>
    Signed-off-by: Simon Horman <[email protected]>

commit 87c059e
Author: Bogdan Mirea <[email protected]>
Date:   Thu Dec 21 17:18:58 2017 +0200

    arm64: dts: renesas: salvator-x: Remove renesas, no-ether-link property
    
    The present change is a bug fix for AVB link iteratively up/down.
    
    Steps to reproduce:
    - start AVB TX stream (Using aplay via MSE),
    - disconnect+reconnect the eth cable,
    - after a reconnection the eth connection goes iteratively up/down
      without user interaction,
    - this may heal after some seconds or even stay for minutes.
    
    As the documentation specifies, the "renesas,no-ether-link" option
    should be used when a board does not provide a proper AVB_LINK signal.
    There is no need for this option enabled on RCAR H3/M3 Salvator-X/XS
    and ULCB starter kits since the AVB_LINK is correctly handled by HW.
    
    Choosing to keep or remove the "renesas,no-ether-link" option will
    have impact on the code flow in the following ways:
    - keeping this option enabled may lead to unexpected behavior since
      the RX & TX are enabled/disabled directly from adjust_link function
      without any HW interrogation,
    - removing this option, the RX & TX will only be enabled/disabled after
      HW interrogation. The HW check is made through the LMON pin in PSR
      register which specifies AVB_LINK signal value (0 - at low level;
      1 - at high level).
    
    In conclusion, the present change is also a safety improvement because
    it removes the "renesas,no-ether-link" option leading to a proper way
    of detecting the link state based on HW interrogation and not on
    software heuristic.
    
    Fixes: dc36965 ("arm64: dts: r8a7796: salvator-x: Enable EthernetAVB")
    Fixes: 6fa501c ("arm64: dts: r8a7795: enable EthernetAVB on Salvator-X")
    Signed-off-by: Bogdan Mirea <[email protected]>
    Signed-off-by: Vladimir Zapolskiy <[email protected]>
    Signed-off-by: Simon Horman <[email protected]>

commit fbd90b4
Author: Arnd Bergmann <[email protected]>
Date:   Thu Dec 21 22:45:24 2017 +0100

    ARM: dts: tango4: remove bogus interrupt-controller property
    
    dtc points out that the parent node of the interrupt controllers is not
    actually an interrupt controller itself, and lacks an #interrupt-cells
    property:
    
    arch/arm/boot/dts/tango4-vantage-1172.dtb: Warning (interrupts_property): Missing #interrupt-cells in interrupt-parent /soc/interrupt-controller@6e000
    
    This removes the annotation.
    
    Signed-off-by: Arnd Bergmann <[email protected]>

commit 506e8a9
Author: Arnd Bergmann <[email protected]>
Date:   Thu Dec 21 22:35:19 2017 +0100

    ARM: dts: ls1021a: fix incorrect clock references
    
    dtc warns about two 'clocks' properties that have an extraneous '1'
    at the end:
    
    arch/arm/boot/dts/ls1021a-qds.dtb: Warning (clocks_property): arch/arm/boot/dts/ls1021a-twr.dtb: Warning (clocks_property): Property 'clocks', cell 1 is not a phandle reference in /soc/i2c@2180000/mux@77/i2c@4/sgtl5000@2a
    arch/arm/boot/dts/ls1021a-qds.dtb: Warning (clocks_property): Missing property '#clock-cells' in node /soc/interrupt-controller@1400000 or bad phandle (referred from /soc/i2c@2180000/mux@77/i2c@4/sgtl5000@2a:clocks[1])
    Property 'clocks', cell 1 is not a phandle reference in /soc/i2c@2190000/sgtl5000@a
    arch/arm/boot/dts/ls1021a-twr.dtb: Warning (clocks_property): Missing property '#clock-cells' in node /soc/interrupt-controller@1400000 or bad phandle (referred from /soc/i2c@2190000/sgtl5000@a:clocks[1])
    
    The clocks that get referenced here are fixed-rate, so they do not
    take any argument, and dtc interprets the next cell as a phandle, which
    is invalid.
    
    Signed-off-by: Arnd Bergmann <[email protected]>

commit d227182
Author: Joel Stanley <[email protected]>
Date:   Fri Dec 15 16:03:32 2017 +1030

    ARM: dts: aspeed-g4: Correct VUART IRQ number
    
    This should have always been 8.
    
    Fixes: db4d6d9 ("ARM: dts: aspeed: Correctly order UART nodes")
    Cc: [email protected]
    Signed-off-by: Joel Stanley <[email protected]>
    Reviewed-by: Cédric Le Goater <[email protected]>
    Signed-off-by: Arnd Bergmann <[email protected]>

commit 976a9b3
Author: Javier Martinez Canillas <[email protected]>
Date:   Wed Dec 20 18:17:29 2017 +0100

    ARM: dts: exynos: Enable Mixer node for Exynos5800 Peach Pi machine
    
    Commit 1cb686c ("ARM: dts: exynos: Add status property to Exynos 542x
    Mixer nodes") disabled the Mixer node by default in the DTSI and enabled
    for each Exynos 542x DTS. But unfortunately it missed to enable it for the
    Exynos5800 Peach Pi machine, since the 5800 is also an 542x SoC variant.
    
    Fixes: 1cb686c ("ARM: dts: exynos: Add status property to Exynos 542x Mixer nodes")
    Signed-off-by: Javier Martinez Canillas <[email protected]>
    Acked-by: Marek Szyprowski <[email protected]>
    Tested-by: Guillaume Tucker <[email protected]>
    Signed-off-by: Krzysztof Kozlowski <[email protected]>
    Signed-off-by: Arnd Bergmann <[email protected]>

commit eac6a36
Author: Maxime Ripard <[email protected]>
Date:   Thu Dec 7 16:58:59 2017 +0100

    ARM: dts: sun8i: a711: Reinstate the PMIC compatible
    
    When we added the regulator support in commit 90c5d7c ("ARM: dts:
    sun8i: a711: Add regulator support"), we also dropped the PMIC's
    compatible. Since it's not in the PMIC DTSI, unlike most other PMIC
    DTSI, it obviously wasn't probing anymore.
    
    Re-add it so that everything works again.
    
    Fixes: 90c5d7c ("ARM: dts: sun8i: a711: Add regulator support")
    Reviewed-by: Chen-Yu Tsai <[email protected]>
    Signed-off-by: Maxime Ripard <[email protected]>

commit 451df7d
Author: Alejandro Mery <[email protected]>
Date:   Fri Dec 8 10:35:58 2017 +0000

    ARM: davinci: fix mmc entries in dm365's dma_slave_map
    
    fix mmc entries in dm365's dma_slave_map to match the actual device names
    
    Fixes: 0c750e1 ("ARM: davinci: dm365: Add dma_slave_map to edma")
    Signed-off-by: Alejandro Mery <[email protected]>
    Signed-off-by: Sekhar Nori <[email protected]>

commit c5a88cd
Author: David Lechner <[email protected]>
Date:   Sun Dec 3 16:04:53 2017 -0600

    ARM: dts: da850-lego-ev3: Fix battery voltage gpio
    
    This fixes the battery voltage monitoring gpio-hog settings.
    
    When the gpio is low, it turns off the battery voltage to the ADC chip.
    However, this needs to be on all of the time so that we can monitor
    battery voltage.
    
    Also, there was a typo that prevented pinmuxing from working correctly.
    
    Signed-off-by: David Lechner <[email protected]>
    Signed-off-by: Sekhar Nori <[email protected]>

commit 621f96b
Author: Alejandro Mery <[email protected]>
Date:   Tue Dec 5 12:34:57 2017 +0000

    ARM: davinci: Add dma_mask to dm365's eDMA device
    
    Add dma_mask to dm365's EDMA device.
    
    Without a valid dma_mask, EDMA on DM365 refuses to
    probe.
    
    Fixes: cef5b0d ("ARM: davinci: Add dma_mask to eDMA devices")
    Reviewed-by: Peter Ujfalusi <[email protected]>
    Signed-off-by: Alejandro Mery <[email protected]>
    Signed-off-by: Sekhar Nori <[email protected]>

commit b638823
Author: Alejandro Mery <[email protected]>
Date:   Tue Dec 5 12:34:56 2017 +0000

    ARM: davinci: Use platform_device_register_full() to create pdev for dm365's eDMA
    
    Convert the DM365 EDMA platform device creation to use
    struct platform_device_info XXXXXX __initconst and
    platform_device_register_full()
    
    This will allow us to specify the dma_mask for the device
    in an upcoming patch. Without this, EDMA on DM365 refuses
    to probe.
    
    Fixes: 7ab388e ("ARM: davinci: Use platform_device_register_full() to create pdev for eDMA")
    Reviewed-by: Peter Ujfalusi <[email protected]>
    Signed-off-by: Alejandro Mery <[email protected]>
    Signed-off-by: Sekhar Nori <[email protected]>

commit bc63194
Author: Heiko Stuebner <[email protected]>
Date:   Wed Dec 6 01:10:05 2017 +0100

    arm64: dts: rockchip: limit rk3328-rock64 gmac speed to 100MBit for now
    
    It looks like either the current kernel or the hardware has reliability
    issues when the gmac is actually running at 1GBit. In my test-case
    it is not able to boot on a nfsroot at this speed, as the system
    will always lose the connection to the nfs-server during boot, before
    reaching any login prompt and not recover from this.
    
    So until this is solved, limit the speed to 100MBit as with this the
    nfsroot survives stress tests like an apt-get upgrade without problems.
    
    Signed-off-by: Heiko Stuebner <[email protected]>

commit 87eba07
Author: Klaus Goger <[email protected]>
Date:   Tue Dec 5 08:11:58 2017 +0100

    arm64: dts: rockchip: remove vdd_log from rk3399-puma
    
    vdd_log has no consumer and therefore will not be set to a specific
    voltage. Still the PWM output pin gets configured and thence the vdd_log
    output voltage will changed from it's default. Depending on the idle
    state of the PWM this will slightly over or undervoltage the logic supply
    of the RK3399 and cause instability with GbE (undervoltage) and PCIe
    (overvoltage). Since the default value set by a voltage divider is the
    correct supply voltage and we don't need to change it during runtime we
    remove the rail from the devicetree completely so the PWM pin will not
    be configured.
    
    Signed-off-by: Klaus Goger <[email protected]>
    Signed-off-by: Heiko Stuebner <[email protected]>

commit f88e930
Author: Sergey Matyukevich <[email protected]>
Date:   Fri Nov 3 22:58:54 2017 +0300

    arm64: dts: orange-pi-zero-plus2: fix sdcard detect
    
    The sdcard detect pin on orange-pi-zero-plus2 is pulled up.
    Fix cd-gpio description to enable sdcard detect.
    
    Signed-off-by: Sergey Matyukevich <[email protected]>
    Signed-off-by: Maxime Ripard <[email protected]>

commit 7d556bf
Author: Jagan Teki <[email protected]>
Date:   Mon Dec 4 10:23:07 2017 +0530

    arm64: allwinner: a64-sopine: Fix to use dcdc1 regulator instead of vcc3v3
    
    Since current tree support AXP803 regulators,
    replace fixed regulator vcc3v3 with AXP803 dcdc1 regulator where ever
    it need to replace.
    
    Tested mmc0 on sopine baseboard.
    
    Signed-off-by: Jagan Teki <[email protected]>
    Signed-off-by: Maxime Ripard <[email protected]>

commit e17e237
Author: Chen-Yu Tsai <[email protected]>
Date:   Mon Dec 4 16:44:01 2017 +0800

    ARM: dts: sunxi: Convert to CCU index macros for HDMI controller
    
    When the HDMI controller device node was added, the needed PLL clock
    macros were not exported. A separate patch addresses that, but it is
    merged through a different tree.
    
    Now that both patches are in mainline proper, we can convert the raw
    numbers to proper macros.
    
    Signed-off-by: Chen-Yu Tsai <[email protected]>
    Signed-off-by: Maxime Ripard <[email protected]>

commit e2bf801
Author: Stefan Brüns <[email protected]>
Date:   Mon Nov 27 20:05:34 2017 +0100

    sunxi-rsb: Include OF based modalias in device uevent
    
    Include the OF-based modalias in the uevent sent when registering devices
    on the sunxi RSB bus, so that user space has a chance to autoload the
    kernel module for the device.
    
    Fixes a regression caused by commit 3f241bf ("arm64: allwinner: a64:
    pine64: Use dcdc1 regulator for mmc0"). When the axp20x-rsb module for
    the AXP803 PMIC is built as a module, it is not loaded and the system
    ends up with an disfunctional MMC controller.
    
    Fixes: d787dcd ("bus: sunxi-rsb: Add driver for Allwinner Reduced Serial Bus")
    Cc: stable <[email protected]> # 4.4.x 7a3b7cd of: device: Export of_device_{get_modalias, uvent_modalias} to modules
    Acked-by: Chen-Yu Tsai <[email protected]>
    Signed-off-by: Stefan Brüns <[email protected]>
    Signed-off-by: Maxime Ripard <[email protected]>

commit bc53e3a
Author: Peter Rosin <[email protected]>
Date:   Mon Nov 27 17:31:01 2017 +0100

    ARM: dts: at91: disable the nxp,se97b SMBUS timeout on the TSE-850
    
    The I2C adapter driver is sometimes slow, causing the SCL line to
    be stuck low for more than the stipulated SMBUS timeout of 25-35 ms.
    This causes the client device to give up which in turn causes silent
    corruption of data. So, disable the SMBUS timeout in the client device.
    
    Signed-off-by: Peter Rosin <[email protected]>
    Acked-by: Guenter Roeck <[email protected]>
    Signed-off-by: Alexandre Belloni <[email protected]>

commit 3fa8c49
Author: Heiko Stuebner <[email protected]>
Date:   Mon Dec 4 18:36:10 2017 +0100

    arm64: dts: rockchip: fix trailing 0 in rk3328 tsadc interrupts
    
    Probably due to some copy-paste mistake, the tsadc of rk3328 ended up
    with a 0 as 4th element that shouldn't be there, as interrupts on the
    rk3328 only have multiples of 3, making dtc complain. So remove it.
    
    Signed-off-by: Heiko Stuebner <[email protected]>

commit 912d798
Author: Rob Herring <[email protected]>
Date:   Thu Nov 9 16:35:35 2017 -0600

    ARM: dts: rockchip: fix rk3288 iep-IOMMU interrupts property cells
    
    The interrupts property in the iep-IOMMU node for the rk3288 dts file has a
    spurious extra cell causing a dtc warning:
    
    Warning (interrupts_property): interrupts size is (16), expected multiple of 12 in /iommu@ff900800
    
    Remove the extra cell.
    
    Signed-off-by: Rob Herring <[email protected]>
    Signed-off-by: Heiko Stuebner <[email protected]>

commit 741f5af
Author: Heiko Stuebner <[email protected]>
Date:   Sat Dec 2 17:36:45 2017 +0100

    ARM: dts: rockchip: add cpu0-regulator on rk3066a-marsboard
    
    The rk3066 also has operating points now, but without adjusting
    the cpu-regulator will break once higher voltages are needed for
    a specific frequency, so add the needed cpu0-regulator.
    
    Signed-off-by: Heiko Stuebner <[email protected]>

commit bdfe4ce
Author: Icenowy Zheng <[email protected]>
Date:   Fri Nov 10 17:26:54 2017 +0800

    arm64: allwinner: a64: add Ethernet PHY regulator for several boards
    
    On several A64 boards the Ethernet PHY is powered by the DC1SW regulator
    on the AXP803 PMIC.
    
    Add phy-handle property to these boards' emac node.
    
    Signed-off-by: Icenowy Zheng <[email protected]>
    Acked-by: Corentin LABBE <[email protected]>
    Tested-by: Corentin LABBE <[email protected]>
    Signed-off-by: Maxime Ripard <[email protected]>
  • Loading branch information
akpm00 authored and hnaz committed Jan 5, 2018
1 parent 30a7acd commit 10bf547
Show file tree
Hide file tree
Showing 43 changed files with 163 additions and 109 deletions.
2 changes: 1 addition & 1 deletion arch/arm/boot/dts/aspeed-g4.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -219,7 +219,7 @@
compatible = "aspeed,ast2400-vuart";
reg = <0x1e787000 0x40>;
reg-shift = <2>;
interrupts = <10>;
interrupts = <8>;
clocks = <&clk_uart>;
no-loopback-test;
status = "disabled";
Expand Down
1 change: 1 addition & 0 deletions arch/arm/boot/dts/at91-tse850-3.dts
Original file line number Diff line number Diff line change
Expand Up @@ -221,6 +221,7 @@
jc42@18 {
compatible = "nxp,se97b", "jedec,jc-42.4-temp";
reg = <0x18>;
smbus-timeout-disable;
};

dpot: mcp4651-104@28 {
Expand Down
4 changes: 2 additions & 2 deletions arch/arm/boot/dts/da850-lego-ev3.dts
Original file line number Diff line number Diff line change
Expand Up @@ -178,7 +178,7 @@
*/
battery {
pinctrl-names = "default";
pintctrl-0 = <&battery_pins>;
pinctrl-0 = <&battery_pins>;
compatible = "lego,ev3-battery";
io-channels = <&adc 4>, <&adc 3>;
io-channel-names = "voltage", "current";
Expand Down Expand Up @@ -392,7 +392,7 @@
batt_volt_en {
gpio-hog;
gpios = <6 GPIO_ACTIVE_HIGH>;
output-low;
output-high;
};
};

Expand Down
4 changes: 4 additions & 0 deletions arch/arm/boot/dts/exynos5800-peach-pi.dts
Original file line number Diff line number Diff line change
Expand Up @@ -664,6 +664,10 @@
status = "okay";
};

&mixer {
status = "okay";
};

/* eMMC flash */
&mmc_0 {
status = "okay";
Expand Down
2 changes: 1 addition & 1 deletion arch/arm/boot/dts/ls1021a-qds.dts
Original file line number Diff line number Diff line change
Expand Up @@ -215,7 +215,7 @@
reg = <0x2a>;
VDDA-supply = <&reg_3p3v>;
VDDIO-supply = <&reg_3p3v>;
clocks = <&sys_mclk 1>;
clocks = <&sys_mclk>;
};
};
};
Expand Down
2 changes: 1 addition & 1 deletion arch/arm/boot/dts/ls1021a-twr.dts
Original file line number Diff line number Diff line change
Expand Up @@ -187,7 +187,7 @@
reg = <0x0a>;
VDDA-supply = <&reg_3p3v>;
VDDIO-supply = <&reg_3p3v>;
clocks = <&sys_mclk 1>;
clocks = <&sys_mclk>;
};
};

Expand Down
4 changes: 4 additions & 0 deletions arch/arm/boot/dts/rk3066a-marsboard.dts
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,10 @@
};
};

&cpu0 {
cpu0-supply = <&vdd_arm>;
};

&i2c1 {
status = "okay";
clock-frequency = <400000>;
Expand Down
2 changes: 1 addition & 1 deletion arch/arm/boot/dts/rk3288.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -956,7 +956,7 @@
iep_mmu: iommu@ff900800 {
compatible = "rockchip,iommu";
reg = <0x0 0xff900800 0x0 0x40>;
interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH 0>;
interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "iep_mmu";
#iommu-cells = <0>;
status = "disabled";
Expand Down
4 changes: 2 additions & 2 deletions arch/arm/boot/dts/sun4i-a10.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -502,8 +502,8 @@
reg = <0x01c16000 0x1000>;
interrupts = <58>;
clocks = <&ccu CLK_AHB_HDMI0>, <&ccu CLK_HDMI>,
<&ccu 9>,
<&ccu 18>;
<&ccu CLK_PLL_VIDEO0_2X>,
<&ccu CLK_PLL_VIDEO1_2X>;
clock-names = "ahb", "mod", "pll-0", "pll-1";
dmas = <&dma SUN4I_DMA_NORMAL 16>,
<&dma SUN4I_DMA_NORMAL 16>,
Expand Down
4 changes: 2 additions & 2 deletions arch/arm/boot/dts/sun5i-a10s.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -82,8 +82,8 @@
reg = <0x01c16000 0x1000>;
interrupts = <58>;
clocks = <&ccu CLK_AHB_HDMI>, <&ccu CLK_HDMI>,
<&ccu 9>,
<&ccu 16>;
<&ccu CLK_PLL_VIDEO0_2X>,
<&ccu CLK_PLL_VIDEO1_2X>;
clock-names = "ahb", "mod", "pll-0", "pll-1";
dmas = <&dma SUN4I_DMA_NORMAL 16>,
<&dma SUN4I_DMA_NORMAL 16>,
Expand Down
4 changes: 2 additions & 2 deletions arch/arm/boot/dts/sun6i-a31.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -429,8 +429,8 @@
interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&ccu CLK_AHB1_HDMI>, <&ccu CLK_HDMI>,
<&ccu CLK_HDMI_DDC>,
<&ccu 7>,
<&ccu 13>;
<&ccu CLK_PLL_VIDEO0_2X>,
<&ccu CLK_PLL_VIDEO1_2X>;
clock-names = "ahb", "mod", "ddc", "pll-0", "pll-1";
resets = <&ccu RST_AHB1_HDMI>;
reset-names = "ahb";
Expand Down
4 changes: 2 additions & 2 deletions arch/arm/boot/dts/sun7i-a20.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -581,8 +581,8 @@
reg = <0x01c16000 0x1000>;
interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&ccu CLK_AHB_HDMI0>, <&ccu CLK_HDMI>,
<&ccu 9>,
<&ccu 18>;
<&ccu CLK_PLL_VIDEO0_2X>,
<&ccu CLK_PLL_VIDEO1_2X>;
clock-names = "ahb", "mod", "pll-0", "pll-1";
dmas = <&dma SUN4I_DMA_NORMAL 16>,
<&dma SUN4I_DMA_NORMAL 16>,
Expand Down
1 change: 1 addition & 0 deletions arch/arm/boot/dts/sun8i-a83t-tbs-a711.dts
Original file line number Diff line number Diff line change
Expand Up @@ -146,6 +146,7 @@
status = "okay";

axp81x: pmic@3a3 {
compatible = "x-powers,axp813";
reg = <0x3a3>;
interrupt-parent = <&r_intc>;
interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
Expand Down
1 change: 0 additions & 1 deletion arch/arm/boot/dts/tango4-common.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,6 @@
reg = <0x6e000 0x400>;
ranges = <0 0x6e000 0x400>;
interrupt-parent = <&gic>;
interrupt-controller;
#address-cells = <1>;
#size-cells = <1>;

Expand Down
29 changes: 18 additions & 11 deletions arch/arm/mach-davinci/dm365.c
Original file line number Diff line number Diff line change
Expand Up @@ -868,10 +868,10 @@ static const struct dma_slave_map dm365_edma_map[] = {
{ "spi_davinci.0", "rx", EDMA_FILTER_PARAM(0, 17) },
{ "spi_davinci.3", "tx", EDMA_FILTER_PARAM(0, 18) },
{ "spi_davinci.3", "rx", EDMA_FILTER_PARAM(0, 19) },
{ "dm6441-mmc.0", "rx", EDMA_FILTER_PARAM(0, 26) },
{ "dm6441-mmc.0", "tx", EDMA_FILTER_PARAM(0, 27) },
{ "dm6441-mmc.1", "rx", EDMA_FILTER_PARAM(0, 30) },
{ "dm6441-mmc.1", "tx", EDMA_FILTER_PARAM(0, 31) },
{ "da830-mmc.0", "rx", EDMA_FILTER_PARAM(0, 26) },
{ "da830-mmc.0", "tx", EDMA_FILTER_PARAM(0, 27) },
{ "da830-mmc.1", "rx", EDMA_FILTER_PARAM(0, 30) },
{ "da830-mmc.1", "tx", EDMA_FILTER_PARAM(0, 31) },
};

static struct edma_soc_info dm365_edma_pdata = {
Expand Down Expand Up @@ -925,12 +925,14 @@ static struct resource edma_resources[] = {
/* not using TC*_ERR */
};

static struct platform_device dm365_edma_device = {
.name = "edma",
.id = 0,
.dev.platform_data = &dm365_edma_pdata,
.num_resources = ARRAY_SIZE(edma_resources),
.resource = edma_resources,
static const struct platform_device_info dm365_edma_device __initconst = {
.name = "edma",
.id = 0,
.dma_mask = DMA_BIT_MASK(32),
.res = edma_resources,
.num_res = ARRAY_SIZE(edma_resources),
.data = &dm365_edma_pdata,
.size_data = sizeof(dm365_edma_pdata),
};

static struct resource dm365_asp_resources[] = {
Expand Down Expand Up @@ -1428,13 +1430,18 @@ int __init dm365_init_video(struct vpfe_config *vpfe_cfg,

static int __init dm365_init_devices(void)
{
struct platform_device *edma_pdev;
int ret = 0;

if (!cpu_is_davinci_dm365())
return 0;

davinci_cfg_reg(DM365_INT_EDMA_CC);
platform_device_register(&dm365_edma_device);
edma_pdev = platform_device_register_full(&dm365_edma_device);
if (IS_ERR(edma_pdev)) {
pr_warn("%s: Failed to register eDMA\n", __func__);
return PTR_ERR(edma_pdev);
}

platform_device_register(&dm365_mdio_device);
platform_device_register(&dm365_emac_device);
Expand Down
1 change: 1 addition & 0 deletions arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,7 @@
pinctrl-0 = <&rgmii_pins>;
phy-mode = "rgmii";
phy-handle = <&ext_rgmii_phy>;
phy-supply = <&reg_dc1sw>;
status = "okay";
};

Expand Down
1 change: 1 addition & 0 deletions arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,7 @@
pinctrl-0 = <&rmii_pins>;
phy-mode = "rmii";
phy-handle = <&ext_rmii_phy1>;
phy-supply = <&reg_dc1sw>;
status = "okay";

};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,7 @@
pinctrl-0 = <&rgmii_pins>;
phy-mode = "rgmii";
phy-handle = <&ext_rgmii_phy>;
phy-supply = <&reg_dc1sw>;
status = "okay";
};

Expand All @@ -95,7 +96,7 @@
&mmc2 {
pinctrl-names = "default";
pinctrl-0 = <&mmc2_pins>;
vmmc-supply = <&reg_vcc3v3>;
vmmc-supply = <&reg_dcdc1>;
vqmmc-supply = <&reg_vcc1v8>;
bus-width = <8>;
non-removable;
Expand Down
11 changes: 1 addition & 10 deletions arch/arm64/boot/dts/allwinner/sun50i-a64-sopine.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -45,19 +45,10 @@

#include "sun50i-a64.dtsi"

/ {
reg_vcc3v3: vcc3v3 {
compatible = "regulator-fixed";
regulator-name = "vcc3v3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
};

&mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins>;
vmmc-supply = <&reg_vcc3v3>;
vmmc-supply = <&reg_dcdc1>;
non-removable;
disable-wp;
bus-width = <4>;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@
pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin>;
vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>;
cd-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>;
cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>;
status = "okay";
};

Expand Down
1 change: 0 additions & 1 deletion arch/arm64/boot/dts/renesas/salvator-common.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -255,7 +255,6 @@
&avb {
pinctrl-0 = <&avb_pins>;
pinctrl-names = "default";
renesas,no-ether-link;
phy-handle = <&phy0>;
status = "okay";

Expand Down
1 change: 0 additions & 1 deletion arch/arm64/boot/dts/renesas/ulcb.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,6 @@
&avb {
pinctrl-0 = <&avb_pins>;
pinctrl-names = "default";
renesas,no-ether-link;
phy-handle = <&phy0>;
status = "okay";

Expand Down
2 changes: 2 additions & 0 deletions arch/arm64/boot/dts/rockchip/rk3328-rock64.dts
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,8 @@
assigned-clocks = <&cru SCLK_MAC2IO>, <&cru SCLK_MAC2IO_EXT>;
assigned-clock-parents = <&gmac_clkin>, <&gmac_clkin>;
clock_in_out = "input";
/* shows instability at 1GBit right now */
max-speed = <100>;
phy-supply = <&vcc_io>;
phy-mode = "rgmii";
pinctrl-names = "default";
Expand Down
2 changes: 1 addition & 1 deletion arch/arm64/boot/dts/rockchip/rk3328.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -514,7 +514,7 @@
tsadc: tsadc@ff250000 {
compatible = "rockchip,rk3328-tsadc";
reg = <0x0 0xff250000 0x0 0x100>;
interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH 0>;
interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
assigned-clocks = <&cru SCLK_TSADC>;
assigned-clock-rates = <50000>;
clocks = <&cru SCLK_TSADC>, <&cru PCLK_TSADC>;
Expand Down
11 changes: 0 additions & 11 deletions arch/arm64/boot/dts/rockchip/rk3399-puma.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -155,17 +155,6 @@
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
};

vdd_log: vdd-log {
compatible = "pwm-regulator";
pwms = <&pwm2 0 25000 0>;
regulator-name = "vdd_log";
regulator-min-microvolt = <800000>;
regulator-max-microvolt = <1400000>;
regulator-always-on;
regulator-boot-on;
status = "okay";
};
};

&cpu_b0 {
Expand Down
4 changes: 2 additions & 2 deletions arch/arm64/boot/dts/socionext/uniphier-pxs3.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -198,8 +198,8 @@
gpio-controller;
#gpio-cells = <2>;
gpio-ranges = <&pinctrl 0 0 0>,
<&pinctrl 96 0 0>,
<&pinctrl 160 0 0>;
<&pinctrl 104 0 0>,
<&pinctrl 168 0 0>;
gpio-ranges-group-names = "gpio_range0",
"gpio_range1",
"gpio_range2";
Expand Down
13 changes: 6 additions & 7 deletions arch/x86/entry/entry_64_compat.S
Original file line number Diff line number Diff line change
Expand Up @@ -190,8 +190,13 @@ ENTRY(entry_SYSCALL_compat)
/* Interrupts are off on entry. */
swapgs

/* Stash user ESP and switch to the kernel stack. */
/* Stash user ESP */
movl %esp, %r8d

/* Use %rsp as scratch reg. User ESP is stashed in r8 */
SWITCH_TO_KERNEL_CR3 scratch_reg=%rsp

/* Switch to the kernel stack */
movq PER_CPU_VAR(cpu_current_top_of_stack), %rsp

/* Construct struct pt_regs on stack */
Expand Down Expand Up @@ -219,12 +224,6 @@ GLOBAL(entry_SYSCALL_compat_after_hwframe)
pushq $0 /* pt_regs->r14 = 0 */
pushq $0 /* pt_regs->r15 = 0 */

/*
* We just saved %rdi so it is safe to clobber. It is not
* preserved during the C calls inside TRACE_IRQS_OFF anyway.
*/
SWITCH_TO_KERNEL_CR3 scratch_reg=%rdi

/*
* User mode is traced as though IRQs are on, and SYSENTER
* turned them off.
Expand Down
17 changes: 13 additions & 4 deletions arch/x86/include/asm/unwind.h
Original file line number Diff line number Diff line change
Expand Up @@ -56,18 +56,27 @@ void unwind_start(struct unwind_state *state, struct task_struct *task,

#if defined(CONFIG_UNWINDER_ORC) || defined(CONFIG_UNWINDER_FRAME_POINTER)
/*
* WARNING: The entire pt_regs may not be safe to dereference. In some cases,
* only the iret frame registers are accessible. Use with caution!
* If 'partial' returns true, only the iret frame registers are valid.
*/
static inline struct pt_regs *unwind_get_entry_regs(struct unwind_state *state)
static inline struct pt_regs *unwind_get_entry_regs(struct unwind_state *state,
bool *partial)
{
if (unwind_done(state))
return NULL;

if (partial) {
#ifdef CONFIG_UNWINDER_ORC
*partial = !state->full_regs;
#else
*partial = false;
#endif
}

return state->regs;
}
#else
static inline struct pt_regs *unwind_get_entry_regs(struct unwind_state *state)
static inline struct pt_regs *unwind_get_entry_regs(struct unwind_state *state,
bool *partial)
{
return NULL;
}
Expand Down
4 changes: 2 additions & 2 deletions arch/x86/kernel/cpu/common.c
Original file line number Diff line number Diff line change
Expand Up @@ -923,8 +923,8 @@ static void __init early_identify_cpu(struct cpuinfo_x86 *c)

setup_force_cpu_cap(X86_FEATURE_ALWAYS);

/* Assume for now that ALL x86 CPUs are insecure */
setup_force_cpu_bug(X86_BUG_CPU_INSECURE);
if (c->x86_vendor != X86_VENDOR_AMD)
setup_force_cpu_bug(X86_BUG_CPU_INSECURE);

fpu__init_system(c);

Expand Down
Loading

0 comments on commit 10bf547

Please sign in to comment.