Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add ioctl for reading sdb buffer physical address. #8

This pull request is big! We’re only showing the most recent 250 commits.

Commits on Jul 31, 2020

  1. ip6_gre: fix null-ptr-deref in ip6gre_init_net()

    [ Upstream commit 46ef5b8 ]
    
    KASAN report null-ptr-deref error when register_netdev() failed:
    
    KASAN: null-ptr-deref in range [0x00000000000003c0-0x00000000000003c7]
    CPU: 2 PID: 422 Comm: ip Not tainted 5.8.0-rc4+ #12
    Call Trace:
     ip6gre_init_net+0x4ab/0x580
     ? ip6gre_tunnel_uninit+0x3f0/0x3f0
     ops_init+0xa8/0x3c0
     setup_net+0x2de/0x7e0
     ? rcu_read_lock_bh_held+0xb0/0xb0
     ? ops_init+0x3c0/0x3c0
     ? kasan_unpoison_shadow+0x33/0x40
     ? __kasan_kmalloc.constprop.0+0xc2/0xd0
     copy_net_ns+0x27d/0x530
     create_new_namespaces+0x382/0xa30
     unshare_nsproxy_namespaces+0xa1/0x1d0
     ksys_unshare+0x39c/0x780
     ? walk_process_tree+0x2a0/0x2a0
     ? trace_hardirqs_on+0x4a/0x1b0
     ? _raw_spin_unlock_irq+0x1f/0x30
     ? syscall_trace_enter+0x1a7/0x330
     ? do_syscall_64+0x1c/0xa0
     __x64_sys_unshare+0x2d/0x40
     do_syscall_64+0x56/0xa0
     entry_SYSCALL_64_after_hwframe+0x44/0xa9
    
    ip6gre_tunnel_uninit() has set 'ign->fb_tunnel_dev' to NULL, later
    access to ign->fb_tunnel_dev cause null-ptr-deref. Fix it by saving
    'ign->fb_tunnel_dev' to local variable ndev.
    
    Fixes: dafabb6 ("ip6_gre: fix use-after-free in ip6gre_tunnel_lookup()")
    Reported-by: Hulk Robot <hulkci@huawei.com>
    Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
    Reviewed-by: Eric Dumazet <edumazet@google.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Wei Yongjun authored and gregkh committed Jul 31, 2020
    Configuration menu
    Copy the full SHA
    8d9f13d View commit details
    Browse the repository at this point in the history
  2. net-sysfs: add a newline when printing 'tx_timeout' by sysfs

    [ Upstream commit 9bb5fbe ]
    
    When I cat 'tx_timeout' by sysfs, it displays as follows. It's better to
    add a newline for easy reading.
    
    root@syzkaller:~# cat /sys/devices/virtual/net/lo/queues/tx-0/tx_timeout
    0root@syzkaller:~#
    
    Signed-off-by: Xiongfeng Wang <wangxiongfeng2@huawei.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    fenghusthu authored and gregkh committed Jul 31, 2020
    Configuration menu
    Copy the full SHA
    274b40b View commit details
    Browse the repository at this point in the history
  3. net: udp: Fix wrong clean up for IS_UDPLITE macro

    [ Upstream commit b0a4227 ]
    
    We can't use IS_UDPLITE to replace udp_sk->pcflag when UDPLITE_RECV_CC is
    checked.
    
    Fixes: b2bf1e2 ("[UDP]: Clean up for IS_UDPLITE macro")
    Signed-off-by: Miaohe Lin <linmiaohe@huawei.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    MiaoheLin authored and gregkh committed Jul 31, 2020
    Configuration menu
    Copy the full SHA
    2bf797a View commit details
    Browse the repository at this point in the history
  4. qrtr: orphan socket in qrtr_release()

    [ Upstream commit af9f691 ]
    
    We have to detach sock from socket in qrtr_release(),
    otherwise skb->sk may still reference to this socket
    when the skb is released in tun->queue, particularly
    sk->sk_wq still points to &sock->wq, which leads to
    a UAF.
    
    Reported-and-tested-by: syzbot+6720d64f31c081c2f708@syzkaller.appspotmail.com
    Fixes: 28fb4e5 ("net: qrtr: Expose tunneling endpoint to user space")
    Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
    Cc: Eric Dumazet <eric.dumazet@gmail.com>
    Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
    Reviewed-by: Eric Dumazet <edumazet@google.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    congwang authored and gregkh committed Jul 31, 2020
    Configuration menu
    Copy the full SHA
    b7d3d6d View commit details
    Browse the repository at this point in the history
  5. rtnetlink: Fix memory(net_device) leak when ->newlink fails

    [ Upstream commit cebb697 ]
    
    When vlan_newlink call register_vlan_dev fails, it might return error
    with dev->reg_state = NETREG_UNREGISTERED. The rtnl_newlink should
    free the memory. But currently rtnl_newlink only free the memory which
    state is NETREG_UNINITIALIZED.
    
    BUG: memory leak
    unreferenced object 0xffff8881051de000 (size 4096):
      comm "syz-executor139", pid 560, jiffies 4294745346 (age 32.445s)
      hex dump (first 32 bytes):
        76 6c 61 6e 32 00 00 00 00 00 00 00 00 00 00 00  vlan2...........
        00 45 28 03 81 88 ff ff 00 00 00 00 00 00 00 00  .E(.............
      backtrace:
        [<0000000047527e31>] kmalloc_node include/linux/slab.h:578 [inline]
        [<0000000047527e31>] kvmalloc_node+0x33/0xd0 mm/util.c:574
        [<000000002b59e3bc>] kvmalloc include/linux/mm.h:753 [inline]
        [<000000002b59e3bc>] kvzalloc include/linux/mm.h:761 [inline]
        [<000000002b59e3bc>] alloc_netdev_mqs+0x83/0xd90 net/core/dev.c:9929
        [<000000006076752a>] rtnl_create_link+0x2c0/0xa20 net/core/rtnetlink.c:3067
        [<00000000572b3be5>] __rtnl_newlink+0xc9c/0x1330 net/core/rtnetlink.c:3329
        [<00000000e84ea553>] rtnl_newlink+0x66/0x90 net/core/rtnetlink.c:3397
        [<0000000052c7c0a9>] rtnetlink_rcv_msg+0x540/0x990 net/core/rtnetlink.c:5460
        [<000000004b5cb379>] netlink_rcv_skb+0x12b/0x3a0 net/netlink/af_netlink.c:2469
        [<00000000c71c20d3>] netlink_unicast_kernel net/netlink/af_netlink.c:1303 [inline]
        [<00000000c71c20d3>] netlink_unicast+0x4c6/0x690 net/netlink/af_netlink.c:1329
        [<00000000cca72fa9>] netlink_sendmsg+0x735/0xcc0 net/netlink/af_netlink.c:1918
        [<000000009221ebf7>] sock_sendmsg_nosec net/socket.c:652 [inline]
        [<000000009221ebf7>] sock_sendmsg+0x109/0x140 net/socket.c:672
        [<000000001c30ffe4>] ____sys_sendmsg+0x5f5/0x780 net/socket.c:2352
        [<00000000b71ca6f3>] ___sys_sendmsg+0x11d/0x1a0 net/socket.c:2406
        [<0000000007297384>] __sys_sendmsg+0xeb/0x1b0 net/socket.c:2439
        [<000000000eb29b11>] do_syscall_64+0x56/0xa0 arch/x86/entry/common.c:359
        [<000000006839b4d0>] entry_SYSCALL_64_after_hwframe+0x44/0xa9
    
    Fixes: cb626bf ("net-sysfs: Fix reference count leak")
    Reported-by: Hulk Robot <hulkci@huawei.com>
    Signed-off-by: Weilong Chen <chenweilong@huawei.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Weilong Chen authored and gregkh committed Jul 31, 2020
    Configuration menu
    Copy the full SHA
    01c9283 View commit details
    Browse the repository at this point in the history
  6. rxrpc: Fix sendmsg() returning EPIPE due to recvmsg() returning ENODATA

    [ Upstream commit 639f181 ]
    
    rxrpc_sendmsg() returns EPIPE if there's an outstanding error, such as if
    rxrpc_recvmsg() indicating ENODATA if there's nothing for it to read.
    
    Change rxrpc_recvmsg() to return EAGAIN instead if there's nothing to read
    as this particular error doesn't get stored in ->sk_err by the networking
    core.
    
    Also change rxrpc_sendmsg() so that it doesn't fail with delayed receive
    errors (there's no way for it to report which call, if any, the error was
    caused by).
    
    Fixes: 17926a7 ("[AF_RXRPC]: Provide secure RxRPC sockets for use by userspace and kernel both")
    Signed-off-by: David Howells <dhowells@redhat.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    dhowells authored and gregkh committed Jul 31, 2020
    Configuration menu
    Copy the full SHA
    e2f904f View commit details
    Browse the repository at this point in the history
  7. tcp: allow at most one TLP probe per flight

    [ Upstream commit 76be93f ]
    
    Previously TLP may send multiple probes of new data in one
    flight. This happens when the sender is cwnd limited. After the
    initial TLP containing new data is sent, the sender receives another
    ACK that acks partial inflight.  It may re-arm another TLP timer
    to send more, if no further ACK returns before the next TLP timeout
    (PTO) expires. The sender may send in theory a large amount of TLP
    until send queue is depleted. This only happens if the sender sees
    such irregular uncommon ACK pattern. But it is generally undesirable
    behavior during congestion especially.
    
    The original TLP design restrict only one TLP probe per inflight as
    published in "Reducing Web Latency: the Virtue of Gentle Aggression",
    SIGCOMM 2013. This patch changes TLP to send at most one probe
    per inflight.
    
    Note that if the sender is app-limited, TLP retransmits old data
    and did not have this issue.
    
    Signed-off-by: Yuchung Cheng <ycheng@google.com>
    Signed-off-by: Neal Cardwell <ncardwell@google.com>
    Signed-off-by: Eric Dumazet <edumazet@google.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    yuchungcheng authored and gregkh committed Jul 31, 2020
    Configuration menu
    Copy the full SHA
    182ffc6 View commit details
    Browse the repository at this point in the history
  8. AX.25: Prevent integer overflows in connect and sendmsg

    [ Upstream commit 17ad73e ]
    
    We recently added some bounds checking in ax25_connect() and
    ax25_sendmsg() and we so we removed the AX25_MAX_DIGIS checks because
    they were no longer required.
    
    Unfortunately, I believe they are required to prevent integer overflows
    so I have added them back.
    
    Fixes: 8885bb0 ("AX.25: Prevent out-of-bounds read in ax25_sendmsg()")
    Fixes: 2f2a7ff ("AX.25: Fix out-of-bounds read in ax25_connect()")
    Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Dan Carpenter authored and gregkh committed Jul 31, 2020
    Configuration menu
    Copy the full SHA
    bbf6af4 View commit details
    Browse the repository at this point in the history
  9. sctp: shrink stream outq only when new outcnt < old outcnt

    [ Upstream commit 8f13399 ]
    
    It's not necessary to go list_for_each for outq->out_chunk_list
    when new outcnt >= old outcnt, as no chunk with higher sid than
    new (outcnt - 1) exists in the outqueue.
    
    While at it, also move the list_for_each code in a new function
    sctp_stream_shrink_out(), which will be used in the next patch.
    
    Signed-off-by: Xin Long <lucien.xin@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    lxin authored and gregkh committed Jul 31, 2020
    Configuration menu
    Copy the full SHA
    46e7c7e View commit details
    Browse the repository at this point in the history
  10. sctp: shrink stream outq when fails to do addstream reconf

    [ Upstream commit 3ecdda3 ]
    
    When adding a stream with stream reconf, the new stream firstly is in
    CLOSED state but new out chunks can still be enqueued. Then once gets
    the confirmation from the peer, the state will change to OPEN.
    
    However, if the peer denies, it needs to roll back the stream. But when
    doing that, it only sets the stream outcnt back, and the chunks already
    in the new stream don't get purged. It caused these chunks can still be
    dequeued in sctp_outq_dequeue_data().
    
    As its stream is still in CLOSE, the chunk will be enqueued to the head
    again by sctp_outq_head_data(). This chunk will never be sent out, and
    the chunks after it can never be dequeued. The assoc will be 'hung' in
    a dead loop of sending this chunk.
    
    To fix it, this patch is to purge these chunks already in the new
    stream by calling sctp_stream_shrink_out() when failing to do the
    addstream reconf.
    
    Fixes: 11ae76e ("sctp: implement receiver-side procedures for the Reconf Response Parameter")
    Reported-by: Ying Xu <yinxu@redhat.com>
    Signed-off-by: Xin Long <lucien.xin@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    lxin authored and gregkh committed Jul 31, 2020
    Configuration menu
    Copy the full SHA
    86512c6 View commit details
    Browse the repository at this point in the history
  11. udp: Copy has_conns in reuseport_grow().

    [ Upstream commit f2b2c55 ]
    
    If an unconnected socket in a UDP reuseport group connect()s, has_conns is
    set to 1. Then, when a packet is received, udp[46]_lib_lookup2() scans all
    sockets in udp_hslot looking for the connected socket with the highest
    score.
    
    However, when the number of sockets bound to the port exceeds max_socks,
    reuseport_grow() resets has_conns to 0. It can cause udp[46]_lib_lookup2()
    to return without scanning all sockets, resulting in that packets sent to
    connected sockets may be distributed to unconnected sockets.
    
    Therefore, reuseport_grow() should copy has_conns.
    
    Fixes: acdcecc ("udp: correct reuseport selection with connected sockets")
    CC: Willem de Bruijn <willemb@google.com>
    Reviewed-by: Benjamin Herrenschmidt <benh@amazon.com>
    Signed-off-by: Kuniyuki Iwashima <kuniyu@amazon.co.jp>
    Acked-by: Willem de Bruijn <willemb@google.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    q2ven authored and gregkh committed Jul 31, 2020
    Configuration menu
    Copy the full SHA
    6735c12 View commit details
    Browse the repository at this point in the history
  12. udp: Improve load balancing for SO_REUSEPORT.

    [ Upstream commit efc6b6f ]
    
    Currently, SO_REUSEPORT does not work well if connected sockets are in a
    UDP reuseport group.
    
    Then reuseport_has_conns() returns true and the result of
    reuseport_select_sock() is discarded. Also, unconnected sockets have the
    same score, hence only does the first unconnected socket in udp_hslot
    always receive all packets sent to unconnected sockets.
    
    So, the result of reuseport_select_sock() should be used for load
    balancing.
    
    The noteworthy point is that the unconnected sockets placed after
    connected sockets in sock_reuseport.socks will receive more packets than
    others because of the algorithm in reuseport_select_sock().
    
        index | connected | reciprocal_scale | result
        ---------------------------------------------
        0     | no        | 20%              | 40%
        1     | no        | 20%              | 20%
        2     | yes       | 20%              | 0%
        3     | no        | 20%              | 40%
        4     | yes       | 20%              | 0%
    
    If most of the sockets are connected, this can be a problem, but it still
    works better than now.
    
    Fixes: acdcecc ("udp: correct reuseport selection with connected sockets")
    CC: Willem de Bruijn <willemb@google.com>
    Reviewed-by: Benjamin Herrenschmidt <benh@amazon.com>
    Signed-off-by: Kuniyuki Iwashima <kuniyu@amazon.co.jp>
    Acked-by: Willem de Bruijn <willemb@google.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    q2ven authored and gregkh committed Jul 31, 2020
    Configuration menu
    Copy the full SHA
    df89c1e View commit details
    Browse the repository at this point in the history
  13. regmap: debugfs: check count when read regmap file

    commit 74edd08 upstream.
    
    When executing the following command, we met kernel dump.
    dmesg -c > /dev/null; cd /sys;
    for i in `ls /sys/kernel/debug/regmap/* -d`; do
    	echo "Checking regmap in $i";
    	cat $i/registers;
    done && grep -ri "0x02d0" *;
    
    It is because the count value is too big, and kmalloc fails. So add an
    upper bound check to allow max size `PAGE_SIZE << (MAX_ORDER - 1)`.
    
    Signed-off-by: Peng Fan <peng.fan@nxp.com>
    Link: https://lore.kernel.org/r/1584064687-12964-1-git-send-email-peng.fan@nxp.com
    Signed-off-by: Mark Brown <broonie@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    MrVan authored and gregkh committed Jul 31, 2020
    Configuration menu
    Copy the full SHA
    59242fa View commit details
    Browse the repository at this point in the history
  14. PM: wakeup: Show statistics for deleted wakeup sources again

    commit e976eb4 upstream.
    
    After commit 00ee22c (PM / wakeup: Use seq_open() to show wakeup
    stats), print_wakeup_source_stats(m, &deleted_ws) is not called from
    wakeup_sources_stats_seq_show() any more.
    
    Because deleted_ws is one of the wakeup sources, it should be shown
    too, so add it to the end of all other wakeup sources.
    
    Signed-off-by: zhuguangqing <zhuguangqing@xiaomi.com>
    [ rjw: Subject & changelog ]
    Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
    Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    zhuguangqing authored and gregkh committed Jul 31, 2020
    Configuration menu
    Copy the full SHA
    4918285 View commit details
    Browse the repository at this point in the history
  15. Revert "dpaa_eth: fix usage as DSA master, try 3"

    This reverts commit 40a904b.
    
    The patch is not wrong, but the Fixes: tag is. It should have been:
    
    	Fixes: 060ad66 ("dpaa_eth: change DMA device")
    
    which means that it's fixing a commit which was introduced in:
    
    git tag --contains 060ad66
    v5.5
    
    which then means it should have not been backported to linux-5.4.y,
    where things _were_ working and now they're not.
    
    Reported-by: Joakim Tjernlund <joakim.tjernlund@infinera.com>
    Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    vladimiroltean authored and gregkh committed Jul 31, 2020
    Configuration menu
    Copy the full SHA
    909dbf0 View commit details
    Browse the repository at this point in the history
  16. Linux 5.4.55

    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    gregkh committed Jul 31, 2020
    Configuration menu
    Copy the full SHA
    169b938 View commit details
    Browse the repository at this point in the history

Commits on Aug 5, 2020

  1. crypto: ccp - Release all allocated memory if sha type is invalid

    [ Upstream commit 128c664 ]
    
    Release all allocated memory if sha type is invalid:
    In ccp_run_sha_cmd, if the type of sha is invalid, the allocated
    hmac_buf should be released.
    
    v2: fix the goto.
    
    Signed-off-by: Navid Emamdoost <navid.emamdoost@gmail.com>
    Acked-by: Gary R Hook <gary.hook@amd.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    Navidem authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    ecfa7fa View commit details
    Browse the repository at this point in the history
  2. media: rc: prevent memory leak in cx23888_ir_probe

    [ Upstream commit a7b2df7 ]
    
    In cx23888_ir_probe if kfifo_alloc fails the allocated memory for state
    should be released.
    
    Signed-off-by: Navid Emamdoost <navid.emamdoost@gmail.com>
    Signed-off-by: Sean Young <sean@mess.org>
    Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    Navidem authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    84da977 View commit details
    Browse the repository at this point in the history
  3. sunrpc: check that domain table is empty at module unload.

    [ Upstream commit f45db2b ]
    
    The domain table should be empty at module unload.  If it isn't there is
    a bug somewhere.  So check and report.
    
    Link: https://bugzilla.kernel.org/show_bug.cgi?id=206651
    Signed-off-by: NeilBrown <neilb@suse.de>
    Signed-off-by: J. Bruce Fields <bfields@redhat.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    Sasha Levin authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    98cef10 View commit details
    Browse the repository at this point in the history
  4. ath10k: enable transmit data ack RSSI for QCA9884

    commit cc78dc3 upstream.
    
    For all data packets transmitted, host gets htt tx completion event. Some QCA9984
    firmware releases support WMI_SERVICE_TX_DATA_ACK_RSSI, which gives data
    ack rssi values to host through htt event of data tx completion. Data ack rssi
    values are valid if A0 bit is set in HTT rx message. So enable the feature also
    for QCA9884.
    
    Tested HW: QCA9984
    Tested FW: 10.4-3.9.0.2-00044
    
    Signed-off-by: Abhishek Ambure <aambure@codeaurora.org>
    Signed-off-by: Balaji Pothunoori <bpothuno@codeaurora.org>
    [kvalo@codeaurora.org: improve commit log]
    Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
    Signed-off-by: Sathishkumar Muruganandam <murugana@codeaurora.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Abhishek Ambure authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    2ff6558 View commit details
    Browse the repository at this point in the history
  5. PCI/ASPM: Disable ASPM on ASMedia ASM1083/1085 PCIe-to-PCI bridge

    commit b361663 upstream.
    
    Recently ASPM handling was changed to allow ASPM on PCIe-to-PCI/PCI-X
    bridges.  Unfortunately the ASMedia ASM1083/1085 PCIe to PCI bridge device
    doesn't seem to function properly with ASPM enabled.  On an Asus PRIME
    H270-PRO motherboard, it causes errors like these:
    
      pcieport 0000:00:1c.0: AER: PCIe Bus Error: severity=Corrected, type=Data Link Layer, (Transmitter ID)
      pcieport 0000:00:1c.0: AER:   device [8086:a292] error status/mask=00003000/00002000
      pcieport 0000:00:1c.0: AER:    [12] Timeout
      pcieport 0000:00:1c.0: AER: Corrected error received: 0000:00:1c.0
      pcieport 0000:00:1c.0: AER: can't find device of ID00e0
    
    In addition to flooding the kernel log, this also causes the machine to
    wake up immediately after suspend is initiated.
    
    The device advertises ASPM L0s and L1 support in the Link Capabilities
    register, but the ASMedia web page for ASM1083 [1] claims "No PCIe ASPM
    support".
    
    Windows 10 (build 2004) enables L0s, but it also logs correctable PCIe
    errors.
    
    Add a quirk to disable ASPM for this device.
    
    [1] https://www.asmedia.com.tw/eng/e_show_products.php?cate_index=169&item=114
    
    [bhelgaas: commit log]
    Fixes: 66ff14e ("PCI/ASPM: Allow ASPM on links to PCIe-to-PCI/PCI-X Bridges")
    Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=208667
    Link: https://lore.kernel.org/r/20200722021803.17958-1-hancockrwd@gmail.com
    Signed-off-by: Robert Hancock <hancockrwd@gmail.com>
    Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    robhancock authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    1402105 View commit details
    Browse the repository at this point in the history
  6. mm/filemap.c: don't bother dropping mmap_sem for zero size readahead

    commit 5c72fee upstream.
    
    When handling a page fault, we drop mmap_sem to start async readahead so
    that we don't block on IO submission with mmap_sem held.  However there's
    no point to drop mmap_sem in case readahead is disabled.  Handle that case
    to avoid pointless dropping of mmap_sem and retrying the fault.  This was
    actually reported to block mlockall(MCL_CURRENT) indefinitely.
    
    Fixes: 6b4c9f4 ("filemap: drop the mmap_sem for all blocking operations")
    Reported-by: Minchan Kim <minchan@kernel.org>
    Reported-by: Robert Stupp <snazy@gmx.de>
    Signed-off-by: Jan Kara <jack@suse.cz>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Reviewed-by: Josef Bacik <josef@toxicpanda.com>
    Reviewed-by: Minchan Kim <minchan@kernel.org>
    Link: http://lkml.kernel.org/r/20200212101356.30759-1-jack@suse.cz
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: SeongJae Park <sjpark@amazon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    jankara authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    47e2093 View commit details
    Browse the repository at this point in the history
  7. ALSA: usb-audio: Add implicit feedback quirk for SSL2

    commit 3da87ec upstream.
    
    As expected, this requires the same quirk as the SSL2+ in order for the
    clock to sync. This was suggested by, and tested on an SSL2, by Dmitry.
    
    Suggested-by: Dmitry <dpavlushko@gmail.com>
    Signed-off-by: Laurence Tratt <laurie@tratt.net>
    Cc: <stable@vger.kernel.org>
    Link: https://lore.kernel.org/r/20200621075005.52mjjfc6dtdjnr3h@overdrive.tratt.net
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ltratt authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    6d84a8c View commit details
    Browse the repository at this point in the history
  8. ALSA: hda/realtek: enable headset mic of ASUS ROG Zephyrus G15(GA502)…

    … series with ALC289
    
    commit 4b43d05 upstream.
    
    This patch adds support for headset mic to the ASUS ROG Zephyrus
    G15(GA502) notebook series by adding the corresponding
    vendor/pci_device id, as well as adding a new fixup for the used
    realtek ALC289. The fixup stets the correct pin to get the headset mic
    correctly recognized on audio-jack.
    
    Signed-off-by: Armas Spann <zappel@retarded.farm>
    Cc: <stable@vger.kernel.org>
    Link: https://lore.kernel.org/r/20200724140616.298892-1-zappel@retarded.farm
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Armas Spann authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    cd76d30 View commit details
    Browse the repository at this point in the history
  9. ALSA: hda/realtek: typo_fix: enable headset mic of ASUS ROG Zephyrus …

    …G14(GA401) series with ALC289
    
    commit 293a92c upstream.
    
    This patch fixes a small typo I accidently submitted with the initial patch. The board should be named GA401 not G401.
    
    Fixes: ff53664 ("ALSA: hda/realtek: enable headset mic of ASUS ROG Zephyrus G14(G401) series with ALC289")
    Signed-off-by: Armas Spann <zappel@retarded.farm>
    Cc: <stable@vger.kernel.org>
    Link: https://lore.kernel.org/r/20200724140837.302763-1-zappel@retarded.farm
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Armas Spann authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    e9f147c View commit details
    Browse the repository at this point in the history
  10. ALSA: hda/realtek: Fix add a "ultra_low_power" function for intel ref…

    …erence board (alc256)
    
    commit 6fa38ef upstream.
    
    Intel requires to enable power saving mode for intel reference board (alc256)
    
    Signed-off-by: PeiSen Hou <pshou@realtek.com>
    Cc: <stable@vger.kernel.org>
    Link: https://lore.kernel.org/r/20200727115647.10967-1-tiwai@suse.de
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    PeiSen Hou authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    09832a9 View commit details
    Browse the repository at this point in the history
  11. ALSA: hda/realtek - Fixed HP right speaker no sound

    commit 5649625 upstream.
    
    HP NB right speaker had no sound output.
    This platform was connected to I2S Amp for speaker out.(None Realtek I2S Amp IC)
    EC need to check codec GPIO1 pin to initial I2S Amp.
    
    Signed-off-by: Kailang Yang <kailang@realtek.com>
    Cc: <stable@vger.kernel.org>
    Link: https://lore.kernel.org/r/01285f623ac7447187482fb4a8ecaa7c@realtek.com
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    kailangyang authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    6a67b05 View commit details
    Browse the repository at this point in the history
  12. ALSA: hda/hdmi: Fix keep_power assignment for non-component devices

    commit c2c3657 upstream.
    
    It's been reported that, when neither nouveau nor Nvidia graphics
    driver is used, the screen starts flickering.  And, after comparing
    between the working case (stable 4.4.x) and the broken case, it turned
    out that the problem comes from the audio component binding.  The
    Nvidia and AMD audio binding code clears the bus->keep_power flag
    whenever snd_hdac_acomp_init() succeeds.  But this doesn't mean that
    the component is actually bound, but it merely indicates that it's
    ready for binding.  So, when both nouveau and Nvidia are blacklisted
    or not ready, the driver keeps running without the audio component but
    also with bus->keep_power = false.  This made the driver runtime PM
    kicked in and powering down when unused, which results in flickering
    in the graphics side, as it seems.
    
    For fixing the bug, this patch moves the bus->keep_power flag change
    into generic_acomp_notifier_set() that is the function called from the
    master_bind callback of component ops; i.e. it's guaranteed that the
    binding succeeded.
    
    BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=208609
    Fixes: 5a858e7 ("ALSA: hda - Disable audio component for legacy Nvidia HDMI codecs")
    Cc: <stable@vger.kernel.org>
    Link: https://lore.kernel.org/r/20200728082033.23933-1-tiwai@suse.de
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    tiwai authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    dc731d2 View commit details
    Browse the repository at this point in the history
  13. IB/rdmavt: Fix RQ counting issues causing use of an invalid RWQE

    commit 54a485e upstream.
    
    The lookaside count is improperly initialized to the size of the
    Receive Queue with the additional +1.  In the traces below, the
    RQ size is 384, so the count was set to 385.
    
    The lookaside count is then rarely refreshed.  Note the high and
    incorrect count in the trace below:
    
    rvt_get_rwqe: [hfi1_0] wqe ffffc900078e9008 wr_id 55c7206d75a0 qpn c
    	qpt 2 pid 3018 num_sge 1 head 1 tail 0, count 385
    rvt_get_rwqe: (hfi1_rc_rcv+0x4eb/0x1480 [hfi1] <- rvt_get_rwqe) ret=0x1
    
    The head,tail indicate there is only one RWQE posted although the count
    says 385 and we correctly return the element 0.
    
    The next call to rvt_get_rwqe with the decremented count:
    
    rvt_get_rwqe: [hfi1_0] wqe ffffc900078e9058 wr_id 0 qpn c
    	qpt 2 pid 3018 num_sge 0 head 1 tail 1, count 384
    rvt_get_rwqe: (hfi1_rc_rcv+0x4eb/0x1480 [hfi1] <- rvt_get_rwqe) ret=0x1
    
    Note that the RQ is empty (head == tail) yet we return the RWQE at tail 1,
    which is not valid because of the bogus high count.
    
    Best case, the RWQE has never been posted and the rc logic sees an RWQE
    that is too small (all zeros) and puts the QP into an error state.
    
    In the worst case, a server slow at posting receive buffers might fool
    rvt_get_rwqe() into fetching an old RWQE and corrupt memory.
    
    Fix by deleting the faulty initialization code and creating an
    inline to fetch the posted count and convert all callers to use
    new inline.
    
    Fixes: f592ae3 ("IB/rdmavt: Fracture single lock used for posting and processing RWQEs")
    Link: https://lore.kernel.org/r/20200728183848.22226.29132.stgit@awfm-01.aw.intel.com
    Reported-by: Zhaojuan Guo <zguo@redhat.com>
    Cc: <stable@vger.kernel.org> # 5.4.x
    Reviewed-by: Kaike Wan <kaike.wan@intel.com>
    Signed-off-by: Mike Marciniszyn <mike.marciniszyn@intel.com>
    Tested-by: Honggang Li <honli@redhat.com>
    Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    mmarcini authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    951117a View commit details
    Browse the repository at this point in the history
  14. vhost/scsi: fix up req type endian-ness

    commit 295c1b9 upstream.
    
    vhost/scsi doesn't handle type conversion correctly
    for request type when using virtio 1.0 and up for BE,
    or cross-endian platforms.
    
    Fix it up using vhost_32_to_cpu.
    
    Cc: stable@vger.kernel.org
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Acked-by: Jason Wang <jasowang@redhat.com>
    Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    mstsirkin authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    96f1059 View commit details
    Browse the repository at this point in the history
  15. 9p/trans_fd: Fix concurrency del of req_list in p9_fd_cancelled/p9_re…

    …ad_work
    
    commit 74d6a5d upstream.
    
    p9_read_work and p9_fd_cancelled may be called concurrently.
    In some cases, req->req_list may be deleted by both p9_read_work
    and p9_fd_cancelled.
    
    We can fix it by ignoring replies associated with a cancelled
    request and ignoring cancelled request if message has been received
    before lock.
    
    Link: http://lkml.kernel.org/r/20200612090833.36149-1-wanghai38@huawei.com
    Fixes: 60ff779 ("9p: client: remove unused code and any reference to "cancelled" function")
    Cc: <stable@vger.kernel.org> # v3.12+
    Reported-by: syzbot+77a25acfa0382e06ab23@syzkaller.appspotmail.com
    Signed-off-by: Wang Hai <wanghai38@huawei.com>
    Signed-off-by: Dominique Martinet <asmadeus@codewreck.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Wang Hai authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    d3472f7 View commit details
    Browse the repository at this point in the history
  16. wireless: Use offsetof instead of custom macro.

    commit 6989310 upstream.
    
    Use offsetof to calculate offset of a field to take advantage of
    compiler built-in version when possible, and avoid UBSAN warning when
    compiling with Clang:
    
    ==================================================================
    UBSAN: Undefined behaviour in net/wireless/wext-core.c:525:14
    member access within null pointer of type 'struct iw_point'
    CPU: 3 PID: 165 Comm: kworker/u16:3 Tainted: G S      W         4.19.23 torvalds#43
    Workqueue: cfg80211 __cfg80211_scan_done [cfg80211]
    Call trace:
     dump_backtrace+0x0/0x194
     show_stack+0x20/0x2c
     __dump_stack+0x20/0x28
     dump_stack+0x70/0x94
     ubsan_epilogue+0x14/0x44
     ubsan_type_mismatch_common+0xf4/0xfc
     __ubsan_handle_type_mismatch_v1+0x34/0x54
     wireless_send_event+0x3cc/0x470
     ___cfg80211_scan_done+0x13c/0x220 [cfg80211]
     __cfg80211_scan_done+0x28/0x34 [cfg80211]
     process_one_work+0x170/0x35c
     worker_thread+0x254/0x380
     kthread+0x13c/0x158
     ret_from_fork+0x10/0x18
    ===================================================================
    
    Signed-off-by: Pi-Hsun Shih <pihsun@chromium.org>
    Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
    Link: https://lore.kernel.org/r/20191204081307.138765-1-pihsun@chromium.org
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>
    Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    peter50216 authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    b8fa0b0 View commit details
    Browse the repository at this point in the history
  17. ARM: 8986/1: hw_breakpoint: Don't invoke overflow handler on uaccess …

    …watchpoints
    
    commit eec13b4 upstream.
    
    Unprivileged memory accesses generated by the so-called "translated"
    instructions (e.g. LDRT) in kernel mode can cause user watchpoints to fire
    unexpectedly. In such cases, the hw_breakpoint logic will invoke the user
    overflow handler which will typically raise a SIGTRAP back to the current
    task. This is futile when returning back to the kernel because (a) the
    signal won't have been delivered and (b) userspace can't handle the thing
    anyway.
    
    Avoid invoking the user overflow handler for watchpoints triggered by
    kernel uaccess routines, and instead single-step over the faulting
    instruction as we would if no overflow handler had been installed.
    
    Cc: <stable@vger.kernel.org>
    Fixes: f81ef4a ("ARM: 6356/1: hw-breakpoint: add ARM backend for the hw-breakpoint framework")
    Reported-by: Luis Machado <luis.machado@linaro.org>
    Tested-by: Luis Machado <luis.machado@linaro.org>
    Signed-off-by: Will Deacon <will@kernel.org>
    Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    willdeacon authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    3b7e4a5 View commit details
    Browse the repository at this point in the history
  18. ARM: dts: imx6sx-sabreauto: Fix the phy-mode on fec2

    commit d36f260 upstream.
    
    Commit 0672d22 ("ARM: dts: imx: Fix the AR803X phy-mode") fixed the
    phy-mode for fec1, but missed to fix it for the fec2 node.
    
    Fix fec2 to also use "rgmii-id" as the phy-mode.
    
    Cc: <stable@vger.kernel.org>
    Fixes: 0672d22 ("ARM: dts: imx: Fix the AR803X phy-mode")
    Signed-off-by: Fabio Estevam <festevam@gmail.com>
    Signed-off-by: Shawn Guo <shawnguo@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    fabioestevam authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    c4738c6 View commit details
    Browse the repository at this point in the history
  19. ARM: dts: imx6sx-sdb: Fix the phy-mode on fec2

    commit c696afd upstream.
    
    Commit 0672d22 ("ARM: dts: imx: Fix the AR803X phy-mode") fixed the
    phy-mode for fec1, but missed to fix it for the fec2 node.
    
    Fix fec2 to also use "rgmii-id" as the phy-mode.
    
    Cc: <stable@vger.kernel.org>
    Fixes: 0672d22 ("ARM: dts: imx: Fix the AR803X phy-mode")
    Signed-off-by: Fabio Estevam <festevam@gmail.com>
    Signed-off-by: Shawn Guo <shawnguo@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    fabioestevam authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    b927461 View commit details
    Browse the repository at this point in the history
  20. ARM: dts: imx6qdl-icore: Fix OTG_ID pin and sdcard detect

    commit 4a601da upstream.
    
    The current pin muxing scheme muxes GPIO_1 pad for USB_OTG_ID
    because of which when card is inserted, usb otg is enumerated
    and the card is never detected.
    
    [   64.492645] cfg80211: failed to load regulatory.db
    [   64.492657] imx-sdma 20ec000.sdma: external firmware not found, using ROM firmware
    [   76.343711] ci_hdrc ci_hdrc.0: EHCI Host Controller
    [   76.349742] ci_hdrc ci_hdrc.0: new USB bus registered, assigned bus number 2
    [   76.388862] ci_hdrc ci_hdrc.0: USB 2.0 started, EHCI 1.00
    [   76.396650] usb usb2: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.08
    [   76.405412] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    [   76.412763] usb usb2: Product: EHCI Host Controller
    [   76.417666] usb usb2: Manufacturer: Linux 5.8.0-rc1-next-20200618 ehci_hcd
    [   76.424623] usb usb2: SerialNumber: ci_hdrc.0
    [   76.431755] hub 2-0:1.0: USB hub found
    [   76.435862] hub 2-0:1.0: 1 port detected
    
    The TRM mentions GPIO_1 pad should be muxed/assigned for card detect
    and ENET_RX_ER pad for USB_OTG_ID for proper operation.
    
    This patch fixes pin muxing as per TRM and is tested on a
    i.Core 1.5 MX6 DL SOM.
    
    [   22.449165] mmc0: host does not support reading read-only switch, assuming write-enable
    [   22.459992] mmc0: new high speed SDHC card at address 0001
    [   22.469725] mmcblk0: mmc0:0001 EB1QT 29.8 GiB
    [   22.478856]  mmcblk0: p1 p2
    
    Fixes: 6df1128 ("ARM: dts: imx6q: Add Engicam i.CoreM6 Quad/Dual initial support")
    Cc: stable@vger.kernel.org
    Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
    Signed-off-by: Suniel Mahesh <sunil@amarulasolutions.com>
    Signed-off-by: Shawn Guo <shawnguo@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    panicking authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    c2f787f View commit details
    Browse the repository at this point in the history
  21. virtio_balloon: fix up endian-ness for free cmd id

    commit 168c358 upstream.
    
    free cmd id is read using virtio endian, spec says all fields
    in balloon are LE. Fix it up.
    
    Fixes: 86a5597 ("virtio-balloon: VIRTIO_BALLOON_F_FREE_PAGE_HINT")
    Cc: stable@vger.kernel.org
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Acked-by: Jason Wang <jasowang@redhat.com>
    Reviewed-by: Wei Wang <wei.w.wang@intel.com>
    Acked-by: David Hildenbrand <david@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    mstsirkin authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    cea6633 View commit details
    Browse the repository at this point in the history
  22. Revert "drm/amdgpu: Fix NULL dereference in dpm sysfs handlers"

    commit 87004ab upstream.
    
    This regressed some working configurations so revert it.  Will
    fix this properly for 5.9 and backport then.
    
    This reverts commit 38e0c89.
    
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Cc: stable@vger.kernel.org
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    alexdeucher authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    22d3202 View commit details
    Browse the repository at this point in the history
  23. drm/amd/display: Clear dm_state for fast updates

    commit fde9f39 upstream.
    
    This patch fixes a race condition that causes a use-after-free during
    amdgpu_dm_atomic_commit_tail. This can occur when 2 non-blocking commits
    are requested and the second one finishes before the first. Essentially,
    this bug occurs when the following sequence of events happens:
    
    1. Non-blocking commit #1 is requested w/ a new dm_state #1 and is
    deferred to the workqueue.
    
    2. Non-blocking commit #2 is requested w/ a new dm_state #2 and is
    deferred to the workqueue.
    
    3. Commit #2 starts before commit #1, dm_state #1 is used in the
    commit_tail and commit #2 completes, freeing dm_state #1.
    
    4. Commit #1 starts after commit #2 completes, uses the freed dm_state
    1 and dereferences a freelist pointer while setting the context.
    
    Since this bug has only been spotted with fast commits, this patch fixes
    the bug by clearing the dm_state instead of using the old dc_state for
    fast updates. In addition, since dm_state is only used for its dc_state
    and amdgpu_dm_atomic_commit_tail will retain the dc_state if none is found,
    removing the dm_state should not have any consequences in fast updates.
    
    This use-after-free bug has existed for a while now, but only caused a
    noticeable issue starting from 5.7-rc1 due to 3202fa6 ("slub: relocate
    freelist pointer to middle of object") moving the freelist pointer from
    dm_state->base (which was unused) to dm_state->context (which is
    dereferenced).
    
    Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=207383
    Fixes: bd200d1 ("drm/amd/display: Don't replace the dc_state for fast updates")
    Reported-by: Duncan <1i5t5.duncan@cox.net>
    Signed-off-by: Mazin Rezk <mnrzk@protonmail.com>
    Reviewed-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Cc: stable@vger.kernel.org
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Mazin Rezk authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    f1b4bdd View commit details
    Browse the repository at this point in the history
  24. drm/amdgpu: Prevent kernel-infoleak in amdgpu_info_ioctl()

    commit 543e866 upstream.
    
    Compiler leaves a 4-byte hole near the end of `dev_info`, causing
    amdgpu_info_ioctl() to copy uninitialized kernel stack memory to userspace
    when `size` is greater than 356.
    
    In 2015 we tried to fix this issue by doing `= {};` on `dev_info`, which
    unfortunately does not initialize that 4-byte hole. Fix it by using
    memset() instead.
    
    Cc: stable@vger.kernel.org
    Fixes: c193fa9 ("drm/amdgpu: information leak in amdgpu_info_ioctl()")
    Fixes: d38ceaf ("drm/amdgpu: add core driver (v4)")
    Suggested-by: Dan Carpenter <dan.carpenter@oracle.com>
    Reviewed-by: Christian König <christian.koenig@amd.com>
    Signed-off-by: Peilin Ye <yepeilin.cs@gmail.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    peilin-ye authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    8ea180f View commit details
    Browse the repository at this point in the history
  25. drm/dbi: Fix SPI Type 1 (9-bit) transfer

    commit 900ab59 upstream.
    
    The function mipi_dbi_spi1_transfer() will transfer its payload as 9-bit
    data, the 9th (MSB) bit being the data/command bit. In order to do that,
    it unpacks the 8-bit values into 16-bit values, then sets the 9th bit if
    the byte corresponds to data, clears it otherwise. The 7 MSB are
    padding. The array of now 16-bit values is then passed to the SPI core
    for transfer.
    
    This function was broken since its introduction, as the length of the
    SPI transfer was set to the payload size before its conversion, but the
    payload doubled in size due to the 8-bit -> 16-bit conversion.
    
    Fixes: 02dd95f ("drm/tinydrm: Add MIPI DBI support")
    Cc: <stable@vger.kernel.org> # 5.4+
    Signed-off-by: Paul Cercueil <paul@crapouillou.net>
    Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
    Reviewed-by: Noralf Trønnes <noralf@tronnes.org>
    Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
    Link: https://patchwork.freedesktop.org/patch/msgid/20200703141341.1266263-1-paul@crapouillou.net
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    pcercuei authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    7eef3b4 View commit details
    Browse the repository at this point in the history
  26. drm: hold gem reference until object is no longer accessed

    commit 8490d6a upstream.
    
    A use-after-free in drm_gem_open_ioctl can happen if the
    GEM object handle is closed between the idr lookup and
    retrieving the size from said object since a local reference
    is not being held at that point. Hold the local reference
    while the object can still be accessed to fix this and
    plug the potential security hole.
    
    Signed-off-by: Steve Cohen <cohens@codeaurora.org>
    Cc: stable@vger.kernel.org
    Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
    Link: https://patchwork.freedesktop.org/patch/msgid/1595284250-31580-1-git-send-email-cohens@codeaurora.org
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Steve Cohen authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    6a94284 View commit details
    Browse the repository at this point in the history
  27. rds: Prevent kernel-infoleak in rds_notify_queue_get()

    commit bbc8a99 upstream.
    
    rds_notify_queue_get() is potentially copying uninitialized kernel stack
    memory to userspace since the compiler may leave a 4-byte hole at the end
    of `cmsg`.
    
    In 2016 we tried to fix this issue by doing `= { 0 };` on `cmsg`, which
    unfortunately does not always initialize that 4-byte hole. Fix it by using
    memset() instead.
    
    Cc: stable@vger.kernel.org
    Fixes: f037590 ("rds: fix a leak of kernel memory")
    Fixes: bdbe6fb ("RDS: recv.c")
    Suggested-by: Dan Carpenter <dan.carpenter@oracle.com>
    Signed-off-by: Peilin Ye <yepeilin.cs@gmail.com>
    Acked-by: Santosh Shilimkar <santosh.shilimkar@oracle.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    peilin-ye authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    2ec6949 View commit details
    Browse the repository at this point in the history
  28. libtraceevent: Fix build with binutils 2.35

    commit 39efdd9 upstream.
    
    In binutils 2.35, 'nm -D' changed to show symbol versions along with
    symbol names, with the usual @@ separator.  When generating
    libtraceevent-dynamic-list we need just the names, so strip off the
    version suffix if present.
    
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
    Tested-by: Salvatore Bonaccorso <carnil@debian.org>
    Reviewed-by: Steven Rostedt <rostedt@goodmis.org>
    Cc: linux-trace-devel@vger.kernel.org
    Cc: stable@vger.kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    bwhacks authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    c2fd34d View commit details
    Browse the repository at this point in the history
  29. net/x25: Fix x25_neigh refcnt leak when x25 disconnect

    commit 4becb7e upstream.
    
    x25_connect() invokes x25_get_neigh(), which returns a reference of the
    specified x25_neigh object to "x25->neighbour" with increased refcnt.
    
    When x25 connect success and returns, the reference still be hold by
    "x25->neighbour", so the refcount should be decreased in
    x25_disconnect() to keep refcount balanced.
    
    The reference counting issue happens in x25_disconnect(), which forgets
    to decrease the refcnt increased by x25_get_neigh() in x25_connect(),
    causing a refcnt leak.
    
    Fix this issue by calling x25_neigh_put() before x25_disconnect()
    returns.
    
    Signed-off-by: Xiyu Yang <xiyuyang19@fudan.edu.cn>
    Signed-off-by: Xin Tan <tanxin.ctf@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    sherlly authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    69cd304 View commit details
    Browse the repository at this point in the history
  30. net/x25: Fix null-ptr-deref in x25_disconnect

    commit 8999dc8 upstream.
    
    We should check null before do x25_neigh_put in x25_disconnect,
    otherwise may cause null-ptr-deref like this:
    
     #include <sys/socket.h>
     #include <linux/x25.h>
    
     int main() {
        int sck_x25;
        sck_x25 = socket(AF_X25, SOCK_SEQPACKET, 0);
        close(sck_x25);
        return 0;
     }
    
    BUG: kernel NULL pointer dereference, address: 00000000000000d8
    CPU: 0 PID: 4817 Comm: t2 Not tainted 5.7.0-rc3+ torvalds#159
    Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.9.3-
    RIP: 0010:x25_disconnect+0x91/0xe0
    Call Trace:
     x25_release+0x18a/0x1b0
     __sock_release+0x3d/0xc0
     sock_close+0x13/0x20
     __fput+0x107/0x270
     ____fput+0x9/0x10
     task_work_run+0x6d/0xb0
     exit_to_usermode_loop+0x102/0x110
     do_syscall_64+0x23c/0x260
     entry_SYSCALL_64_after_hwframe+0x49/0xb3
    
    Reported-by: syzbot+6db548b615e5aeefdce2@syzkaller.appspotmail.com
    Fixes: 4becb7e ("net/x25: Fix x25_neigh refcnt leak when x25 disconnect")
    Signed-off-by: YueHaibing <yuehaibing@huawei.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    YueHaibing authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    bbb13ad View commit details
    Browse the repository at this point in the history
  31. xfrm: policy: match with both mark and mask on user interfaces

    [ Upstream commit 4f47e8a ]
    
    In commit ed17b8d ("xfrm: fix a warning in xfrm_policy_insert_list"),
    it would take 'priority' to make a policy unique, and allow duplicated
    policies with different 'priority' to be added, which is not expected
    by userland, as Tobias reported in strongswan.
    
    To fix this duplicated policies issue, and also fix the issue in
    commit ed17b8d ("xfrm: fix a warning in xfrm_policy_insert_list"),
    when doing add/del/get/update on user interfaces, this patch is to change
    to look up a policy with both mark and mask by doing:
    
      mark.v == pol->mark.v && mark.m == pol->mark.m
    
    and leave the check:
    
      (mark & pol->mark.m) == pol->mark.v
    
    for tx/rx path only.
    
    As the userland expects an exact mark and mask match to manage policies.
    
    v1->v2:
      - make xfrm_policy_mark_match inline and fix the changelog as
        Tobias suggested.
    
    Fixes: 295fae5 ("xfrm: Allow user space manipulation of SPD mark")
    Fixes: ed17b8d ("xfrm: fix a warning in xfrm_policy_insert_list")
    Reported-by: Tobias Brunner <tobias@strongswan.org>
    Tested-by: Tobias Brunner <tobias@strongswan.org>
    Signed-off-by: Xin Long <lucien.xin@gmail.com>
    Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    lxin authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    0307da6 View commit details
    Browse the repository at this point in the history
  32. ARM: dts sunxi: Relax a bit the CMA pool allocation range

    [ Upstream commit 92025b9 ]
    
    The hardware codec on the A10, A10s, A13 and A20 needs buffer in the
    first 256MB of RAM. This was solved by setting the CMA pool at a fixed
    address in that range.
    
    However, in recent kernels there's something else that comes in and
    reserve some range that end up conflicting with our default pool
    requirement, and thus makes its reservation fail.
    
    The video codec will then use buffers from the usual default pool,
    outside of the range it can access, and will fail to decode anything.
    
    Since we're only concerned about that 256MB, we can however relax the
    allocation to just specify the range that's allowed, and not try to
    enforce a specific address.
    
    Fixes: 5949bc5 ("ARM: dts: sun4i-a10: Add Video Engine and reserved memory nodes")
    Fixes: 9604320 ("ARM: dts: sun5i: Add Video Engine and reserved memory nodes")
    Fixes: c2a641a ("ARM: dts: sun7i-a20: Add Video Engine and reserved memory nodes")
    Signed-off-by: Maxime Ripard <maxime@cerno.tech>
    Acked-by: Chen-Yu Tsai <wens@csie.org>
    Link: https://lore.kernel.org/r/20200704130829.34297-1-maxime@cerno.tech
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    mripard authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    a4c9028 View commit details
    Browse the repository at this point in the history
  33. xfrm: Fix crash when the hold queue is used.

    [ Upstream commit 101dde4 ]
    
    The commits "xfrm: Move dst->path into struct xfrm_dst"
    and "net: Create and use new helper xfrm_dst_child()."
    changed xfrm bundle handling under the assumption
    that xdst->path and dst->child are not a NULL pointer
    only if dst->xfrm is not a NULL pointer. That is true
    with one exception. If the xfrm hold queue is used
    to wait until a SA is installed by the key manager,
    we create a dummy bundle without a valid dst->xfrm
    pointer. The current xfrm bundle handling crashes
    in that case. Fix this by extending the NULL check
    of dst->xfrm with a test of the DST_XFRM_QUEUE flag.
    
    Fixes: 0f6c480 ("xfrm: Move dst->path into struct xfrm_dst")
    Fixes: b92cf4a ("net: Create and use new helper xfrm_dst_child().")
    Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    klassert authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    731e013 View commit details
    Browse the repository at this point in the history
  34. ARM: dts: armada-38x: fix NETA lockup when repeatedly switching speeds

    [ Upstream commit 09781ba ]
    
    To support the change in "phy: armada-38x: fix NETA lockup when
    repeatedly switching speeds" we need to update the DT with the
    additional register.
    
    Fixes: 14dc100 ("phy: armada38x: add common phy support")
    Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
    Reviewed-by: Andrew Lunn <andrew@lunn.ch>
    Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    Russell King authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    9a1d008 View commit details
    Browse the repository at this point in the history
  35. nvme-tcp: fix possible hang waiting for icresp response

    [ Upstream commit adc99fd ]
    
    If the controller died exactly when we are receiving icresp
    we hang because icresp may never return. Make sure to set a
    high finite limit.
    
    Fixes: 3f2304f ("nvme-tcp: add NVMe over TCP host driver")
    Signed-off-by: Sagi Grimberg <sagi@grimberg.me>
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    sagigrimberg authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    831c904 View commit details
    Browse the repository at this point in the history
  36. selftests/net: rxtimestamp: fix clang issues for target arch PowerPC

    [ Upstream commit 955cbe9 ]
    
    The signedness of char is implementation-dependent. Some systems
    (including PowerPC and ARM) use unsigned char. Clang 9 threw:
    warning: result of comparison of constant -1 with expression of type \
    'char' is always true [-Wtautological-constant-out-of-range-compare]
                                      &arg_index)) != -1) {
    
    Tested: make -C tools/testing/selftests TARGETS="net" run_tests
    
    Fixes: 16e7812 ("selftests/net: Add a test to validate behavior of rx timestamps")
    Signed-off-by: Tanner Love <tannerlove@google.com>
    Acked-by: Willem de Bruijn <willemb@google.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    tannerlove authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    22f84cc View commit details
    Browse the repository at this point in the history
  37. selftests/net: psock_fanout: fix clang issues for target arch PowerPC

    [ Upstream commit 64f9ede ]
    
    Clang 9 threw:
    warning: format specifies type 'unsigned short' but the argument has \
    type 'int' [-Wformat]
                    typeflags, PORT_BASE, PORT_BASE + port_off);
    
    Tested: make -C tools/testing/selftests TARGETS="net" run_tests
    
    Fixes: 77f65eb ("packet: packet fanout rollover during socket overload")
    Signed-off-by: Tanner Love <tannerlove@google.com>
    Acked-by: Willem de Bruijn <willemb@google.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    tannerlove authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    d817b2c View commit details
    Browse the repository at this point in the history
  38. selftests/net: so_txtime: fix clang issues for target arch PowerPC

    [ Upstream commit b4da96f ]
    
    On powerpcle, int64_t maps to long long. Clang 9 threw:
    warning: absolute value function 'labs' given an argument of type \
    'long long' but has parameter of type 'long' which may cause \
    truncation of value [-Wabsolute-value]
            if (labs(tstop - texpect) > cfg_variance_us)
    
    Tested: make -C tools/testing/selftests TARGETS="net" run_tests
    
    Fixes: af5136f ("selftests/net: SO_TXTIME with ETF and FQ")
    Signed-off-by: Tanner Love <tannerlove@google.com>
    Acked-by: Willem de Bruijn <willemb@google.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    tannerlove authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    222dbec View commit details
    Browse the repository at this point in the history
  39. sh/tlb: Fix PGTABLE_LEVELS > 2

    [ Upstream commit c7bcbc8 ]
    
    Geert reported that his SH7722-based Migo-R board failed to boot after
    commit:
    
      c5b27a8 ("sh/tlb: Convert SH to generic mmu_gather")
    
    That commit fell victim to copying the wrong pattern --
    __pmd_free_tlb() used to be implemented with pmd_free().
    
    Fixes: c5b27a8 ("sh/tlb: Convert SH to generic mmu_gather")
    Reported-by: Geert Uytterhoeven <geert@linux-m68k.org>
    Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
    Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
    Tested-by: Geert Uytterhoeven <geert+renesas@glider.be>
    Signed-off-by: Rich Felker <dalias@libc.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    Peter Zijlstra authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    2f26749 View commit details
    Browse the repository at this point in the history
  40. sh: Fix validation of system call number

    [ Upstream commit 04a8a3d ]
    
    The slow path for traced system call entries accessed a wrong memory
    location to get the number of the maximum allowed system call number.
    Renumber the numbered "local" label for the correct location to avoid
    collisions with actual local labels.
    
    Signed-off-by: Michael Karcher <kernel@mkarcher.dialup.fu-berlin.de>
    Tested-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
    Fixes: f3a8308 ("sh: Add a few missing irqflags tracing markers.")
    Signed-off-by: Rich Felker <dalias@libc.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    Michael Karcher authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    5fc02e8 View commit details
    Browse the repository at this point in the history
  41. net: hns3: fix a TX timeout issue

    [ Upstream commit a7e90ee ]
    
    When the queue depth and queue parameters are modified, there is
    a low probability that TX timeout occurs. The two operations cause
    the link to be down or up when the watchdog is still working. All
    queues are stopped when the link is down. After the carrier is on,
    all queues are woken up. If the watchdog detects the link between
    the carrier on and wakeup queues, a false TX timeout occurs.
    
    So fix this issue by modifying the sequence of carrier on and queue
    wakeup, which is symmetrical to the link down action.
    
    Fixes: 76ad4f0 ("net: hns3: Add support of HNS3 Ethernet Driver for hip08 SoC")
    Signed-off-by: Yonglong Liu <liuyonglong@huawei.com>
    Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    liuyonglong86 authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    475b8d6 View commit details
    Browse the repository at this point in the history
  42. net: hns3: fix aRFS FD rules leftover after add a user FD rule

    [ Upstream commit efe3fa4 ]
    
    When user had created a FD rule, all the aRFS rules should be clear up.
    HNS3 process flow as below:
    1.get spin lock of fd_ruls_list
    2.clear up all aRFS rules
    3.release lock
    4.get spin lock of fd_ruls_list
    5.creat a rules
    6.release lock;
    
    There is a short period of time between step 3 and step 4, which would
    creatting some new aRFS FD rules if driver was receiving packet.
    So refactor the fd_rule_lock to fix it.
    
    Fixes: 4412288 ("net: hns3: refine the flow director handle")
    Signed-off-by: Guojia Liao <liaoguojia@huawei.com>
    Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    Guojia Liao authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    d70f9a3 View commit details
    Browse the repository at this point in the history
  43. net/mlx5: E-switch, Destroy TSAR when fail to enable the mode

    [ Upstream commit 2b8e9c7 ]
    
    When either esw_legacy_enable() or esw_offloads_enable() fails,
    code missed to destroy the created TSAR.
    
    Hence, add the missing call to destroy the TSAR.
    
    Fixes: 610090e ("net/mlx5: E-switch, Initialize TSAR Qos hardware block before its user vports")
    Signed-off-by: Parav Pandit <parav@mellanox.com>
    Reviewed-by: Roi Dayan <roid@mellanox.com>
    Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    paravmellanox authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    00bedd7 View commit details
    Browse the repository at this point in the history
  44. net/mlx5e: Fix error path of device attach

    [ Upstream commit 5cd39b6 ]
    
    On failure to attach the netdev, fix the rollback by re-setting the
    device's state back to MLX5E_STATE_DESTROYING.
    
    Failing to attach doesn't stop statistics polling via .ndo_get_stats64.
    In this case, although the device is not attached, it falsely continues
    to query the firmware for counters. Setting the device's state back to
    MLX5E_STATE_DESTROYING prevents the firmware counters query.
    
    Fixes: 26e59d8 ("net/mlx5e: Implement mlx5e interface attach/detach callbacks")
    Signed-off-by: Aya Levin <ayal@mellanox.com>
    Reviewed-by: Tariq Toukan <tariqt@mellanox.com>
    Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ayalevin123 authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    8901896 View commit details
    Browse the repository at this point in the history
  45. net/mlx5: Verify Hardware supports requested ptp function on a given pin

    [ Upstream commit 071995c ]
    
    Fix a bug where driver did not verify Hardware pin capabilities for
    PTP functions.
    
    Fixes: ee7f122 ("net/mlx5e: Implement 1PPS support")
    Signed-off-by: Eran Ben Elisha <eranbe@mellanox.com>
    Reviewed-by: Ariel Levkovich <lariel@mellanox.com>
    Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    Eran Ben Elisha authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    4360837 View commit details
    Browse the repository at this point in the history
  46. net/mlx5e: Modify uplink state on interface up/down

    [ Upstream commit 7d0314b ]
    
    When setting the PF interface up/down, notify the firmware to update
    uplink state via MODIFY_VPORT_STATE, when E-Switch is enabled.
    
    This behavior will prevent sending traffic out on uplink port when PF is
    down, such as sending traffic from a VF interface which is still up.
    Currently when calling mlx5e_open/close(), the driver only sends PAOS
    command to notify the firmware to set the physical port state to
    up/down, however, it is not sufficient. When VF is in "auto" state, it
    follows the uplink state, which was not updated on mlx5e_open/close()
    before this patch.
    
    When switchdev mode is enabled and uplink representor is first enabled,
    set the uplink port state value back to its FW default "AUTO".
    
    Fixes: 63bfd39 ("net/mlx5e: Send PAOS command on interface up/down")
    Signed-off-by: Ron Diskin <rondi@mellanox.com>
    Reviewed-by: Roi Dayan <roid@mellanox.com>
    Reviewed-by: Moshe Shemesh <moshe@mellanox.com>
    Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    Ron Diskin authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    475cbce View commit details
    Browse the repository at this point in the history
  47. net/mlx5e: Fix kernel crash when setting vf VLANID on a VF dev

    [ Upstream commit 350a632 ]
    
    After the cited commit, function 'mlx5_eswitch_set_vport_vlan' started
    to acquire esw->state_lock.
    However, esw is not defined for VF devices, hence attempting to set vf
    VLANID on a VF dev will cause a kernel panic.
    
    Fix it by moving up the (redundant) esw validation from function
    '__mlx5_eswitch_set_vport_vlan' since the rest of the callers now have
    and use a valid esw.
    
    For example with vf device eth4:
     # ip link set dev eth4 vf 0 vlan 0
    
    Trace of the panic:
     [  411.409842] BUG: unable to handle page fault for address: 00000000000011b8
     [  411.449745] #PF: supervisor read access in kernel mode
     [  411.452348] #PF: error_code(0x0000) - not-present page
     [  411.454938] PGD 80000004189c9067 P4D 80000004189c9067 PUD 41899a067 PMD 0
     [  411.458382] Oops: 0000 [#1] SMP PTI
     [  411.460268] CPU: 4 PID: 5711 Comm: ip Not tainted 5.8.0-rc4_for_upstream_min_debug_2020_07_08_22_04 #1
     [  411.462447] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.12.1-0-ga5cab58e9a3f-prebuilt.qemu.org 04/01/2014
     [  411.464158] RIP: 0010:__mutex_lock+0x4e/0x940
     [  411.464928] Code: fd 41 54 49 89 f4 41 52 53 89 d3 48 83 ec 70 44 8b 1d ee 03 b0 01 65 48 8b 04 25 28 00 00 00 48 89 45 c8 31 c0 45 85 db 75 0a <48> 3b 7f 60 0f 85 7e 05 00 00 49 8d 45 68 41 56 41 b8 01 00 00 00
     [  411.467678] RSP: 0018:ffff88841fcd74b0 EFLAGS: 00010246
     [  411.468562] RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000
     [  411.469715] RDX: 0000000000000000 RSI: 0000000000000002 RDI: 0000000000001158
     [  411.470812] RBP: ffff88841fcd7550 R08: ffffffffa00fa1ce R09: 0000000000000000
     [  411.471835] R10: ffff88841fcd7570 R11: 0000000000000000 R12: 0000000000000002
     [  411.472862] R13: 0000000000001158 R14: ffffffffa00fa1ce R15: 0000000000000000
     [  411.474004] FS:  00007faee7ca6b80(0000) GS:ffff88846fc00000(0000) knlGS:0000000000000000
     [  411.475237] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
     [  411.476129] CR2: 00000000000011b8 CR3: 000000041909c006 CR4: 0000000000360ea0
     [  411.477260] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
     [  411.478340] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
     [  411.479332] Call Trace:
     [  411.479760]  ? __nla_validate_parse.part.6+0x57/0x8f0
     [  411.482825]  ? mlx5_eswitch_set_vport_vlan+0x3e/0xa0 [mlx5_core]
     [  411.483804]  mlx5_eswitch_set_vport_vlan+0x3e/0xa0 [mlx5_core]
     [  411.484733]  mlx5e_set_vf_vlan+0x41/0x50 [mlx5_core]
     [  411.485545]  do_setlink+0x613/0x1000
     [  411.486165]  __rtnl_newlink+0x53d/0x8c0
     [  411.486791]  ? mark_held_locks+0x49/0x70
     [  411.487429]  ? __lock_acquire+0x8fe/0x1eb0
     [  411.488085]  ? rcu_read_lock_sched_held+0x52/0x60
     [  411.488998]  ? kmem_cache_alloc_trace+0x16d/0x2d0
     [  411.489759]  rtnl_newlink+0x47/0x70
     [  411.490357]  rtnetlink_rcv_msg+0x24e/0x450
     [  411.490978]  ? netlink_deliver_tap+0x92/0x3d0
     [  411.491631]  ? validate_linkmsg+0x330/0x330
     [  411.492262]  netlink_rcv_skb+0x47/0x110
     [  411.492852]  netlink_unicast+0x1ac/0x270
     [  411.493551]  netlink_sendmsg+0x336/0x450
     [  411.494209]  sock_sendmsg+0x30/0x40
     [  411.494779]  ____sys_sendmsg+0x1dd/0x1f0
     [  411.495378]  ? copy_msghdr_from_user+0x5c/0x90
     [  411.496082]  ___sys_sendmsg+0x87/0xd0
     [  411.496683]  ? lock_acquire+0xb9/0x3a0
     [  411.497322]  ? lru_cache_add+0x5/0x170
     [  411.497944]  ? find_held_lock+0x2d/0x90
     [  411.498568]  ? handle_mm_fault+0xe46/0x18c0
     [  411.499205]  ? __sys_sendmsg+0x51/0x90
     [  411.499784]  __sys_sendmsg+0x51/0x90
     [  411.500341]  do_syscall_64+0x59/0x2e0
     [  411.500938]  ? asm_exc_page_fault+0x8/0x30
     [  411.501609]  ? rcu_read_lock_sched_held+0x52/0x60
     [  411.502350]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
     [  411.503093] RIP: 0033:0x7faee73b85a7
     [  411.503654] Code: Bad RIP value.
    
    Fixes: 0e18134 ("net/mlx5e: Eswitch, use state_lock to synchronize vlan change")
    Signed-off-by: Alaa Hleihel <alaa@mellanox.com>
    Reviewed-by: Roi Dayan <roid@mellanox.com>
    Reviewed-by: Vlad Buslov <vladbu@mellanox.com>
    Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    alaahl authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    32ec444 View commit details
    Browse the repository at this point in the history
  48. net: lan78xx: add missing endpoint sanity check

    [ Upstream commit 8d8e95f ]
    
    Add the missing endpoint sanity check to prevent a NULL-pointer
    dereference should a malicious device lack the expected endpoints.
    
    Note that the driver has a broken endpoint-lookup helper,
    lan78xx_get_endpoints(), which can end up accepting interfaces in an
    altsetting without endpoints as long as *some* altsetting has a bulk-in
    and a bulk-out endpoint.
    
    Fixes: 55d7de9 ("Microchip's LAN7800 family USB 2/3 to 10/100/1000 Ethernet device driver")
    Cc: Woojung.Huh@microchip.com <Woojung.Huh@microchip.com>
    Signed-off-by: Johan Hovold <johan@kernel.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    jhovold authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    9db3040 View commit details
    Browse the repository at this point in the history
  49. net: lan78xx: fix transfer-buffer memory leak

    [ Upstream commit 63634aa ]
    
    The interrupt URB transfer-buffer was never freed on disconnect or after
    probe errors.
    
    Fixes: 55d7de9 ("Microchip's LAN7800 family USB 2/3 to 10/100/1000 Ethernet device driver")
    Cc: Woojung.Huh@microchip.com <Woojung.Huh@microchip.com>
    Signed-off-by: Johan Hovold <johan@kernel.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    jhovold authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    b1d629d View commit details
    Browse the repository at this point in the history
  50. rhashtable: Fix unprotected RCU dereference in __rht_ptr

    [ Upstream commit 1748f6a ]
    
    The rcu_dereference call in rht_ptr_rcu is completely bogus because
    we've already dereferenced the value in __rht_ptr and operated on it.
    This causes potential double readings which could be fatal.  The RCU
    dereference must occur prior to the comparison in __rht_ptr.
    
    This patch changes the order of RCU dereference so that it is done
    first and the result is then fed to __rht_ptr.  The RCU marking
    changes have been minimised using casts which will be removed in
    a follow-up patch.
    
    Fixes: ba6306e ("rhashtable: Remove RCU marking from...")
    Reported-by: "Gong, Sishuai" <sishuai@purdue.edu>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    herbertx authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    c388387 View commit details
    Browse the repository at this point in the history
  51. mlx4: disable device on shutdown

    [ Upstream commit 3cab8c6 ]
    
    It appears that not disabling a PCI device on .shutdown may lead to
    a Hardware Error with particular (perhaps buggy) BIOS versions:
    
        mlx4_en: eth0: Close port called
        mlx4_en 0000:04:00.0: removed PHC
        reboot: Restarting system
        {1}[Hardware Error]: Hardware error from APEI Generic Hardware Error Source: 1
        {1}[Hardware Error]: event severity: fatal
        {1}[Hardware Error]:  Error 0, type: fatal
        {1}[Hardware Error]:   section_type: PCIe error
        {1}[Hardware Error]:   port_type: 4, root port
        {1}[Hardware Error]:   version: 1.16
        {1}[Hardware Error]:   command: 0x4010, status: 0x0143
        {1}[Hardware Error]:   device_id: 0000:00:02.2
        {1}[Hardware Error]:   slot: 0
        {1}[Hardware Error]:   secondary_bus: 0x04
        {1}[Hardware Error]:   vendor_id: 0x8086, device_id: 0x2f06
        {1}[Hardware Error]:   class_code: 000604
        {1}[Hardware Error]:   bridge: secondary_status: 0x2000, control: 0x0003
        {1}[Hardware Error]:   aer_uncor_status: 0x00100000, aer_uncor_mask: 0x00000000
        {1}[Hardware Error]:   aer_uncor_severity: 0x00062030
        {1}[Hardware Error]:   TLP Header: 40000018 040000ff 791f4080 00000000
    [hw error repeats]
        Kernel panic - not syncing: Fatal hardware error!
        CPU: 0 PID: 2189 Comm: reboot Kdump: loaded Not tainted 5.6.x-blabla #1
        Hardware name: HP ProLiant DL380 Gen9/ProLiant DL380 Gen9, BIOS P89 05/05/2017
    
    Fix the mlx4 driver.
    
    This is a very similar problem to what had been fixed in:
    commit 0d98ba8 ("scsi: hpsa: disable device during shutdown")
    to address https://bugzilla.kernel.org/show_bug.cgi?id=199779.
    
    Fixes: 2ba5fbd ("net/mlx4_core: Handle AER flow properly")
    Reported-by: Jake Lawrence <lawja@fb.com>
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    Reviewed-by: Saeed Mahameed <saeedm@mellanox.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    kuba-moo authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    0f424ed View commit details
    Browse the repository at this point in the history
  52. mlxsw: core: Increase scope of RCU read-side critical section

    [ Upstream commit 7d8e8f3 ]
    
    The lifetime of the Rx listener item ('rxl_item') is managed using RCU,
    but is dereferenced outside of RCU read-side critical section, which can
    lead to a use-after-free.
    
    Fix this by increasing the scope of the RCU read-side critical section.
    
    Fixes: 93c1edb ("mlxsw: Introduce Mellanox switch driver core")
    Signed-off-by: Ido Schimmel <idosch@mellanox.com>
    Reviewed-by: Jiri Pirko <jiri@mellanox.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    idosch authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    57f498c View commit details
    Browse the repository at this point in the history
  53. mlxsw: core: Free EMAD transactions using kfree_rcu()

    [ Upstream commit 3c8ce24 ]
    
    The lifetime of EMAD transactions (i.e., 'struct mlxsw_reg_trans') is
    managed using RCU. They are freed using kfree_rcu() once the transaction
    ends.
    
    However, in case the transaction failed it is freed immediately after being
    removed from the active transactions list. This is problematic because it is
    still possible for a different CPU to dereference the transaction from an RCU
    read-side critical section while traversing the active transaction list in
    mlxsw_emad_rx_listener_func(). In which case, a use-after-free is triggered
    [1].
    
    Fix this by freeing the transaction after a grace period by calling
    kfree_rcu().
    
    [1]
    BUG: KASAN: use-after-free in mlxsw_emad_rx_listener_func+0x969/0xac0 drivers/net/ethernet/mellanox/mlxsw/core.c:671
    Read of size 8 at addr ffff88800b7964e8 by task syz-executor.2/2881
    
    CPU: 0 PID: 2881 Comm: syz-executor.2 Not tainted 5.8.0-rc4+ torvalds#44
    Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.12.1-0-ga5cab58e9a3f-prebuilt.qemu.org 04/01/2014
    Call Trace:
     <IRQ>
     __dump_stack lib/dump_stack.c:77 [inline]
     dump_stack+0xf6/0x16e lib/dump_stack.c:118
     print_address_description.constprop.0+0x1c/0x250 mm/kasan/report.c:383
     __kasan_report mm/kasan/report.c:513 [inline]
     kasan_report.cold+0x1f/0x37 mm/kasan/report.c:530
     mlxsw_emad_rx_listener_func+0x969/0xac0 drivers/net/ethernet/mellanox/mlxsw/core.c:671
     mlxsw_core_skb_receive+0x571/0x700 drivers/net/ethernet/mellanox/mlxsw/core.c:2061
     mlxsw_pci_cqe_rdq_handle drivers/net/ethernet/mellanox/mlxsw/pci.c:595 [inline]
     mlxsw_pci_cq_tasklet+0x12a6/0x2520 drivers/net/ethernet/mellanox/mlxsw/pci.c:651
     tasklet_action_common.isra.0+0x13f/0x3e0 kernel/softirq.c:550
     __do_softirq+0x223/0x964 kernel/softirq.c:292
     asm_call_on_stack+0x12/0x20 arch/x86/entry/entry_64.S:711
     </IRQ>
     __run_on_irqstack arch/x86/include/asm/irq_stack.h:22 [inline]
     run_on_irqstack_cond arch/x86/include/asm/irq_stack.h:48 [inline]
     do_softirq_own_stack+0x109/0x140 arch/x86/kernel/irq_64.c:77
     invoke_softirq kernel/softirq.c:387 [inline]
     __irq_exit_rcu kernel/softirq.c:417 [inline]
     irq_exit_rcu+0x16f/0x1a0 kernel/softirq.c:429
     sysvec_apic_timer_interrupt+0x4e/0xd0 arch/x86/kernel/apic/apic.c:1091
     asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:587
    RIP: 0010:arch_local_irq_restore arch/x86/include/asm/irqflags.h:85 [inline]
    RIP: 0010:__raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:160 [inline]
    RIP: 0010:_raw_spin_unlock_irqrestore+0x3b/0x40 kernel/locking/spinlock.c:191
    Code: e8 2a c3 f4 fc 48 89 ef e8 12 96 f5 fc f6 c7 02 75 11 53 9d e8 d6 db 11 fd 65 ff 0d 1f 21 b3 56 5b 5d c3 e8 a7 d7 11 fd 53 9d <eb> ed 0f 1f 00 55 48 89 fd 65 ff 05 05 21 b3 56 ff 74 24 08 48 8d
    RSP: 0018:ffff8880446ffd80 EFLAGS: 00000286
    RAX: 0000000000000006 RBX: 0000000000000286 RCX: 0000000000000006
    RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffffffffa94ecea9
    RBP: ffff888012934408 R08: 0000000000000000 R09: 0000000000000000
    R10: 0000000000000001 R11: fffffbfff57be301 R12: 1ffff110088dffc1
    R13: ffff888037b817c0 R14: ffff88802442415a R15: ffff888024424000
     __do_sys_perf_event_open+0x1b5d/0x2bd0 kernel/events/core.c:11874
     do_syscall_64+0x56/0xa0 arch/x86/entry/common.c:384
     entry_SYSCALL_64_after_hwframe+0x44/0xa9
    RIP: 0033:0x473dbd
    Code: Bad RIP value.
    RSP: 002b:00007f21e5e9cc28 EFLAGS: 00000246 ORIG_RAX: 000000000000012a
    RAX: ffffffffffffffda RBX: 000000000057bf00 RCX: 0000000000473dbd
    RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000020000040
    RBP: 000000000057bf00 R08: 0000000000000000 R09: 0000000000000000
    R10: 0000000000000003 R11: 0000000000000246 R12: 000000000057bf0c
    R13: 00007ffd0493503f R14: 00000000004d0f46 R15: 00007f21e5e9cd80
    
    Allocated by task 871:
     save_stack+0x1b/0x40 mm/kasan/common.c:48
     set_track mm/kasan/common.c:56 [inline]
     __kasan_kmalloc mm/kasan/common.c:494 [inline]
     __kasan_kmalloc.constprop.0+0xc2/0xd0 mm/kasan/common.c:467
     kmalloc include/linux/slab.h:555 [inline]
     kzalloc include/linux/slab.h:669 [inline]
     mlxsw_core_reg_access_emad+0x70/0x1410 drivers/net/ethernet/mellanox/mlxsw/core.c:1812
     mlxsw_core_reg_access+0xeb/0x540 drivers/net/ethernet/mellanox/mlxsw/core.c:1991
     mlxsw_sp_port_get_hw_xstats+0x335/0x7e0 drivers/net/ethernet/mellanox/mlxsw/spectrum.c:1130
     update_stats_cache+0xf4/0x140 drivers/net/ethernet/mellanox/mlxsw/spectrum.c:1173
     process_one_work+0xa3e/0x17a0 kernel/workqueue.c:2269
     worker_thread+0x9e/0x1050 kernel/workqueue.c:2415
     kthread+0x355/0x470 kernel/kthread.c:291
     ret_from_fork+0x22/0x30 arch/x86/entry/entry_64.S:293
    
    Freed by task 871:
     save_stack+0x1b/0x40 mm/kasan/common.c:48
     set_track mm/kasan/common.c:56 [inline]
     kasan_set_free_info mm/kasan/common.c:316 [inline]
     __kasan_slab_free+0x12c/0x170 mm/kasan/common.c:455
     slab_free_hook mm/slub.c:1474 [inline]
     slab_free_freelist_hook mm/slub.c:1507 [inline]
     slab_free mm/slub.c:3072 [inline]
     kfree+0xe6/0x320 mm/slub.c:4052
     mlxsw_core_reg_access_emad+0xd45/0x1410 drivers/net/ethernet/mellanox/mlxsw/core.c:1819
     mlxsw_core_reg_access+0xeb/0x540 drivers/net/ethernet/mellanox/mlxsw/core.c:1991
     mlxsw_sp_port_get_hw_xstats+0x335/0x7e0 drivers/net/ethernet/mellanox/mlxsw/spectrum.c:1130
     update_stats_cache+0xf4/0x140 drivers/net/ethernet/mellanox/mlxsw/spectrum.c:1173
     process_one_work+0xa3e/0x17a0 kernel/workqueue.c:2269
     worker_thread+0x9e/0x1050 kernel/workqueue.c:2415
     kthread+0x355/0x470 kernel/kthread.c:291
     ret_from_fork+0x22/0x30 arch/x86/entry/entry_64.S:293
    
    The buggy address belongs to the object at ffff88800b796400
     which belongs to the cache kmalloc-512 of size 512
    The buggy address is located 232 bytes inside of
     512-byte region [ffff88800b796400, ffff88800b796600)
    The buggy address belongs to the page:
    page:ffffea00002de500 refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 head:ffffea00002de500 order:2 compound_mapcount:0 compound_pincount:0
    flags: 0x100000000010200(slab|head)
    raw: 0100000000010200 dead000000000100 dead000000000122 ffff88806c402500
    raw: 0000000000000000 0000000000100010 00000001ffffffff 0000000000000000
    page dumped because: kasan: bad access detected
    
    Memory state around the buggy address:
     ffff88800b796380: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
     ffff88800b796400: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
    >ffff88800b796480: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
                                                              ^
     ffff88800b796500: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
     ffff88800b796580: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
    
    Fixes: caf7297 ("mlxsw: core: Introduce support for asynchronous EMAD register access")
    Signed-off-by: Ido Schimmel <idosch@mellanox.com>
    Reviewed-by: Jiri Pirko <jiri@mellanox.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    idosch authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    ea55913 View commit details
    Browse the repository at this point in the history
  54. ibmvnic: Fix IRQ mapping disposal in error path

    [ Upstream commit 27a2145 ]
    
    RX queue IRQ mappings are disposed in both the TX IRQ and RX IRQ
    error paths. Fix this and dispose of TX IRQ mappings correctly in
    case of an error.
    
    Fixes: ea22d51 ("ibmvnic: simplify and improve driver probe function")
    Signed-off-by: Thomas Falcon <tlfalcon@linux.ibm.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    tlfalcon authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    43c390b View commit details
    Browse the repository at this point in the history
  55. bpf: Fix map leak in HASH_OF_MAPS map

    [ Upstream commit 1d4e1ea ]
    
    Fix HASH_OF_MAPS bug of not putting inner map pointer on bpf_map_elem_update()
    operation. This is due to per-cpu extra_elems optimization, which bypassed
    free_htab_elem() logic doing proper clean ups. Make sure that inner map is put
    properly in optimized case as well.
    
    Fixes: 8c290e6 ("bpf: fix hashmap extra_elems logic")
    Signed-off-by: Andrii Nakryiko <andriin@fb.com>
    Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
    Acked-by: Song Liu <songliubraving@fb.com>
    Link: https://lore.kernel.org/bpf/20200729040913.2815687-1-andriin@fb.com
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    anakryiko authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    fe58e3d View commit details
    Browse the repository at this point in the history
  56. mac80211: mesh: Free ie data when leaving mesh

    [ Upstream commit 6a01afc ]
    
    At ieee80211_join_mesh() some ie data could have been allocated (see
    copy_mesh_setup()) and need to be cleaned up when leaving the mesh.
    
    This fixes the following kmemleak report:
    
    unreferenced object 0xffff0000116bc600 (size 128):
      comm "wpa_supplicant", pid 608, jiffies 4294898983 (age 293.484s)
      hex dump (first 32 bytes):
        30 14 01 00 00 0f ac 04 01 00 00 0f ac 04 01 00  0...............
        00 0f ac 08 00 00 00 00 c4 65 40 00 00 00 00 00  .........e@.....
      backtrace:
        [<00000000bebe439d>] __kmalloc_track_caller+0x1c0/0x330
        [<00000000a349dbe1>] kmemdup+0x28/0x50
        [<0000000075d69baa>] ieee80211_join_mesh+0x6c/0x3b8 [mac80211]
        [<00000000683bb98b>] __cfg80211_join_mesh+0x1e8/0x4f0 [cfg80211]
        [<0000000072cb507f>] nl80211_join_mesh+0x520/0x6b8 [cfg80211]
        [<0000000077e9bcf9>] genl_family_rcv_msg+0x374/0x680
        [<00000000b1bd936d>] genl_rcv_msg+0x78/0x108
        [<0000000022c53788>] netlink_rcv_skb+0xb0/0x1c0
        [<0000000011af8ec9>] genl_rcv+0x34/0x48
        [<0000000069e41f53>] netlink_unicast+0x268/0x2e8
        [<00000000a7517316>] netlink_sendmsg+0x320/0x4c0
        [<0000000069cba205>] ____sys_sendmsg+0x354/0x3a0
        [<00000000e06bab0f>] ___sys_sendmsg+0xd8/0x120
        [<0000000037340728>] __sys_sendmsg+0xa4/0xf8
        [<000000004fed9776>] __arm64_sys_sendmsg+0x44/0x58
        [<000000001c1e5647>] el0_svc_handler+0xd0/0x1a0
    
    Fixes: c80d545 (mac80211: Let userspace enable and configure vendor specific path selection.)
    Signed-off-by: Remi Pommarel <repk@triplefau.lt>
    Link: https://lore.kernel.org/r/20200704135007.27292-1-repk@triplefau.lt
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    repk authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    3f15e3e View commit details
    Browse the repository at this point in the history
  57. mac80211: mesh: Free pending skb when destroying a mpath

    [ Upstream commit 5e43540 ]
    
    A mpath object can hold reference on a list of skb that are waiting for
    mpath resolution to be sent. When destroying a mpath this skb list
    should be cleaned up in order to not leak memory.
    
    Fixing that kind of leak:
    
    unreferenced object 0xffff0000181c9300 (size 1088):
      comm "openvpn", pid 1782, jiffies 4295071698 (age 80.416s)
      hex dump (first 32 bytes):
        00 00 00 00 00 00 00 00 f9 80 36 00 00 00 00 00  ..........6.....
        02 00 07 40 00 00 00 00 00 00 00 00 00 00 00 00  ...@............
      backtrace:
        [<000000004bc6a443>] kmem_cache_alloc+0x1a4/0x2f0
        [<000000002caaef13>] sk_prot_alloc.isra.39+0x34/0x178
        [<00000000ceeaa916>] sk_alloc+0x34/0x228
        [<00000000ca1f1d04>] inet_create+0x198/0x518
        [<0000000035626b1c>] __sock_create+0x134/0x328
        [<00000000a12b3a87>] __sys_socket+0xb0/0x158
        [<00000000ff859f23>] __arm64_sys_socket+0x40/0x58
        [<00000000263486ec>] el0_svc_handler+0xd0/0x1a0
        [<0000000005b5157d>] el0_svc+0x8/0xc
    unreferenced object 0xffff000012973a40 (size 216):
      comm "openvpn", pid 1782, jiffies 4295082137 (age 38.660s)
      hex dump (first 32 bytes):
        00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
        00 c0 06 16 00 00 ff ff 00 93 1c 18 00 00 ff ff  ................
      backtrace:
        [<000000004bc6a443>] kmem_cache_alloc+0x1a4/0x2f0
        [<0000000023c8c8f9>] __alloc_skb+0xc0/0x2b8
        [<000000007ad950bb>] alloc_skb_with_frags+0x60/0x320
        [<00000000ef90023a>] sock_alloc_send_pskb+0x388/0x3c0
        [<00000000104fb1a3>] sock_alloc_send_skb+0x1c/0x28
        [<000000006919d2dd>] __ip_append_data+0xba4/0x11f0
        [<0000000083477587>] ip_make_skb+0x14c/0x1a8
        [<0000000024f3d592>] udp_sendmsg+0xaf0/0xcf0
        [<000000005aabe255>] inet_sendmsg+0x5c/0x80
        [<000000008651ea08>] __sys_sendto+0x15c/0x218
        [<000000003505c99b>] __arm64_sys_sendto+0x74/0x90
        [<00000000263486ec>] el0_svc_handler+0xd0/0x1a0
        [<0000000005b5157d>] el0_svc+0x8/0xc
    
    Fixes: 2bdaf38 (mac80211: mesh: move path tables into if_mesh)
    Signed-off-by: Remi Pommarel <repk@triplefau.lt>
    Link: https://lore.kernel.org/r/20200704135419.27703-1-repk@triplefau.lt
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    repk authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    4a50753 View commit details
    Browse the repository at this point in the history
  58. arm64/alternatives: move length validation inside the subsection

    [ Upstream commit 966a0ac ]
    
    Commit f7b93d4 ("arm64/alternatives: use subsections for replacement
    sequences") breaks LLVM's integrated assembler, because due to its
    one-pass design, it cannot compute instruction sequence lengths before the
    layout for the subsection has been finalized. This change fixes the build
    by moving the .org directives inside the subsection, so they are processed
    after the subsection layout is known.
    
    Fixes: f7b93d4 ("arm64/alternatives: use subsections for replacement sequences")
    Signed-off-by: Sami Tolvanen <samitolvanen@google.com>
    Link: ClangBuiltLinux#1078
    Link: https://lore.kernel.org/r/20200730153701.3892953-1-samitolvanen@google.com
    Signed-off-by: Will Deacon <will@kernel.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    samitolvanen authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    8a90b43 View commit details
    Browse the repository at this point in the history
  59. arm64: csum: Fix handling of bad packets

    [ Upstream commit 05fb3db ]
    
    Although iph is expected to point to at least 20 bytes of valid memory,
    ihl may be bogus, for example on reception of a corrupt packet. If it
    happens to be less than 5, we really don't want to run away and
    dereference 16GB worth of memory until it wraps back to exactly zero...
    
    Fixes: 0e455d8 ("arm64: Implement optimised IP checksum helpers")
    Reported-by: guodeqing <geffrey.guo@huawei.com>
    Signed-off-by: Robin Murphy <robin.murphy@arm.com>
    Signed-off-by: Will Deacon <will@kernel.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    rmurphy-arm authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    3bb2f52 View commit details
    Browse the repository at this point in the history
  60. Bluetooth: fix kernel oops in store_pending_adv_report

    [ Upstream commit a2ec905 ]
    
    Fix kernel oops observed when an ext adv data is larger than 31 bytes.
    
    This can be reproduced by setting up an advertiser with advertisement
    larger than 31 bytes.  The issue is not sensitive to the advertisement
    content.  In particular, this was reproduced with an advertisement of
    229 bytes filled with 'A'.  See stack trace below.
    
    This is fixed by not catching ext_adv as legacy adv are only cached to
    be able to concatenate a scanable adv with its scan response before
    sending it up through mgmt.
    
    With ext_adv, this is no longer necessary.
    
      general protection fault: 0000 [#1] SMP PTI
      CPU: 6 PID: 205 Comm: kworker/u17:0 Not tainted 5.4.0-37-generic torvalds#41-Ubuntu
      Hardware name: Dell Inc. XPS 15 7590/0CF6RR, BIOS 1.7.0 05/11/2020
      Workqueue: hci0 hci_rx_work [bluetooth]
      RIP: 0010:hci_bdaddr_list_lookup+0x1e/0x40 [bluetooth]
      Code: ff ff e9 26 ff ff ff 0f 1f 44 00 00 0f 1f 44 00 00 55 48 8b 07 48 89 e5 48 39 c7 75 0a eb 24 48 8b 00 48 39 f8 74 1c 44 8b 06 <44> 39 40 10 75 ef 44 0f b7 4e 04 66 44 39 48 14 75 e3 38 50 16 75
      RSP: 0018:ffffbc6a40493c70 EFLAGS: 00010286
      RAX: 4141414141414141 RBX: 000000000000001b RCX: 0000000000000000
      RDX: 0000000000000000 RSI: ffff9903e76c100f RDI: ffff9904289d4b28
      RBP: ffffbc6a40493c70 R08: 0000000093570362 R09: 0000000000000000
      R10: 0000000000000000 R11: ffff9904344eae38 R12: ffff9904289d4000
      R13: 0000000000000000 R14: 00000000ffffffa3 R15: ffff9903e76c100f
      FS: 0000000000000000(0000) GS:ffff990434580000(0000) knlGS:0000000000000000
      CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      CR2: 00007feed125a000 CR3: 00000001b860a003 CR4: 00000000003606e0
      Call Trace:
        process_adv_report+0x12e/0x560 [bluetooth]
        hci_le_meta_evt+0x7b2/0xba0 [bluetooth]
        hci_event_packet+0x1c29/0x2a90 [bluetooth]
        hci_rx_work+0x19b/0x360 [bluetooth]
        process_one_work+0x1eb/0x3b0
        worker_thread+0x4d/0x400
        kthread+0x104/0x140
    
    Fixes: c215e93 ("Bluetooth: Process extended ADV report event")
    Reported-by: Andy Nguyen <theflow@google.com>
    Reported-by: Linus Torvalds <torvalds@linux-foundation.org>
    Reported-by: Balakrishna Godavarthi <bgodavar@codeaurora.org>
    Signed-off-by: Alain Michaud <alainm@chromium.org>
    Tested-by: Sonny Sasaka <sonnysasaka@chromium.org>
    Acked-by: Marcel Holtmann <marcel@holtmann.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    Alain Michaud authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    9acd96f View commit details
    Browse the repository at this point in the history
  61. net: nixge: fix potential memory leak in nixge_probe()

    [ Upstream commit 366228e ]
    
    If some processes in nixge_probe() fail, free_netdev(dev)
    needs to be called to aviod a memory leak.
    
    Fixes: 87ab207 ("net: nixge: Separate ctrl and dma resources")
    Fixes: abcd3d6 ("net: nixge: Fix error path for obtaining mac address")
    Reported-by: Hulk Robot <hulkci@huawei.com>
    Signed-off-by: Lu Wei <luwei32@huawei.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    Lu Wei authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    1158aa7 View commit details
    Browse the repository at this point in the history
  62. net: gemini: Fix missing clk_disable_unprepare() in error path of gem…

    …ini_ethernet_port_probe()
    
    [ Upstream commit 85496a2 ]
    
    Fix the missing clk_disable_unprepare() before return
    from gemini_ethernet_port_probe() in the error handling case.
    
    Fixes: 4d5ae32 ("net: ethernet: Add a driver for Gemini gigabit ethernet")
    Reported-by: Hulk Robot <hulkci@huawei.com>
    Signed-off-by: Wang Hai <wanghai38@huawei.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    Wang Hai authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    e68b7b9 View commit details
    Browse the repository at this point in the history
  63. net/mlx5e: fix bpf_prog reference count leaks in mlx5e_alloc_rq

    [ Upstream commit e692139 ]
    
    The function invokes bpf_prog_inc(), which increases the reference
    count of a bpf_prog object "rq->xdp_prog" if the object isn't NULL.
    
    The refcount leak issues take place in two error handling paths. When
    either mlx5_wq_ll_create() or mlx5_wq_cyc_create() fails, the function
    simply returns the error code and forgets to drop the reference count
    increased earlier, causing a reference count leak of "rq->xdp_prog".
    
    Fix this issue by jumping to the error handling path err_rq_wq_destroy
    while either function fails.
    
    Fixes: 422d4c4 ("net/mlx5e: RX, Split WQ objects for different RQ types")
    Signed-off-by: Xin Xiong <xiongx18@fudan.edu.cn>
    Signed-off-by: Xiyu Yang <xiyuyang19@fudan.edu.cn>
    Signed-off-by: Xin Tan <tanxin.ctf@gmail.com>
    Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    Conchy-Conchy authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    568995f View commit details
    Browse the repository at this point in the history
  64. perf tools: Fix record failure when mixed with ARM SPE event

    [ Upstream commit bd3c628 ]
    
    When recording with cache-misses and arm_spe_x event, I found that it
    will just fail without showing any error info if i put cache-misses
    after 'arm_spe_x' event.
    
      [root@localhost 0620]# perf record -e cache-misses \
    				-e arm_spe_0/ts_enable=1,pct_enable=1,pa_enable=1,load_filter=1,jitter=1,store_filter=1,min_latency=0/ sleep 1
      [ perf record: Woken up 1 times to write data ]
      [ perf record: Captured and wrote 0.067 MB perf.data ]
      [root@localhost 0620]#
      [root@localhost 0620]# perf record -e arm_spe_0/ts_enable=1,pct_enable=1,pa_enable=1,load_filter=1,jitter=1,store_filter=1,min_latency=0/ \
    				     -e  cache-misses sleep 1
      [root@localhost 0620]#
    
    The current code can only work if the only event to be traced is an
    'arm_spe_x', or if it is the last event to be specified. Otherwise the
    last event type will be checked against all the arm_spe_pmus[i]->types,
    none will match and an out of bound 'i' index will be used in
    arm_spe_recording_init().
    
    We don't support concurrent multiple arm_spe_x events currently, that
    is checked in arm_spe_recording_options(), and it will show the relevant
    info. So add the check and record of the first found 'arm_spe_pmu' to
    fix this issue here.
    
    Fixes: ffd3d18 ("perf tools: Add ARM Statistical Profiling Extensions (SPE) support")
    Signed-off-by: Wei Li <liwei391@huawei.com>
    Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org>
    Tested-by-by: Leo Yan <leo.yan@linaro.org>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: Hanjun Guo <guohanjun@huawei.com>
    Cc: Jiri Olsa <jolsa@redhat.com>
    Cc: Kim Phillips <kim.phillips@arm.com>
    Cc: Mark Rutland <mark.rutland@arm.com>
    Cc: Mike Leach <mike.leach@linaro.org>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Suzuki Poulouse <suzuki.poulose@arm.com>
    Cc: linux-arm-kernel@lists.infradead.org
    Link: http://lore.kernel.org/lkml/20200724071111.35593-2-liwei391@huawei.com
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    stkid authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    1df0000 View commit details
    Browse the repository at this point in the history
  65. vxlan: fix memleak of fdb

    [ Upstream commit fda2ec6 ]
    
    When vxlan interface is deleted, all fdbs are deleted by vxlan_flush().
    vxlan_flush() flushes fdbs but it doesn't delete fdb, which contains
    all-zeros-mac because it is deleted by vxlan_uninit().
    But vxlan_uninit() deletes only the fdb, which contains both all-zeros-mac
    and default vni.
    So, the fdb, which contains both all-zeros-mac and non-default vni
    will not be deleted.
    
    Test commands:
        ip link add vxlan0 type vxlan dstport 4789 external
        ip link set vxlan0 up
        bridge fdb add to 00:00:00:00:00:00 dst 172.0.0.1 dev vxlan0 via lo \
    	    src_vni 10000 self permanent
        ip link del vxlan0
    
    kmemleak reports as follows:
    unreferenced object 0xffff9486b25ced88 (size 96):
      comm "bridge", pid 2151, jiffies 4294701712 (age 35506.901s)
      hex dump (first 32 bytes):
        02 00 00 00 ac 00 00 01 40 00 09 b1 86 94 ff ff  ........@.......
        46 02 00 00 00 00 00 00 a7 03 00 00 12 b5 6a 6b  F.............jk
      backtrace:
        [<00000000c10cf651>] vxlan_fdb_append.part.51+0x3c/0xf0 [vxlan]
        [<000000006b31a8d9>] vxlan_fdb_create+0x184/0x1a0 [vxlan]
        [<0000000049399045>] vxlan_fdb_update+0x12f/0x220 [vxlan]
        [<0000000090b1ef00>] vxlan_fdb_add+0x12a/0x1b0 [vxlan]
        [<0000000056633c2c>] rtnl_fdb_add+0x187/0x270
        [<00000000dd5dfb6b>] rtnetlink_rcv_msg+0x264/0x490
        [<00000000fc44dd54>] netlink_rcv_skb+0x4a/0x110
        [<00000000dff433e7>] netlink_unicast+0x18e/0x250
        [<00000000b87fb421>] netlink_sendmsg+0x2e9/0x400
        [<000000002ed55153>] ____sys_sendmsg+0x237/0x260
        [<00000000faa51c66>] ___sys_sendmsg+0x88/0xd0
        [<000000006c3982f1>] __sys_sendmsg+0x4e/0x80
        [<00000000a8f875d2>] do_syscall_64+0x56/0xe0
        [<000000003610eefa>] entry_SYSCALL_64_after_hwframe+0x44/0xa9
    unreferenced object 0xffff9486b1c40080 (size 128):
      comm "bridge", pid 2157, jiffies 4294701754 (age 35506.866s)
      hex dump (first 32 bytes):
        00 00 00 00 00 00 00 00 f8 dc 42 b2 86 94 ff ff  ..........B.....
        6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b  kkkkkkkkkkkkkkkk
      backtrace:
        [<00000000a2981b60>] vxlan_fdb_create+0x67/0x1a0 [vxlan]
        [<0000000049399045>] vxlan_fdb_update+0x12f/0x220 [vxlan]
        [<0000000090b1ef00>] vxlan_fdb_add+0x12a/0x1b0 [vxlan]
        [<0000000056633c2c>] rtnl_fdb_add+0x187/0x270
        [<00000000dd5dfb6b>] rtnetlink_rcv_msg+0x264/0x490
        [<00000000fc44dd54>] netlink_rcv_skb+0x4a/0x110
        [<00000000dff433e7>] netlink_unicast+0x18e/0x250
        [<00000000b87fb421>] netlink_sendmsg+0x2e9/0x400
        [<000000002ed55153>] ____sys_sendmsg+0x237/0x260
        [<00000000faa51c66>] ___sys_sendmsg+0x88/0xd0
        [<000000006c3982f1>] __sys_sendmsg+0x4e/0x80
        [<00000000a8f875d2>] do_syscall_64+0x56/0xe0
        [<000000003610eefa>] entry_SYSCALL_64_after_hwframe+0x44/0xa9
    
    Fixes: 3ad7a4b ("vxlan: support fdb and learning in COLLECT_METADATA mode")
    Signed-off-by: Taehee Yoo <ap420073@gmail.com>
    Acked-by: Roopa Prabhu <roopa@cumulusnetworks.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    TaeheeYoo authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    cac2b7a View commit details
    Browse the repository at this point in the history
  66. usb: hso: Fix debug compile warning on sparc32

    [ Upstream commit e048401 ]
    
    On sparc32, tcflag_t is "unsigned long", unlike on all other
    architectures, where it is "unsigned int":
    
        drivers/net/usb/hso.c: In function ‘hso_serial_set_termios’:
        include/linux/kern_levels.h:5:18: warning: format ‘%d’ expects argument of type ‘unsigned int’, but argument 4 has type ‘tcflag_t {aka long unsigned int}’ [-Wformat=]
        drivers/net/usb/hso.c:1393:3: note: in expansion of macro ‘hso_dbg’
           hso_dbg(0x16, "Termios called with: cflags new[%d] - old[%d]\n",
           ^~~~~~~
        include/linux/kern_levels.h:5:18: warning: format ‘%d’ expects argument of type ‘unsigned int’, but argument 5 has type ‘tcflag_t {aka long unsigned int}’ [-Wformat=]
        drivers/net/usb/hso.c:1393:3: note: in expansion of macro ‘hso_dbg’
           hso_dbg(0x16, "Termios called with: cflags new[%d] - old[%d]\n",
           ^~~~~~~
    
    As "unsigned long" is 32-bit on sparc32, fix this by casting all tcflag_t
    parameters to "unsigned int".
    While at it, use "%u" to format unsigned numbers.
    
    Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    geertu authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    5b235c1 View commit details
    Browse the repository at this point in the history
  67. selftests: fib_nexthop_multiprefix: fix cleanup() netns deletion

    [ Upstream commit 651149f ]
    
    During setup():
    ...
            for ns in h0 r1 h1 h2 h3
            do
                    create_ns ${ns}
            done
    ...
    
    while in cleanup():
    ...
            for n in h1 r1 h2 h3 h4
            do
                    ip netns del ${n} 2>/dev/null
            done
    ...
    
    and after removing the stderr redirection in cleanup():
    
    $ sudo ./fib_nexthop_multiprefix.sh
    ...
    TEST: IPv4: host 0 to host 3, mtu 1400                              [ OK ]
    TEST: IPv6: host 0 to host 3, mtu 1400                              [ OK ]
    Cannot remove namespace file "/run/netns/h4": No such file or directory
    $ echo $?
    1
    
    and a non-zero return code, make kselftests fail (even if the test
    itself is fine):
    
    ...
    not ok 34 selftests: net: fib_nexthop_multiprefix.sh # exit=1
    ...
    
    Signed-off-by: Paolo Pisati <paolo.pisati@canonical.com>
    Reviewed-by: David Ahern <dsahern@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    piso77 authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    6e4620d View commit details
    Browse the repository at this point in the history
  68. qed: Disable "MFW indication via attention" SPAM every 5 minutes

    [ Upstream commit 1d61e21 ]
    
    This is likely firmware causing this but its starting to annoy customers.
    Change the message level to verbose to prevent the spam.
    Note that this seems to only show up with ISCSI enabled on the HBA via the
    qedi driver.
    
    Signed-off-by: Laurence Oberman <loberman@redhat.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    loberman authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    78c7532 View commit details
    Browse the repository at this point in the history
  69. selftests: net: ip_defrag: modprobe missing nf_defrag_ipv6 support

    [ Upstream commit aba69d4 ]
    
    Fix ip_defrag.sh when CONFIG_NF_DEFRAG_IPV6=m:
    
    $ sudo ./ip_defrag.sh
    + set -e
    + mktemp -u XXXXXX
    + readonly NETNS=ns-rGlXcw
    + trap cleanup EXIT
    + setup
    + ip netns add ns-rGlXcw
    + ip -netns ns-rGlXcw link set lo up
    + ip netns exec ns-rGlXcw sysctl -w net.ipv4.ipfrag_high_thresh=9000000
    + ip netns exec ns-rGlXcw sysctl -w net.ipv4.ipfrag_low_thresh=7000000
    + ip netns exec ns-rGlXcw sysctl -w net.ipv4.ipfrag_time=1
    + ip netns exec ns-rGlXcw sysctl -w net.ipv6.ip6frag_high_thresh=9000000
    + ip netns exec ns-rGlXcw sysctl -w net.ipv6.ip6frag_low_thresh=7000000
    + ip netns exec ns-rGlXcw sysctl -w net.ipv6.ip6frag_time=1
    + ip netns exec ns-rGlXcw sysctl -w net.netfilter.nf_conntrack_frag6_high_thresh=9000000
    + cleanup
    + ip netns del ns-rGlXcw
    
    $ ls -la /proc/sys/net/netfilter/nf_conntrack_frag6_high_thresh
    ls: cannot access '/proc/sys/net/netfilter/nf_conntrack_frag6_high_thresh': No such file or directory
    
    $ sudo modprobe nf_defrag_ipv6
    $ ls -la /proc/sys/net/netfilter/nf_conntrack_frag6_high_thresh
    -rw-r--r-- 1 root root 0 Jul 14 12:34 /proc/sys/net/netfilter/nf_conntrack_frag6_high_thresh
    
    Signed-off-by: Paolo Pisati <paolo.pisati@canonical.com>
    Reviewed-by: Jakub Kicinski <kuba@kernel.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    piso77 authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    50c5f89 View commit details
    Browse the repository at this point in the history
  70. nfc: s3fwrn5: add missing release on skb in s3fwrn5_recv_frame

    [ Upstream commit 1e8fd3a ]
    
    The implementation of s3fwrn5_recv_frame() is supposed to consume skb on
    all execution paths. Release skb before returning -ENODEV.
    
    Signed-off-by: Navid Emamdoost <navid.emamdoost@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    Navidem authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    0ac155d View commit details
    Browse the repository at this point in the history
  71. scsi: core: Run queue in case of I/O resource contention failure

    [ Upstream commit 3f0dcfb ]
    
    I/O requests may be held in scheduler queue because of resource contention.
    The starvation scenario was handled properly in the regular completion
    path but we failed to account for it during I/O submission. This lead to
    the hang captured below. Make sure we run the queue when resource
    contention is encountered in the submission path.
    
    [   39.054963] scsi 13:0:0:0: rejecting I/O to dead device
    [   39.058700] scsi 13:0:0:0: rejecting I/O to dead device
    [   39.087855] sd 13:0:0:1: [sdd] Synchronizing SCSI cache
    [   39.088909] scsi 13:0:0:1: rejecting I/O to dead device
    [   39.095351] scsi 13:0:0:1: rejecting I/O to dead device
    [   39.096962] scsi 13:0:0:1: rejecting I/O to dead device
    [  247.021859] INFO: task scsi-stress-rem:813 blocked for more than 122 seconds.
    [  247.023258]       Not tainted 5.8.0-rc2 #8
    [  247.024069] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
    [  247.025331] scsi-stress-rem D    0   813    802 0x00004000
    [  247.025334] Call Trace:
    [  247.025354]  __schedule+0x504/0x55f
    [  247.027987]  schedule+0x72/0xa8
    [  247.027991]  blk_mq_freeze_queue_wait+0x63/0x8c
    [  247.027994]  ? do_wait_intr_irq+0x7a/0x7a
    [  247.027996]  blk_cleanup_queue+0x4b/0xc9
    [  247.028000]  __scsi_remove_device+0xf6/0x14e
    [  247.028002]  scsi_remove_device+0x21/0x2b
    [  247.029037]  sdev_store_delete+0x58/0x7c
    [  247.029041]  kernfs_fop_write+0x10d/0x14f
    [  247.031281]  vfs_write+0xa2/0xdf
    [  247.032670]  ksys_write+0x6b/0xb3
    [  247.032673]  do_syscall_64+0x56/0x82
    [  247.034053]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
    [  247.034059] RIP: 0033:0x7f69f39e9008
    [  247.036330] Code: Bad RIP value.
    [  247.036331] RSP: 002b:00007ffdd8116498 EFLAGS: 00000246 ORIG_RAX: 0000000000000001
    [  247.037613] RAX: ffffffffffffffda RBX: 0000000000000002 RCX: 00007f69f39e9008
    [  247.039714] RDX: 0000000000000002 RSI: 000055cde92a0ab0 RDI: 0000000000000001
    [  247.039715] RBP: 000055cde92a0ab0 R08: 000000000000000a R09: 00007f69f3a79e80
    [  247.039716] R10: 000000000000000a R11: 0000000000000246 R12: 00007f69f3abb780
    [  247.039717] R13: 0000000000000002 R14: 00007f69f3ab6740 R15: 0000000000000002
    
    Link: https://lore.kernel.org/r/20200720025435.812030-1-ming.lei@redhat.com
    Cc: linux-block@vger.kernel.org
    Cc: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Bart Van Assche <bvanassche@acm.org>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Signed-off-by: Ming Lei <ming.lei@redhat.com>
    Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    Ming Lei authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    a0ba413 View commit details
    Browse the repository at this point in the history
  72. parisc: add support for cmpxchg on u8 pointers

    [ Upstream commit b344d6a ]
    
    The kernel test bot reported[1] that using set_mask_bits on a u8 causes
    the following issue on parisc:
    
    	hppa-linux-ld: drivers/phy/ti/phy-tusb1210.o: in function `tusb1210_probe':
    	>> (.text+0x2f4): undefined reference to `__cmpxchg_called_with_bad_pointer'
    	>> hppa-linux-ld: (.text+0x324): undefined reference to `__cmpxchg_called_with_bad_pointer'
    	hppa-linux-ld: (.text+0x354): undefined reference to `__cmpxchg_called_with_bad_pointer'
    
    Add support for cmpxchg on u8 pointers.
    
    [1] https://lore.kernel.org/patchwork/patch/1272617/#1468946
    
    Reported-by: kernel test robot <lkp@intel.com>
    Signed-off-by: Liam Beguin <liambeguin@gmail.com>
    Tested-by: Dave Anglin <dave.anglin@bell.net>
    Signed-off-by: Helge Deller <deller@gmx.de>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    liambeguin authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    ac7c3b8 View commit details
    Browse the repository at this point in the history
  73. net: ethernet: ravb: exit if re-initialization fails in tx timeout

    [ Upstream commit 015c5d5 ]
    
    According to the report of [1], this driver is possible to cause
    the following error in ravb_tx_timeout_work().
    
    ravb e6800000.ethernet ethernet: failed to switch device to config mode
    
    This error means that the hardware could not change the state
    from "Operation" to "Configuration" while some tx and/or rx queue
    are operating. After that, ravb_config() in ravb_dmac_init() will fail,
    and then any descriptors will be not allocaled anymore so that NULL
    pointer dereference happens after that on ravb_start_xmit().
    
    To fix the issue, the ravb_tx_timeout_work() should check
    the return values of ravb_stop_dma() and ravb_dmac_init().
    If ravb_stop_dma() fails, ravb_tx_timeout_work() re-enables TX and RX
    and just exits. If ravb_dmac_init() fails, just exits.
    
    [1]
    https://lore.kernel.org/linux-renesas-soc/20200518045452.2390-1-dirk.behme@de.bosch.com/
    
    Reported-by: Dirk Behme <dirk.behme@de.bosch.com>
    Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
    Reviewed-by: Sergei Shtylyov <sergei.shtylyov@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    shimoday authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    df366ab View commit details
    Browse the repository at this point in the history
  74. Revert "i2c: cadence: Fix the hold bit setting"

    [ Upstream commit 0db9254 ]
    
    This reverts commit d358def.
    
    There are two issues with "i2c: cadence: Fix the hold bit setting" commit.
    
    1. In case of combined message request from user space, when the HOLD
    bit is cleared in cdns_i2c_mrecv function, a STOP condition is sent
    on the bus even before the last message is started. This is because when
    the HOLD bit is cleared, the FIFOS are empty and there is no pending
    transfer. The STOP condition should occur only after the last message
    is completed.
    
    2. The code added by the commit is redundant. Driver is handling the
    setting/clearing of HOLD bit in right way before the commit.
    
    The setting of HOLD bit based on 'bus_hold_flag' is taken care in
    cdns_i2c_master_xfer function even before cdns_i2c_msend/cdns_i2c_recv
    functions.
    
    The clearing of HOLD bit is taken care at the end of cdns_i2c_msend and
    cdns_i2c_recv functions based on bus_hold_flag and byte count.
    Since clearing of HOLD bit is done after the slave address is written to
    the register (writing to address register triggers the message transfer),
    it is ensured that STOP condition occurs at the right time after
    completion of the pending transfer (last message).
    
    Signed-off-by: Raviteja Narayanam <raviteja.narayanam@xilinx.com>
    Acked-by: Michal Simek <michal.simek@xilinx.com>
    Signed-off-by: Wolfram Sang <wsa@kernel.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    Raviteja Narayanam authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    a14d6a9 View commit details
    Browse the repository at this point in the history
  75. x86/unwind/orc: Fix ORC for newly forked tasks

    [ Upstream commit 372a8ea ]
    
    The ORC unwinder fails to unwind newly forked tasks which haven't yet
    run on the CPU.  It correctly reads the 'ret_from_fork' instruction
    pointer from the stack, but it incorrectly interprets that value as a
    call stack address rather than a "signal" one, so the address gets
    incorrectly decremented in the call to orc_find(), resulting in bad ORC
    data.
    
    Fix it by forcing 'ret_from_fork' frames to be signal frames.
    
    Reported-by: Wang ShaoBo <bobo.shaobowang@huawei.com>
    Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
    Tested-by: Wang ShaoBo <bobo.shaobowang@huawei.com>
    Link: https://lkml.kernel.org/r/f91a8778dde8aae7f71884b5df2b16d552040441.1594994374.git.jpoimboe@redhat.com
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    jpoimboe authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    32344d2 View commit details
    Browse the repository at this point in the history
  76. x86/stacktrace: Fix reliable check for empty user task stacks

    [ Upstream commit 039a7a3 ]
    
    If a user task's stack is empty, or if it only has user regs, ORC
    reports it as a reliable empty stack.  But arch_stack_walk_reliable()
    incorrectly treats it as unreliable.
    
    That happens because the only success path for user tasks is inside the
    loop, which only iterates on non-empty stacks.  Generally, a user task
    must end in a user regs frame, but an empty stack is an exception to
    that rule.
    
    Thanks to commit 71c9582 ("x86/unwind/orc: Fix error handling in
    __unwind_start()"), unwind_start() now sets state->error appropriately.
    So now for both ORC and FP unwinders, unwind_done() and !unwind_error()
    always means the end of the stack was successfully reached.  So the
    success path for kthreads is no longer needed -- it can also be used for
    empty user tasks.
    
    Reported-by: Wang ShaoBo <bobo.shaobowang@huawei.com>
    Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
    Tested-by: Wang ShaoBo <bobo.shaobowang@huawei.com>
    Link: https://lkml.kernel.org/r/f136a4e5f019219cbc4f4da33b30c2f44fa65b84.1594994374.git.jpoimboe@redhat.com
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    jpoimboe authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    5f4e6b8 View commit details
    Browse the repository at this point in the history
  77. cxgb4: add missing release on skb in uld_send()

    [ Upstream commit e6827d1 ]
    
    In the implementation of uld_send(), the skb is consumed on all
    execution paths except one. Release skb when returning NET_XMIT_DROP.
    
    Signed-off-by: Navid Emamdoost <navid.emamdoost@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    Navidem authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    a7b488d View commit details
    Browse the repository at this point in the history
  78. xen-netfront: fix potential deadlock in xennet_remove()

    [ Upstream commit c2c6331 ]
    
    There's a potential race in xennet_remove(); this is what the driver is
    doing upon unregistering a network device:
    
      1. state = read bus state
      2. if state is not "Closed":
      3.    request to set state to "Closing"
      4.    wait for state to be set to "Closing"
      5.    request to set state to "Closed"
      6.    wait for state to be set to "Closed"
    
    If the state changes to "Closed" immediately after step 1 we are stuck
    forever in step 4, because the state will never go back from "Closed" to
    "Closing".
    
    Make sure to check also for state == "Closed" in step 4 to prevent the
    deadlock.
    
    Also add a 5 sec timeout any time we wait for the bus state to change,
    to avoid getting stuck forever in wait_event().
    
    Signed-off-by: Andrea Righi <andrea.righi@canonical.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    Andrea Righi authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    e3043ab View commit details
    Browse the repository at this point in the history
  79. RISC-V: Set maximum number of mapped pages correctly

    [ Upstream commit d0d8aae ]
    
    Currently, maximum number of mapper pages are set to the pfn calculated
    from the memblock size of the memblock containing kernel. This will work
    until that memblock spans the entire memory. However, it will be set to
    a wrong value if there are multiple memblocks defined in kernel
    (e.g. with efi runtime services).
    
    Set the the maximum value to the pfn calculated from dram size.
    
    Signed-off-by: Atish Patra <atish.patra@wdc.com>
    Signed-off-by: Palmer Dabbelt <palmerdabbelt@google.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    atishp04 authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    f88c909 View commit details
    Browse the repository at this point in the history
  80. drivers/net/wan: lapb: Corrected the usage of skb_cow

    [ Upstream commit 8754e13 ]
    
    This patch fixed 2 issues with the usage of skb_cow in LAPB drivers
    "lapbether" and "hdlc_x25":
    
    1) After skb_cow fails, kfree_skb should be called to drop a reference
    to the skb. But in both drivers, kfree_skb is not called.
    
    2) skb_cow should be called before skb_push so that is can ensure the
    safety of skb_push. But in "lapbether", it is incorrectly called after
    skb_push.
    
    More details about these 2 issues:
    
    1) The behavior of calling kfree_skb on failure is also the behavior of
    netif_rx, which is called by this function with "return netif_rx(skb);".
    So this function should follow this behavior, too.
    
    2) In "lapbether", skb_cow is called after skb_push. This results in 2
    logical issues:
       a) skb_push is not protected by skb_cow;
       b) An extra headroom of 1 byte is ensured after skb_push. This extra
          headroom has no use in this function. It also has no use in the
          upper-layer function that this function passes the skb to
          (x25_lapb_receive_frame in net/x25/x25_dev.c).
    So logically skb_cow should instead be called before skb_push.
    
    Cc: Eric Dumazet <edumazet@google.com>
    Cc: Martin Schiller <ms@dev.tdt.de>
    Signed-off-by: Xie He <xie.he.0141@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    Xie He authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    1aff512 View commit details
    Browse the repository at this point in the history
  81. KVM: arm64: Don't inherit exec permission across page-table levels

    commit b757b47 upstream.
    
    If a stage-2 page-table contains an executable, read-only mapping at the
    pte level (e.g. due to dirty logging being enabled), a subsequent write
    fault to the same page which tries to install a larger block mapping
    (e.g. due to dirty logging having been disabled) will erroneously inherit
    the exec permission and consequently skip I-cache invalidation for the
    rest of the block.
    
    Ensure that exec permission is only inherited by write faults when the
    new mapping is of the same size as the existing one. A subsequent
    instruction abort will result in I-cache invalidation for the entire
    block mapping.
    
    Signed-off-by: Will Deacon <will@kernel.org>
    Signed-off-by: Marc Zyngier <maz@kernel.org>
    Tested-by: Quentin Perret <qperret@google.com>
    Reviewed-by: Quentin Perret <qperret@google.com>
    Cc: Marc Zyngier <maz@kernel.org>
    Cc: <stable@vger.kernel.org>
    Link: https://lore.kernel.org/r/20200723101714.15873-1-will@kernel.org
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    willdeacon authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    fd41284 View commit details
    Browse the repository at this point in the history
  82. KVM: LAPIC: Prevent setting the tscdeadline timer if the lapic is hw …

    …disabled
    
    commit d2286ba upstream.
    
    Prevent setting the tscdeadline timer if the lapic is hw disabled.
    
    Fixes: bce87cc (KVM: x86: consolidate different ways to test for in-kernel LAPIC)
    Cc: <stable@vger.kernel.org>
    Signed-off-by: Wanpeng Li <wanpengli@tencent.com>
    Message-Id: <1596165141-28874-1-git-send-email-wanpengli@tencent.com>
    Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Wanpeng Li authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    01ac46c View commit details
    Browse the repository at this point in the history
  83. x86/i8259: Use printk_deferred() to prevent deadlock

    commit bdd6558 upstream.
    
    0day reported a possible circular locking dependency:
    
    Chain exists of:
      &irq_desc_lock_class --> console_owner --> &port_lock_key
    
     Possible unsafe locking scenario:
    
           CPU0                    CPU1
           ----                    ----
      lock(&port_lock_key);
                                   lock(console_owner);
                                   lock(&port_lock_key);
      lock(&irq_desc_lock_class);
    
    The reason for this is a printk() in the i8259 interrupt chip driver
    which is invoked with the irq descriptor lock held, which reverses the
    lock operations vs. printk() from arbitrary contexts.
    
    Switch the printk() to printk_deferred() to avoid that.
    
    Reported-by: kernel test robot <lkp@intel.com>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
    Signed-off-by: Ingo Molnar <mingo@kernel.org>
    Cc: stable@vger.kernel.org
    Link: https://lore.kernel.org/r/87365abt2v.fsf@nanos.tec.linutronix.de
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    KAGA-KOKO authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    3956854 View commit details
    Browse the repository at this point in the history
  84. perf tests bp_account: Make global variable static

    commit cff20b3 upstream.
    
    To fix the build with newer gccs, that without this patch exit with:
    
        LD       /tmp/build/perf/tests/perf-in.o
      ld: /tmp/build/perf/tests/bp_account.o:/git/perf/tools/perf/tests/bp_account.c:22: multiple definition of `the_var'; /tmp/build/perf/tests/bp_signal.o:/git/perf/tools/perf/tests/bp_signal.c:38: first defined here
      make[4]: *** [/git/perf/tools/build/Makefile.build:145: /tmp/build/perf/tests/perf-in.o] Error 1
    
    First noticed in fedora:rawhide/32 with:
    
      [perfbuilder@a5ff49d6e6e4 ~]$ gcc --version
      gcc (GCC) 10.0.1 20200216 (Red Hat 10.0.1-0.8)
    
    Reported-by: Jiri Olsa <jolsa@kernel.org>
    Cc: Adrian Hunter <adrian.hunter@intel.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    Cc: Ben Hutchings <ben@decadent.org.uk>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    acmel authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    73d2d6b View commit details
    Browse the repository at this point in the history
  85. perf env: Do not return pointers to local variables

    commit ebcb946 upstream.
    
    It is possible to return a pointer to a local variable when looking up
    the architecture name for the running system and no normalization is
    done on that value, i.e. we may end up returning the uts.machine local
    variable.
    
    While this doesn't happen on most arches, as normalization takes place,
    lets fix this by making that a static variable and optimize it a bit by
    not always running uname(), only the first time.
    
    Noticed in fedora rawhide running with:
    
      [perfbuilder@a5ff49d6e6e4 ~]$ gcc --version
      gcc (GCC) 10.0.1 20200216 (Red Hat 10.0.1-0.8)
    
    Reported-by: Jiri Olsa <jolsa@kernel.org>
    Cc: Adrian Hunter <adrian.hunter@intel.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    Cc: Ben Hutchings <ben@decadent.org.uk>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    acmel authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    702d1b2 View commit details
    Browse the repository at this point in the history
  86. perf bench: Share some global variables to fix build with gcc 10

    commit e4d9b04 upstream.
    
    Noticed with gcc 10 (fedora rawhide) that those variables were not being
    declared as static, so end up with:
    
      ld: /tmp/build/perf/bench/epoll-wait.o:/git/perf/tools/perf/bench/epoll-wait.c:93: multiple definition of `end'; /tmp/build/perf/bench/futex-hash.o:/git/perf/tools/perf/bench/futex-hash.c:40: first defined here
      ld: /tmp/build/perf/bench/epoll-wait.o:/git/perf/tools/perf/bench/epoll-wait.c:93: multiple definition of `start'; /tmp/build/perf/bench/futex-hash.o:/git/perf/tools/perf/bench/futex-hash.c:40: first defined here
      ld: /tmp/build/perf/bench/epoll-wait.o:/git/perf/tools/perf/bench/epoll-wait.c:93: multiple definition of `runtime'; /tmp/build/perf/bench/futex-hash.o:/git/perf/tools/perf/bench/futex-hash.c:40: first defined here
      ld: /tmp/build/perf/bench/epoll-ctl.o:/git/perf/tools/perf/bench/epoll-ctl.c:38: multiple definition of `end'; /tmp/build/perf/bench/futex-hash.o:/git/perf/tools/perf/bench/futex-hash.c:40: first defined here
      ld: /tmp/build/perf/bench/epoll-ctl.o:/git/perf/tools/perf/bench/epoll-ctl.c:38: multiple definition of `start'; /tmp/build/perf/bench/futex-hash.o:/git/perf/tools/perf/bench/futex-hash.c:40: first defined here
      ld: /tmp/build/perf/bench/epoll-ctl.o:/git/perf/tools/perf/bench/epoll-ctl.c:38: multiple definition of `runtime'; /tmp/build/perf/bench/futex-hash.o:/git/perf/tools/perf/bench/futex-hash.c:40: first defined here
      make[4]: *** [/git/perf/tools/build/Makefile.build:145: /tmp/build/perf/bench/perf-in.o] Error 1
    
    Prefix those with bench__ and add them to bench/bench.h, so that we can
    share those on the tools needing to access those variables from signal
    handlers.
    
    Acked-by: Thomas Gleixner <tglx@linutronix.de>
    Cc: Adrian Hunter <adrian.hunter@intel.com>
    Cc: Davidlohr Bueso <dave@stgolabs.net>
    Cc: Jiri Olsa <jolsa@kernel.org>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Link: http://lore.kernel.org/lkml/20200303155811.GD13702@kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    Cc: Ben Hutchings <ben@decadent.org.uk>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    acmel authored and gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    df35e87 View commit details
    Browse the repository at this point in the history
  87. Linux 5.4.56

    Tested-by: Shuah Khan <skhan@linuxfoundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    gregkh committed Aug 5, 2020
    Configuration menu
    Copy the full SHA
    1b940bb View commit details
    Browse the repository at this point in the history

Commits on Aug 6, 2020

  1. Merge tag 'v5.4.56' into v5.4-stm32mp

    This is the 5.4.56 stable release
    
    Change-Id: Iec89796265bc1e2bc2711c22a87914c589f0975b
    ADESTM committed Aug 6, 2020
    Configuration menu
    Copy the full SHA
    1f30382 View commit details
    Browse the repository at this point in the history

Commits on Sep 7, 2020

  1. opp: core: fix memory leak in probe deferral

    In case of probe deferral, opp debugfs entry is not released which creates
    two issues:
    - A warning log at each probe attempt:
      "debugfs: Directory 'cpu0' with parent 'opp' already present!"
    - A memory leak (seen thank to kmemleak):
    
    root@stm32mp1:~# cat /sys/kernel/debug/kmemleak
    unreferenced object 0xde281b40 (size 64):
      comm "kworker/0:1", pid 22, jiffies 4294937523 (age 86.000s)
      hex dump (first 32 bytes):
        24 6e 57 df 24 6e 57 df 10 40 ad df b8 d3 af de  $nW.$nW..@......
        00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
      backtrace:
        [<837aa36f>] _add_opp_dev+0x24/0x38
        [<e0e47c66>] _opp_get_opp_table+0xe8/0x1c8
        [<4ccf360b>] dev_pm_opp_set_supported_hw+0x14/0xa0
        [<b14a10a7>] stm32_cpufreq_probe+0x9c/0x1bc
        [<b7ae2ec8>] platform_drv_probe+0x48/0x98
        [<28167df6>] really_probe+0x24c/0x488
        [<f3f5bbdd>] driver_probe_device+0x78/0x154
        [<0fab043a>] bus_for_each_drv+0x84/0xd0
        [<04d64c2c>] __device_attach+0xe0/0x178
        [<55a4a023>] bus_probe_device+0x84/0x8c
        [<533275e8>] deferred_probe_work_func+0x84/0xc4
        [<f2a58261>] process_one_work+0x1e8/0x588
        [<f2135490>] worker_thread+0x248/0x528
        [<898b4d00>] kthread+0x11c/0x144
        [<4afe9fe2>] ret_from_fork+0x14/0x2c
        [<00000000>] 0x0
    
    Fixes: c4d1d7d ("opp: core: Handle probe deferral for clock")
    
    Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
    Change-Id: I45b91a140dbff5a7aebd7d7239b9372724c38372
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/176154
    Reviewed-by: Pascal PAILLET <p.paillet@st.com>
    atorgue committed Sep 7, 2020
    Configuration menu
    Copy the full SHA
    cf1f361 View commit details
    Browse the repository at this point in the history

Commits on Sep 8, 2020

  1. usb: dwc2: disable Link Power Management on STM32MP1 HS OTG

    Link Power Management (LPM) on STM32MP1 HS OTG encounters instabilities
    with some Host controllers. OTG core fails to exit L1 state in 200us:
    "dwc2 49000000.usb-otg: Failed to exit L1 sleep state in 200us."
    Increase the timeout doesn't fix the issue, new logs appears:
    "dwc2 49000000.usb-otg: dwc2_hsotg_enqueue_setup: failed queue (-11)"
    Then the device is still not enumerated.
    
    To avoid this issue, disable Link Power Management on STM32MP1 HS OTG.
    
    Change-Id: Ie8ad6eea64250151da9fa5925559d8c094242980
    Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/176377
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    ADESTM authored and atorgue committed Sep 8, 2020
    Configuration menu
    Copy the full SHA
    06c2a9b View commit details
    Browse the repository at this point in the history
  2. usb: dwc2: fix error path with missing dwc2_drd_exit

    In case of failure, role switch has to be unregistered. It is done by
    dwc2_drd_exit.
    
    Change-Id: Id762c96ad4362c0743cd3c297cdd0bd7db022187
    Fixes: 5ec811a6ab7b ("usb: dwc2: add DRD support with role switch and override Vbus/ID signals")
    Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/173584
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    ADESTM authored and atorgue committed Sep 8, 2020
    Configuration menu
    Copy the full SHA
    c339778 View commit details
    Browse the repository at this point in the history
  3. usb: dwc2: fix dwc2_drd_exit order in remove

    In probe, dwc2_drd_init is called after activate_stm_id_vb_detection case
    management. So in remove, dwc2_drd_exit should be called before
    activate_stm_id_vb_detection case management.
    
    Change-Id: I517eb569a7a1c7a91b7f47ec7010f7ba6ab71926
    Fixes: 5ec811a6ab7b ("usb: dwc2: add DRD support with role switch and override Vbus/ID signals")
    Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/173688
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    ADESTM authored and atorgue committed Sep 8, 2020
    Configuration menu
    Copy the full SHA
    4f1e06a View commit details
    Browse the repository at this point in the history
  4. usb: dwc2: drd: fix sleeping while spinlock atomic context

    If GINTSTS.CURMODE is not yet reflecting the expecting mode after calling
    dwc2_force_mode, we enter in the dwc2_wait_for_mode function while under
    spinlock atomic context.
    To avoid this situation, move the call to dwc2_force_mode after the
    spinlock atomic context.
    
    Change-Id: If30c9bf19249be8c5d07e229f4067e6d013092cb
    Fixes: 5ec811a6ab7b ("usb: dwc2: add DRD support with role switch and override Vbus/ID signals")
    Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/173585
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    ADESTM authored and atorgue committed Sep 8, 2020
    Configuration menu
    Copy the full SHA
    bbb6e11 View commit details
    Browse the repository at this point in the history
  5. Revert "usb: dwc2: defer probe in case of core reset failure"

    Defering OTG driver probe doesn't fix the issue of core reset failure.
    This reverts commit b8663f5, to avoid
    multiple OTG driver probe tentatives.
    
    Change-Id: I4c76b8ba27fec337a50d23a4d65bdf0e275d1ccd
    Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/176383
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    ADESTM authored and atorgue committed Sep 8, 2020
    Configuration menu
    Copy the full SHA
    ec91890 View commit details
    Browse the repository at this point in the history

Commits on Sep 9, 2020

  1. ARM: dts: stm32: activate usart3 for ev1 a7-examples

    Activate usart3 (available on GPIO expansion connector) for ev1
    a7-examples.
    
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: I5d4079f0db1af2a67bb7468bca7d9746fc84ee9a
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/162030
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Erwan Le Ray authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    2743e47 View commit details
    Browse the repository at this point in the history
  2. ARM: dts: stm32: activate usart3 and uart7 for dk2 a7-examples

    Activate usart3 (available on GPIO expansion connector) and uart7
    (available on Arduino connector) for dk2 a7-examples.
    
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: I9b8734f709c07951cde55487bc15fda3ec38c1dd
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/162031
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Erwan Le Ray authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    7b54a13 View commit details
    Browse the repository at this point in the history
  3. ARM: dts: stm32: add pull- up to USART3 and UART7 RX pins on DKx boards

    Add pull-up to USART3 and UART7 RX pins to allow loop tests between USART3
    and UART7 on stm32mp15 DKx boards.
    
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: If58654614b82928776b8efe2529ca1f12988083f
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/162076
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Erwan Le Ray authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    f3ec475 View commit details
    Browse the repository at this point in the history
  4. ARM: dts: stm32: change adc2 config on stm32mp157c-dk2 a7-examples

    Configure adc2 instance in IRQ mode, on STM32MP157C-DK2
    A7 examples.
    
    Signed-off-by: Olivier Moysan <olivier.moysan@st.com>
    Change-Id: I32758a44ef24739fe14f284fb024381f1aa47690
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/161258
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Olivier Moysan authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    a6fc2a1 View commit details
    Browse the repository at this point in the history
  5. rtc: stm32: improve rtc precision

    The rtc is used to update the stgen counter on wake up from
    low power modes, so it needs to be as much accurate as possible.
    
    The maximization of asynchronous divider leads to a 4ms rtc
    precision clock.
    By decreasing pred_a to 0, it will have pred_s=32767 (when
    need_accuracy is true), so stgen clock becomes more accurate
    with 30us precision.
    
    Change-Id: I321640e6b9c78765bfc63b4e557b1cdb84ade113
    Signed-off-by: Christophe Guibout <christophe.guibout@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/161655
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Gerald BAEZA <gerald.baeza@st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Gabriel FERNANDEZ <gabriel.fernandez@st.com>
    Reviewed-by: Amelie DELAUNAY <amelie.delaunay@st.com>
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    CGUSTM authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    6c89abd View commit details
    Browse the repository at this point in the history
  6. ASoC: stm32: sai: add pm_runtime support

    Enable support of pm_runtime on STM32 SAI driver to allow
    SAI power state monitoring.
    pm_runtime_put_autosuspend() is called from ASoC framework
    on pcm device close.
    The pmdown_time delay is available in runtime context, and may be set
    in SAI driver to take into account shutdown delay on playback.
    However, this shutdown delay is already handled in the DAPMs
    of the audio codec linked to SAI CPU DAI.
    So, the choice is made, not to support this delay on CPU DAI side.
    
    Signed-off-by: Olivier Moysan <olivier.moysan@st.com>
    Change-Id: Iee5b5956067855ca973e22391ce80a0cda8dc399
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/164465
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Benjamin GAIGNARD <benjamin.gaignard@st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Arnaud POULIQUEN <arnaud.pouliquen@st.com>
    Olivier Moysan authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    92f8557 View commit details
    Browse the repository at this point in the history
  7. spi: stm32: do not mandate optional cs-gpio entry

    The usage cs-gpio is optional and the controller is already configured
    in a way that it can work without cs-gpio. Hence remove the check of
    proper cs-gpio entry in the setup callback.
    
    Signed-off-by: Alain Volmat <alain.volmat@st.com>
    Change-Id: Ic4539963abea6bf442f8c8c1b9fbc3a1c003e3df
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/165549
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Amelie DELAUNAY <amelie.delaunay@st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    avolmat-st authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    f400270 View commit details
    Browse the repository at this point in the history
  8. ARM: dts: stm32: load mac address from NVMEM for STM32MP1 boards

    It is usefull to read the OTP value with NVMEM if the MAC address
    is not provided in the device tree by the BootLoader
    
    Signed-off-by: Christophe Roullier <christophe.roullier@st.com>
    Change-Id: I4feffec9078d75156aa7498787bd35afeb071666
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/163697
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Christophe Roullier authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    cae2f70 View commit details
    Browse the repository at this point in the history
  9. dt-bindings: rs485: add support of delays in nanoseconds

    Add rs485-rts-delay-ns (in nanoseconds) property.
    This extends the range of delay values for user to microseconds and
    nanoseconds.
    
    The code defines the rs485 delay in milliseconds.
    With fast data rates (1 Mbps or more), 1 ms become quite long. Users need
    to be able to set shorter delays than 1 ms in order not to slow down the
    channel unnecessarily. This enables faster communication channels without
    changing the baudrate.
    
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: Ibe25fece91c81d8d3d18396f41562856a8c88583
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/164027
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Erwan Le Ray authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    7866b43 View commit details
    Browse the repository at this point in the history
  10. dt-bindings: stm32: support new rs485 delays in nanoseconds

    Add rs485-rts-delay-ns (in nanoseconds) property.
    This extends the range of delay values for user to microseconds and
    nanoseconds.
    
    With fast data rates (1Mbaut or more), 1ms become quite long. Users need
    to be able to set shorter delays than 1 ms in order not to slow down the
    channel unnecessarily. This enables faster communication channels without
    changing the baudrate.
    
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: I47f65ea6de16f13a886e19863db55ebdcac914b1
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/164028
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Erwan Le Ray authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    0f84ee3 View commit details
    Browse the repository at this point in the history
  11. include: uapi: serial: add support of rts delays in nanoseconds

    Add support of rs485 delay in nanoseconds.
    
    With fast data rates (1Mbaut or more), 1ms become quite long. Users need
    to be able to set shorter delays than 1 ms in order not to slow down the
    channel unnecessarily. This enables faster communication channels without
    changing the baudrate.
    
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: I5ec757517be3da22e08df4cc622d08cb28544862
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/164029
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Erwan Le Ray authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    312bd2d View commit details
    Browse the repository at this point in the history
  12. serial: core: add support of rs485 delay in nanoseconds

    Add support of rs485 nanoseconds delay to rs485conf structure.
    
    With fast data rates (1Mbaut or more), 1ms become quite long. Users need
    to be able to set shorter delays than 1 ms in order not to slow down the
    channel unnecessarily. This enables faster communication channels without
    changing the baudrate.
    
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: I489cec36188c193a2d90824480d4023985d8074b
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/164030
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Erwan Le Ray authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    a8455dd View commit details
    Browse the repository at this point in the history
  13. serial: stm32: Add support of rs485 delays in nanoseconds

    Add support of s485 delays in nanoseconds. Delays in nanoseconds will be
    used only when defined in dt new rs485-rts-delay-ns property, else delays
    in milliseconds will be used.
    
    With fast data rates (1Mbaut or more), 1ms become quite long. Users need
    to be able to set shorter delays than 1 ms in order not to slow down the
    channel unnecessarily. This enables faster communication channels without
    changing the baudrate.
    
    In addition assertion delay and deassertion delay are coded on 5 bits in
    STM32MP IP registers, ie the max value is always lower than 1 ms with rs485
    common baud rates.
    
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: I5c243b9ea5b430a160013b32a3817285f16329ef
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/164031
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Erwan Le Ray authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    22c5ec7 View commit details
    Browse the repository at this point in the history
  14. serial: stm32: rework config_reg_rs485

    Rework config_reg_rs485 function to simplify code reading and improve
    code quality.
    
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: Iea68ddfe0b1f54dad903502be46f2a7f896188fd
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/164032
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Erwan Le Ray authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    e789c97 View commit details
    Browse the repository at this point in the history
  15. media: stm32-dcmi: create video dev within notifier bound

    In case of an error during the initialization of the sensor,
    the video device is still available since created at the
    probe of the dcmi driver. Moreover the device wouldn't
    be released even when removing the module since the release
    is performed as part of the notifier unbind callback
    (not called if no sensor is properly initialized).
    
    This patch move the video device creation with the v4l2 notifier
    bound handler in order to avoid having a video device created when
    an error happen during the pipe (dcmi - sensor) initialization.
    
    This also makes the video device creation symmetric with the
    release which is already done within the notifier unbind handler.
    
    Signed-off-by: Alain Volmat <alain.volmat@st.com>
    Change-Id: I7379937e5cad03fe679bcd0a67767611743091a6
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/161830
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Philippe CORNU <philippe.cornu@st.com>
    Reviewed-by: Hugues FRUCHET <hugues.fruchet@st.com>
    Tested-by: Hugues FRUCHET <hugues.fruchet@st.com>
    avolmat-st authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    a291ea3 View commit details
    Browse the repository at this point in the history
  16. media: stm32-dcmi: fix probe error path & module remove

    This commit add missing vb2_queue_release calls with the
    probe error path and module remove.
    Missing v4l2_async_notifier_unregister is also added within
    the probe error path
    
    Signed-off-by: Alain Volmat <alain.volmat@st.com>
    Change-Id: I769b33ad1241bd0f9bf20d8776f3cb558895a8c1
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/161831
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Philippe CORNU <philippe.cornu@st.com>
    Reviewed-by: Hugues FRUCHET <hugues.fruchet@st.com>
    Tested-by: Hugues FRUCHET <hugues.fruchet@st.com>
    avolmat-st authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    9f977a0 View commit details
    Browse the repository at this point in the history
  17. clk: composite: add get duty cycle ops to composite clock

    Add support of duty cycle functionality to composite clock.
    
    Change-Id: Ib5179e5cc720c65dfbfa22c4a50da7e43302ce31
    Signed-off-by: Gabriel Fernandez <gabriel.fernandez@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/168777
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Gabriel-Fernandez-stm authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    b21e112 View commit details
    Browse the repository at this point in the history
  18. clk: stm32mp1: add duty cycle ops for ADC clocks

    Calculate duty cycle value for ADC clocks (pll3_q & pll4_r).
    
    Change-Id: I21e96ba7733291de70893ebfb1c1093746bd1736
    Signed-off-by: Gabriel Fernandez <gabriel.fernandez@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/168778
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Gabriel-Fernandez-stm authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    cc57e7e View commit details
    Browse the repository at this point in the history
  19. mtd: rawnand: stm32_fmc2: manage all errors cases at probe time

    This patch defers its probe when the expected reset control is not
    yet ready. This patch also handles properly all errors cases at probe
    time.
    
    Change-Id: I61e60ca928e1e3227f2de3775373e43af23bbfe6
    Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/172767
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Christophe Kerello authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    cd83252 View commit details
    Browse the repository at this point in the history
  20. mtd: rawnand: stm32_fmc2: remove useless inline comments

    Remove inline comments that are useless since function label are
    self explanatory.
    
    Change-Id: Ib6ffa7336bea89641902180f5a8354572bb57d77
    Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
    Reviewed-by: Miquel Raynal <miquel.raynal@bootlin.com>
    Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
    Link: https://lore.kernel.org/linux-mtd/1588756279-17289-3-git-send-email-christophe.kerello@st.com
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/172768
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Christophe Kerello authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    b63de5e View commit details
    Browse the repository at this point in the history
  21. mtd: rawnand: stm32_fmc2: use FMC2_TIMEOUT_MS for timeouts

    This patch removes the constant FMC2_TIMEOUT_US.
    FMC2_TIMEOUT_MS will be used each time that we need to wait (except
    when the timeout value is set by the framework).
    
    It was seen, during stress tests with the sequencer in an overloaded
    system, that we could be close to 1 second, even if we never met this
    value. To be safe, FMC2_TIMEOUT_MS is set to 5 seconds.
    
    Change-Id: I22c28b7279a9b15ca4ca090f62d5e776d28288c5
    Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
    Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
    Link: https://lore.kernel.org/linux-mtd/1588756279-17289-4-git-send-email-christophe.kerello@st.com
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/172769
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Christophe Kerello authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    b144942 View commit details
    Browse the repository at this point in the history
  22. mtd: rawnand: stm32_fmc2: cosmetic change to use nfc instead of fmc2 …

    …where relevant
    
    This patch renames functions and local variables.
    This cleanup is done to get all functions starting by stm32_fmc2_nfc
    in the FMC2 raw NAND driver when all functions will start by
    stm32_fmc2_ebi in the FMC2 EBI driver.
    
    Change-Id: I6303e22ae30211c3568d3c32fb0f35dbbfa7b42a
    Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
    Reviewed-by: Miquel Raynal <miquel.raynal@bootlin.com>
    Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
    Link: https://lore.kernel.org/linux-mtd/1589284068-4079-2-git-send-email-christophe.kerello@st.com
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/172770
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Christophe Kerello authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    3e5fce8 View commit details
    Browse the repository at this point in the history
  23. mtd: rawnand: stm32_fmc2: use FIELD_PREP/FIELD_GET macros

    This patch removes custom macros and uses FIELD_PREP and FIELD_GET macros.
    
    Change-Id: I7a0956e344e12097a36283cb065f7fdda419af4a
    Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
    Reviewed-by: Miquel Raynal <miquel.raynal@bootlin.com>
    Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
    Link: https://lore.kernel.org/linux-mtd/1589284068-4079-3-git-send-email-christophe.kerello@st.com
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/172771
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Christophe Kerello authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    a44d323 View commit details
    Browse the repository at this point in the history
  24. mtd: rawnand: stm32_fmc2: do not display errors if the driver is defe…

    …rred
    
    A MDMA issue has been solved on Kernel 5.7. The effect of this fix is
    that the MDMA driver is now deferred and the FMC2 NFC driver is also
    deferred. All is working fine but there is a FMC2 log in the console:
    stm32_fmc2_nfc 58002000.nand-controller: failed to request tx DMA
    channel: -517
    
    This patch removes the display of this log in the console in case of
    this error is -EPROBE_DEFER.
    
    Change-Id: I5a18ad82609a9ea1dfff0e33731ad25d679cf33f
    Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/172772
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Christophe Kerello authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    d7ff110 View commit details
    Browse the repository at this point in the history
  25. dt-bindings: mtd: Convert stm32 fmc2-nand bindings to json-schema

    Convert the STM32 fmc2-nand binding to DT schema format using json-schema
    
    Change-Id: I6b674fef550488667e2df427ac35c17c29d9f99e
    Signed-off-by: Benjamin Gaignard <benjamin.gaignard@st.com>
    CC: Christophe Kerello <christophe.kerello@st.com>
    Signed-off-by: Rob Herring <robh@kernel.org>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/172773
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Christophe KERELLO <christophe.kerello@st.com>
    Tested-by: Christophe KERELLO <christophe.kerello@st.com>
    Christophe Kerello authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    dc71242 View commit details
    Browse the repository at this point in the history
  26. dt-bindings: mtd: update STM32 FMC2 NAND controller documentation

    These bindings can be used on SOCs where the FMC2 NAND controller is
    in standalone. In case that the FMC2 embeds 2 controllers (an external
    bus controller and a raw NAND controller), the register base address,
    the clock and the reset will be defined in the parent node.
    
    Change-Id: Ia6f2d3388fd326cc656f423470d419deb5dcdf9a
    Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/172774
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Christophe Kerello authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    d240e84 View commit details
    Browse the repository at this point in the history
  27. dt-bindings: memory-controller: add STM32 FMC2 EBI controller documen…

    …tation
    
    This patch adds the documentation of the device tree bindings for the STM32
    FMC2 EBI controller.
    
    Change-Id: If8cb061478add96355ae39ca7ec7287573954dda
    Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
    Reviewed-by: Rob Herring <robh@kernel.org>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/172775
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Christophe Kerello authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    5971c50 View commit details
    Browse the repository at this point in the history
  28. memory: stm32-fmc2-ebi: add STM32 FMC2 EBI controller driver

    The driver adds the support for the STMicroelectronics FMC2 EBI controller
    found on STM32MP SOCs.
    
    Change-Id: I0dc9a7d0717db9dcc6f2561cacf9459c24920658
    Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/172776
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Christophe Kerello authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    6a62b1d View commit details
    Browse the repository at this point in the history
  29. mtd: rawnand: stm32_fmc2: use regmap APIs

    This patch uses regmap APIs to access all FMC2 registers.
    
    Change-Id: Ia65db18d086816d207afdaf74c6ee90b2514cd43
    Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
    Reviewed-by: Miquel Raynal <miquel.raynal@bootlin.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/172777
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Christophe Kerello authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    33e6e90 View commit details
    Browse the repository at this point in the history
  30. mtd: rawnand: stm32_fmc2: get resources from parent node

    FMC2 EBI support has been added. Common resources (registers base
    address and clock) can now be shared between the 2 drivers using
    "st,stm32mp1-fmc2-nfc" compatible string. It means that the
    common resources should now be found in the parent device when EBI
    node is available.
    
    Change-Id: I46e93887b77c42550338708e4083b2efadc6e738
    Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/172778
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Christophe Kerello authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    253e736 View commit details
    Browse the repository at this point in the history
  31. ARM: configs: add FMC2 EBI controller support in multi_v7 addons frag…

    …ment
    
    This patch adds FMC2 EBI controller support used by STM32MP SOCs.
    
    Change-Id: If64d7c909704193d7b58ad1c9c9273e13894c07d
    Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/172779
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Christophe Kerello authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    7146c0a View commit details
    Browse the repository at this point in the history
  32. ARM: dts: stm32: add FMC2 EBI support for stm32mp15 EV boards

    This patch adds FMC2 External Bus Interface support for stm32mp15
    EV boards.
    
    Change-Id: Ib52fa3ae932cf9068649c197ecfedb70db31f078
    Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/172780
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Christophe Kerello authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    dda15e3 View commit details
    Browse the repository at this point in the history
  33. crypto: stm32/crc: avoid lock if hardware is already used

    If STM32 CRC device is already in use, calculate CRC by software.
    
    This will release CPU constraint for a concurrent access to the
    hardware, and avoid masking irqs during the whole block processing.
    
    Fixes: af5eb4b ("crypto: stm32/crc: protect from concurrent accesses")
    
    Signed-off-by: Nicolas Toromanoff <nicolas.toromanoff@st.com>
    Change-Id: I1c015b44735a1b418cc646e543aedaaf8162c4d9
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/167872
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Lionel DEBIEVE <lionel.debieve@st.com>
    toromanoSTM authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    93870ab View commit details
    Browse the repository at this point in the history
  34. ARM: dts: stm32: remove OP-TEE node on stm32mp15

    Remove the optional OP-TEE firmware nodes in stm32mp15 device tree.
    
    This patch revert commit d17e72a ("ARM: dts: stm32: add OP-TEE node
    and its reserved-memory node for stm32mp157") as the needed nodes will be
    added in kernel device tree by boot loaders (U-Boot or OP-TEE)
    when OP-TEE is detected.
    
    Change-Id: Ic6d56ae3cd90d17f12115d062fd2eae5cba31382
    Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/171490
    Tested-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    patrickdelaunay authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    3ef2494 View commit details
    Browse the repository at this point in the history
  35. dt-bindings: serial: stm32: add fifo threshold configuration

    Add two optional DT properties, to configure RX and TX fifo threshold:
    - st,rx-fifo-threshold-bytes
    - st,tx-fifo-threshold-bytes
    
    Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com>
    Change-Id: I1f4705dab1e256cc86836790cd2ae73db2bcbbf0
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/168693
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Tested-by: Erwan LE RAY <erwan.leray@st.com>
    Fabrice Gasnier authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    362e1f8 View commit details
    Browse the repository at this point in the history
  36. serial: stm32: add fifo threshold configuration

    Add support for two optional DT properties, to configure RX and TX FIFO
    threshold:
    - st,rx-fifo-threshold-bytes
    - st,tx-fifo-threshold-bytes
    This replaces hard-coded 8 bytes threshold. Keep 8 as the default value if
    not specified, for backward compatibility.
    
    Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com>
    Change-Id: Ie8bb93231aa6fa6332c0dd218cdb64182eb8b2b8
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/168694
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Tested-by: Erwan LE RAY <erwan.leray@st.com>
    Fabrice Gasnier authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    4d4850e View commit details
    Browse the repository at this point in the history
  37. serial: stm32: rework wakeup from low power modes

    This is a precursor patch to ease further improvements on wakeup from low
    power modes:
    - move RX DMA code related to wakeup into stm32_usart_serial_en_wakeup()
      routine.
    - Don't enable/disable wakeup on uninitialized port
    
    Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com>
    Change-Id: I5a410729f546e830252da1a64e4f5616396837b1
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/172288
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Erwan LE RAY <erwan.leray@st.com>
    Tested-by: Erwan LE RAY <erwan.leray@st.com>
    Fabrice Gasnier authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    ad5f577 View commit details
    Browse the repository at this point in the history
  38. serial: stm32: push DMA RX data before suspending

    There maybe data stored in DMA RX buffer, when suspending. The data needs
    to be pushed to the upper layer. We can't rely on the timeout IRQ (RTOR)
    that can't be triggered into low power state. So safely clear DMA request
    (DMAR), force the DMA reception routines to push RX buffer content, before
    disabling RX DMA. This way, handover to pio mode should be safe.
    Only call tty_flip_buffer_push() when there is RX data to handle.
    
    Change-Id: Iddf6de23f5bed27b5270740710188a7fb9523840
    Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/167389
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Tested-by: Erwan LE RAY <erwan.leray@st.com>
    Fabrice Gasnier authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    18bdd44 View commit details
    Browse the repository at this point in the history
  39. serial: stm32: prevent race when flushing RX DMA data

    There may a race, when disabling DMA request upon suspend. Data maybe
    received under IRQ and pushed before stm32_usart_receive_chars() has
    pushed older data from DMA rx_buf upon suspend.
    The sequence in suspend routine needs proper locking to avoid this: move
    the locking outside of stm32_usart_receive_chars().
    
    Change-Id: I38b6f1e7028abfd8c3eeefe89ef831d5ac83d81c
    Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/167486
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Tested-by: Erwan LE RAY <erwan.leray@st.com>
    Fabrice Gasnier authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    5de1ac9 View commit details
    Browse the repository at this point in the history
  40. serial: stm32: flush RX FIFO before suspending

    There may be data residue in the RX FIFO while suspending. Flush it at
    suspend time. Receiver timeout interrupt won't trigger later in low power
    mode, so call stm32_usart_receive_chars() in case there's data to handle.
    
    Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com>
    Change-Id: Id37494bfb9530313b37bf9c242abc95e956f10ca
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/172289
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Tested-by: Erwan LE RAY <erwan.leray@st.com>
    Fabrice Gasnier authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    673c842 View commit details
    Browse the repository at this point in the history
  41. dt-bindings: serial: Document CTS/RTS gpios in STM32 UART

    Document the use of CTS/RTS gpios for flow control in STM32 UART
    controller. These properties can be used instead of 'uart-has-rtscts' or
    'st,hw-flow-ctrl' (deprecated) for making use of any gpio pins for flow
    control instead of dedicated pins. It should be noted that both CTS/RTS
    and 'uart-has-rtscts' or 'st,hw-flow-ctrl' (deprecated) properties cannot
    co-exist in a design.
    
    Signed-off-by: Manivannan Sadhasivam <mani@kernel.org>
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: I6da278bfb4e5514a180c1af49912f1ca995a931a
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/173480
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Erwan Le Ray authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    53ea847 View commit details
    Browse the repository at this point in the history
  42. tty: serial: Add modem control gpio support for STM32 UART

    STM32 UART controllers have the built in modem control support using
    dedicated gpios which can be enabled using 'st,hw-flow-ctrl' flag in DT.
    But there might be cases where the board design need to use different
    gpios for modem control.
    
    For supporting such cases, this commit adds modem control gpio support
    to STM32 UART controller using mctrl_gpio driver.
    
    Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
    Signed-off-by: Manivannan Sadhasivam <mani@kernel.org>
    Acked-by: Fabrice Gasnier <fabrice.gasnier@st.com>
    Link: https://lore.kernel.org/r/20200420170204.24541-3-mani@kernel.org
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    (cherry picked from commit 6cf61b9)
    Change-Id: I1e6b61678bcbbbe0f1f19b47de497b5679a4642f
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/173481
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Erwan LE RAY <erwan.leray@st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Tested-by: Erwan LE RAY <erwan.leray@st.com>
    Mani-Sadhasivam authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    507a757 View commit details
    Browse the repository at this point in the history
  43. serial: stm32: rename too generic function names

    Rename too generic stm32_enable_ms and stm32_disable_ms function names by
    adding "usart" prefix, in order to ease the usage of kernel trace and
    tools, such as f-trace.
    
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: Ib483086d52012d7daa9755f9928b0c1161b1a21c
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/173482
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Erwan Le Ray authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    17783e0 View commit details
    Browse the repository at this point in the history
  44. serial: stm32: update conflicting RTS/CTS config comment

    The comment for conflicting RTS/CTS config refers to "st, hw-flow-ctrl",
    but this property is deprecated since the generic RTS/CTS property has
    been introduced by the patch 'serial: stm32: Use generic DT binding for
    announcing RTS/CTS lines'.
    Update the comment to refer to both generic and deprecated RTS/CTS
    properties.
    
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: Ifb26108acb3a5069bd21bd963ef34f1c86ea7241
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/173483
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Erwan Le Ray authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    d472811 View commit details
    Browse the repository at this point in the history
  45. serial: stm32: fix a deadlock in set_termios

    CTS/RTS GPIOs support that has been added recently to STM32 UART driver has
    introduced scheduled code in a set_termios part protected by a spin lock.
    This generates a potential deadlock scenario:
    
    Chain exists of:
    &irq_desc_lock_class --> console_owner --> &port_lock_key
    
    Possible unsafe locking scenario:
    
         CPU0                    CPU1
         ----                    ----
    lock(&port_lock_key);
                               lock(console_owner);
                               lock(&port_lock_key);
    lock(&irq_desc_lock_class);
    
    *** DEADLOCK ***
    4 locks held by stty/766:
    
    Move the scheduled code after the spinlock.
    
    Fixes: 6cf61b9 ("tty: serial: Add modem control gpio support for STM32 UART")
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: I441ec0ebf18ea4895a198764b0cb2ba2537bcbbb
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/173484
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Erwan Le Ray authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    7415e61 View commit details
    Browse the repository at this point in the history
  46. ARM: dts: stm32: remove OP-TEE node on stm32mp151

    Optional OP-TEE firmware nodes have been removed from stm32mp15 boards.
    Remove also the optee firmware node from stm32mp151.
    
    Change-Id: Ia589c99f1efc62c7f438c00f1857b42be9ea8b51
    Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/174568
    Tested-by: Amelie DELAUNAY <amelie.delaunay@st.com>
    Reviewed-by: Amelie DELAUNAY <amelie.delaunay@st.com>
    etienne-lms authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    46e2887 View commit details
    Browse the repository at this point in the history
  47. ASoC: dt-bindings: stm32: convert i2s to json-schema

    Convert the STM32 I2S bindings to DT schema format using json-schema.
    
    Signed-off-by: Olivier Moysan <olivier.moysan@st.com>
    Reviewed-by: Rob Herring <robh@kernel.org>
    Link: https://lore.kernel.org/r/20200207120345.24672-1-olivier.moysan@st.com
    Signed-off-by: Mark Brown <broonie@kernel.org>
    Change-Id: I3d008a411415bb5e01b1854952ceb3f691a86e4c
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/174358
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Arnaud POULIQUEN <arnaud.pouliquen@st.com>
    Olivier Moysan authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    392796e View commit details
    Browse the repository at this point in the history
  48. ASoC: dt-bindings: add mclk provider support to stm32 i2s

    Add master clock provider support to STM32 I2S.
    
    Signed-off-by: Olivier Moysan <olivier.moysan@st.com>
    Change-Id: Ib23099e06c1bb9dbd351d69909a66704219cd7f0
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/174359
    Tested-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Olivier Moysan authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    3bd61eb View commit details
    Browse the repository at this point in the history
  49. ASoC: stm32: i2s: add master clock provider

    Add master clock generation support in STM32 I2S driver.
    The master clock provided by I2S can be used to feed a codec.
    
    Signed-off-by: Olivier Moysan <olivier.moysan@st.com>
    Change-Id: Ifdf7d650257673b3049926137dba2558dac2dc6f
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/174360
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Arnaud POULIQUEN <arnaud.pouliquen@st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Olivier Moysan authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    d0e45d7 View commit details
    Browse the repository at this point in the history
  50. pinctrl: stm32: fix dbg_show shift

    Fix alternate functions display when pins are missing.
    
    Signed-off-by: Valentin Caron <valentin.caron@st.com>
    Change-Id: Id829ad5af4cc107ba49254afa34aabfa3ed7e38c
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/175500
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    VCASTM authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    e8a5527 View commit details
    Browse the repository at this point in the history
  51. serial: mctrl_gpio: add a new API to enable / disable wake_irq

    Add a new API to enable / disable wake_irq in order to enable gpio irqs as
    wakeup irqs for the uart port.
    
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: If047bb80cb9232a75c657b3addd5090af0ccc6ee
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/173918
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Erwan Le Ray authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    42a99ad View commit details
    Browse the repository at this point in the history
  52. serial: stm32: enable / disable wake irqs for mcrtl_gpio wakeup sources

    Enable mctrl_gpio wake_irq if device_may_wakeup when usart is suspended,
    and disable mctrl_gpios wake_irq if device_may_wakeup when usart is
    resumed.
    
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: Id8de28c1922eb5a29a53149f55fac39237379cee
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/173919
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Erwan Le Ray authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    3cf816c View commit details
    Browse the repository at this point in the history
  53. ARM: dts: stm32: remove uart4 pinctrl-3 configuration for stm32mp15xx…

    … edx boards
    
    Remove the unnecessary uart4 pinctrl-3 configuration for stm32mp15xx edx
    boards, as this pincrl-3 is no more present in pinctrl names list. This
    configuration previously used for no_console_suspend has been removed.
    
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: I4541876d3ada9bd18adb839ac91499a67d6c040c
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/173988
    Tested-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Erwan Le Ray authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    88ce6b3 View commit details
    Browse the repository at this point in the history
  54. ARM: dts: stm32: remove reset support from uart nodes on stm32mp15x

    STM32 serial can be reset via reset controller.
    Remove the support of reset from uart nodes on stm32mp151 and
    stm32mp15-no-scmi device trees.
    
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: I629ef2a11e39e1edc3fd2938b939624ee01960a2
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/174008
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Erwan Le Ray authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    56dcb34 View commit details
    Browse the repository at this point in the history
  55. ARM: dts: stm32: change adc2 config on stm32mp157f-dk2 a7-examples

    Configure adc2 instance in IRQ mode, on STM32MP157F-DK2
    A7 examples (as done in STM32MP157C-DK2 A7 examples).
    
    Change-Id: Ia4c0699c79a87519cfc9c8b55ffdea36ba436ea9
    Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/175581
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Olivier MOYSAN <olivier.moysan@st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Fabrice Gasnier authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    e862a7d View commit details
    Browse the repository at this point in the history
  56. iio: adc: stm32-adc: adapt clock duty cycle for proper operation

    For proper operation, STM32 ADC should be used with a clock duty cycle
    of 50%, in the range of 49% to 51%. Depending on the clock tree, divider
    can be used in case clock duty cycle is out of this range.
    In case clk_get_scaled_duty_cycle() returns an error, kindly apply a
    divider by default (don't make the probe fail).
    
    Change-Id: If129dabdce2b665ddecdba411735463513dc2add
    Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/175106
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Olivier MOYSAN <olivier.moysan@st.com>
    Fabrice Gasnier authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    6441181 View commit details
    Browse the repository at this point in the history
  57. irqchip: stm32: Add lptim1 exti direct even support

    LPTIM1 exit 47 is mapped to GIC 93.
    
    Signed-off-by: Benjamin Gaignard <benjamin.gaignard@st.com>
    Change-Id: I4ee8e7888117684dd7b765d9308fc2bc50107fa8
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/176159
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Tested-by: Alexandre TORGUE <alexandre.torgue@st.com>
    benjamingaignard authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    d7f511e View commit details
    Browse the repository at this point in the history
  58. irqchip/stm32: manage imr at each mask/unmask for direct event

    Enable EXTI line through IMR also on direct event.
    
    Change-Id: I352053da39242f92ea4ff5b7f29a66b49e9db803
    Signed-off-by: Loic Pallardy <loic.pallardy@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/176169
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Tested-by: Alexandre TORGUE <alexandre.torgue@st.com>
    ydrallap authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    29ee1fe View commit details
    Browse the repository at this point in the history
  59. ARM: dts: stm32: update dsi node in stm32mp15-no-scmi.dtsi

    If building DT for STM32MP151 or STM32MP153 SoCs, the following
    issue occurs:
    
      DTC     arch/arm/dts/stm32mp157d-ev1.dtb
    Error: u-boot/arch/arm/dts/stm32mp15-no-scmi.dtsi:104.1-5 Label or path dsi not found
    FATAL ERROR: Syntax error parsing input tree
    scripts/Makefile.lib:308: recipe for target 'arch/arm/dts/stm32mp153a-as-fftp01-mx.dtb' failed
    make[3]: *** [arch/arm/dts/stm32mp153a-as-fftp01-mx.dtb] Error 1
    make[3]: *** Waiting for unfinished jobs....
    
    To fix it, the addon for dsi clocks must be updated in
    stm32mp15-no-scmi.dtsi as dsi node not defined STM32MP151 and
    STM32MP153 SoCs.
    
    Change-Id: Id8114ed64671bf9f83ea903c2794fddc57e3a690
    Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/175805
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Reviewed-by: Patrice CHOTARD <patrice.chotard@st.com>
    Tested-by: Alexandre TORGUE <alexandre.torgue@st.com>
    patrickdelaunay authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    ef97a0b View commit details
    Browse the repository at this point in the history
  60. dt-bindings: reset: Add MCU HOLD BOOT ID for SCMI reset domains on st…

    …m32mp15
    
    Add ID to SCMI0 to exposes reset controller for the MCU HOLD BOOT resource.
    
    Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com>
    Change-Id: Ifee939885ade820e194babdf3b1411903a25aee9
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/175838
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabien DESSENNE <fabien.dessenne@st.com>
    arnopo authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    271454a View commit details
    Browse the repository at this point in the history
  61. dt-bindings: remoteproc: update Hold boot binding for stm32 remote pr…

    …ocessor driver
    
    The MCU hold boot is now managed as a generic reset by the SCMI controller.
    Update the bindings according to this new management.
    
    Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com>
    Change-Id: I70cbd039975cddc4b194c24e41cc0ffe3a1c21ac
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/175839
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabien DESSENNE <fabien.dessenne@st.com>
    arnopo authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    7005833 View commit details
    Browse the repository at this point in the history
  62. ARM: dts: stm32: update MCU hold boot declaration on stm32mp15

    Update the MCU hold boot declaration in the remote proc node.
    With this patch the hold boot is managed by the SCMI controller
    as a reset.
    
    Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com>
    Change-Id: I47950a5a5cea7a4c3c103a361a30d58b6ff80746
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/175840
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    arnopo authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    1304c6d View commit details
    Browse the repository at this point in the history
  63. remoteproc: stm32: update the hold boot management

    Update the MCU hold boot management. The hold boot is managed
    by the SCMI controller as a reset.
    
    Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com>
    Change-Id: I7172e58fa747afb43d04cbcd71ad12bb7e27429e
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/175841
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabien DESSENNE <fabien.dessenne@st.com>
    arnopo authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    ce92c44 View commit details
    Browse the repository at this point in the history
  64. iio: adc: stm32-adc: dma transfers cleanup

    - Remove processing related to DMA in irq handler as this
    data transfer is managed directly in DMA callback.
    - Update comment in stm32_adc_set_watermark() function.
    
    Signed-off-by: Olivier Moysan <olivier.moysan@st.com>
    Change-Id: I715fd734d77a4f574f9e9a97e57bdb903bb29664
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/175904
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Olivier Moysan authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    206937a View commit details
    Browse the repository at this point in the history
  65. ARM: dts: stm32: update MCU hold boot declaration on stm32mp15 No SCMI

    Update MCU hold boot declaration on stm32mp15 No SCMI devicetree.
    
    Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
    Change-Id: I1db3a7631d7a875f563e79aac4cb131e3ec4c9f0
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/176331
    Tested-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    patrickdelaunay authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    77b44e5 View commit details
    Browse the repository at this point in the history
  66. ARM: dts: stm32: fix mac address of STM32MP15 avenger board

    Remove the avenger modifications:
    - this board is not managed by ST; updates are only done
      to avoid compilation issues
    - at upstreami, the MAC address is managed in EEPROM on SOM
      and not in SOC OTP
    
    Fixes: f6d7ae4e93b69dc55bed3c38927f14ac3ed5800b ("ARM: dts: stm32: load mac address from NVMEM for STM32MP1 boards")
    Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
    Change-Id: If0cd46d2817ec29f17a79b9c262db35c0f785592
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/176334
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Tested-by: Alexandre TORGUE <alexandre.torgue@st.com>
    patrickdelaunay authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    41a73a8 View commit details
    Browse the repository at this point in the history
  67. mfd: stm32: Add defines to be used for clkevent purpose

    Add defines to be able to enable/clear irq and configure one shot mode.
    
    Signed-off-by: Benjamin Gaignard <benjamin.gaignard@st.com>
    Signed-off-by: Lee Jones <lee.jones@linaro.org>
    (cherry picked from commit e0bcc58)
    Change-Id: I8443da06b113be44bc4b1b0f39313f090902c14e
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/176198
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Tested-by: Alexandre TORGUE <alexandre.torgue@st.com>
    benjamingaignard authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    392572d View commit details
    Browse the repository at this point in the history
  68. mfd: stm32: Enable regmap fast_io for stm32-lptimer

    Because stm32-lptimer need to write in registers in interrupt context
    enable regmap fast_io to use a spin_lock to protect registers access
    rather than a mutex.
    
    Signed-off-by: Benjamin Gaignard <benjamin.gaignard@st.com>
    Signed-off-by: Lee Jones <lee.jones@linaro.org>
    (cherry picked from commit 45d9306)
    Change-Id: I6bdade9e193589463d33ff227ae016f8ef8deb81
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/176199
    Tested-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    benjamingaignard authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    b9a4f1e View commit details
    Browse the repository at this point in the history
  69. dt-bindings: mfd: Document STM32 low power timer bindings

    Add a subnode to STM low power timer bindings to support timer driver.
    
    Signed-off-by: Benjamin Gaignard <benjamin.gaignard@st.com>
    Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
    Change-Id: Ifd9afd24e63c78ed14f40ee574818d2f2aceb1ef
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/176200
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    16399d2 View commit details
    Browse the repository at this point in the history
  70. clocksource: Add Low Power STM32 timers driver

    Implement clock event driver using low power STM32 timers.
    Low power timer counters running even when CPUs are stopped.
    It could be used as clock event broadcaster to wake up CPUs but not like
    a clocksource because each it rise an interrupt the counter restart from 0.
    
    Low power timers have a 16 bits counter and a prescaler which allow to
    divide the clock per power of 2 to up 128 to target a 32KHz rate.
    
    Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
    Signed-off-by: Pascal Paillet <p.paillet@st.com>
    Acked-by: Daniel Lezcano <daniel.lezcano@linaro.org>
    Signed-off-by: Lee Jones <lee.jones@linaro.org>
    (cherry picked from commit 48b41c5)
    Change-Id: Ia0d5d73fe22714c01dabc062a6b07b639c3ab2f9
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/176201
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Tested-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Benjamin-Gaignard authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    a8e8fc9 View commit details
    Browse the repository at this point in the history
  71. cpuidle: add stm32 cpu_idle driver

    Add a driver to call a SMC when cpu enters in idle. This call can be
    linked to a power domain: regarding to PM runtime activity of devices
    attached to a power domain, deepest idle state can be allowed or not.
    
    Change-Id: Ia177c9b742cefe9b486a4c7b3345607b6807a619
    Signed-off-by: Pascal Paillet <p.paillet@st.com>
    Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/176336
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    ppaillet authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    d41ab08 View commit details
    Browse the repository at this point in the history
  72. i2c: stm32f7: move save and restore configuration at pm_runtime level

    As secure code may used I2C for PMIC access during low power sequence,
    driver should reapply its configuration when exiting from pm_runtime
    suspend state.
    
    Signed-off-by: Loic Pallardy <loic.pallardy@st.com>
    Change-Id: I9c42c7cd78aa2697014164fff031a8712cb73d56
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/176172
    Tested-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Alain VOLMAT <alain.volmat@st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    ydrallap authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    c385378 View commit details
    Browse the repository at this point in the history
  73. remoteproc: add TEE support

    Add a remoteproc TEE (Trusted Execution Environment) device
    that will be probed by the TEE bus. If the associated Trusted
    application is supported on secure part this device offers a client
    interface to load a firmware in the secure part.
    This firmware could be authenticated and decrypted by the secure
    trusted application.
    
    Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com>
    Change-Id: I0b90a638f24a355164ce1d6d6d3e1dfd4d207935
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/175990
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Etienne CARRIERE <etienne.carriere@st.com>
    arnopo authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    1008213 View commit details
    Browse the repository at this point in the history
  74. remoteproc: stm32: add support of an OP-TEE TA to load the firmware

    Use new TEE remoteproc device to manage a remote firmware in a secure
    trusted application.
    
    Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com>
    Change-Id: Ia38d87b34c4be268e17e5be3233d4f6b665a1b8d
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/175991
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Etienne CARRIERE <etienne.carriere@st.com>
    arnopo authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    638dca5 View commit details
    Browse the repository at this point in the history
  75. dt-bindings: remoteproc: add compatibility for TEE support

    Rework compatibility description accorting to the support of
    the authenticated firmware relying on OP-TEE authentication
    
    Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com>
    Change-Id: Ief9f4d0a769f458da0088c1e0bb90f976c66a020
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/175992
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Etienne CARRIERE <etienne.carriere@st.com>
    arnopo authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    84762aa View commit details
    Browse the repository at this point in the history
  76. irqchip/stm32-exti: fix W=1 build warning

    Fix the following warning:
    
    drivers/irqchip/irq-stm32-exti.c: In function ‘stm32_exti_h_domain_alloc’:
    drivers/irqchip/irq-stm32-exti.c:693:24: warning: comparison of unsigned
    expression >= 0 is always true [-Wtype-limits]
    693 |   if (desc->irq_parent >= 0) {
    
    Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
    Change-Id: If993c794dac17eaf796094afaf15e163cb72597c
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/176520
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    0ad6869 View commit details
    Browse the repository at this point in the history
  77. remoteproc: stm32: remove the secure chip check

    As hold boot reset is now managed by reset (SCMI or RCC)
    the secured_soc information is no more used.
    
    Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
    Change-Id: I39904d2492cf2129e6bf0a3430d6c69dd62f1954
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/176332
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Arnaud POULIQUEN <arnaud.pouliquen@st.com>
    Tested-by: Arnaud POULIQUEN <arnaud.pouliquen@st.com>
    patrickdelaunay authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    81476d4 View commit details
    Browse the repository at this point in the history
  78. serial: stm32: add tty buffer overrun errors handling in dma mode

    At high baud rates, some overruns can occurs in tty buffer.
    Add the support of tty buffer overrun errors handling in dma mode.
    
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: I1159ef0e14cdec0d5ee1260c55fa593098db4122
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/175811
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Erwan Le Ray authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    f99cda4 View commit details
    Browse the repository at this point in the history
  79. serial: stm32: update throttle and unthrottle ops for dma mode

    UART driver should trig hardware flow control when it is notified by
    throttle ops.
    Shutdown DMA and switch to PIO mode in throttle ops. The hardware flow
    control is triggered when the RX FIFO is full.
    
    Disable DMA request line (if enabled) in throttle ops, so the RX data
    gets queued into the FIFO.
    Hardware flow control is triggered when RX FIFO is full.
    
    Switch back to DMA mode (re-enable DMA request line) in unthrottle ops.
    Hardware flow control is stopped when FIFO is not full any more.
    
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: I7aacd83400706d9205726a7573f18f966e896555
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/175985
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Erwan Le Ray authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    fdfc469 View commit details
    Browse the repository at this point in the history
  80. serial: stm32: move dma rx disabling from shutdown to stop_rx

    The stop_rx ops should stop characters reception. This is not the case in
    DMA mode.
    Move the move DMA request line and and RX DMA disabling from shutdown
    to stop_rx.
    
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: I25d53883b38cec46134e1621669884d6d7f27ede
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/175986
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Erwan Le Ray authored and atorgue committed Sep 9, 2020
    Configuration menu
    Copy the full SHA
    d3afae7 View commit details
    Browse the repository at this point in the history

Commits on Sep 28, 2020

  1. ARM: config: Enable STM32 cpuidle

    Allow cpu idle configuration.
    This will add menu governor on STM32MP SoCs
    
    Signed-off-by: Benjamin Gaignard <benjamin.gaignard@st.com>
    Change-Id: If7c6daf0d1160ee9ec4a49d6bf4a1b48d281e305
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/178274
    Tested-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    benjamingaignard authored and atorgue committed Sep 28, 2020
    Configuration menu
    Copy the full SHA
    b5e0f93 View commit details
    Browse the repository at this point in the history
  2. dt-bindings: phy: add vbus-supply optional property to phy-stm32-usbphyc

    This patch adds vbus-supply optional property to phy sub-nodes.
    A regulator for USB VBUS may be needed for host mode.
    
    Change-Id: Icab0f93322875d83c4d603268021623234c653e3
    Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/176361
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    ADESTM authored and atorgue committed Sep 28, 2020
    Configuration menu
    Copy the full SHA
    c1be59f View commit details
    Browse the repository at this point in the history
  3. phy: stm32: manage optional vbus regulator on phy_power_on/off

    This patch adds support for optional vbus regulator.
    It is managed on phy_power_on/off calls and may be needed for host mode.
    
    Change-Id: I331b49c206a897ab7640f633673fa4e59eb55290
    Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/176362
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    ADESTM authored and atorgue committed Sep 28, 2020
    Configuration menu
    Copy the full SHA
    823520c View commit details
    Browse the repository at this point in the history
  4. ARM: dts: stm32: add vbus-supply to usbphyc_port0 on stm32mp15xx-evx

    On stm32mp15xx-evx, if JP7 is set on [2:3], VBUS is coming from the
    vbus_sw regulator, and not from VIN (when JP7 is on [1:2]) on the
    connectors CN20.
    USBPHYC port0 is used by the USB_Host CN20 connectors.
    Add vbus-supply property to usbphyc_port0 node, to manage this case.
    
    Change-Id: I7effd614b54555cf2cb37d9df75b529ceb125c0d
    Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/176363
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    ADESTM authored and atorgue committed Sep 28, 2020
    Configuration menu
    Copy the full SHA
    5b3aea2 View commit details
    Browse the repository at this point in the history
  5. clk: stm32mp1: fix Kernel panic at boot when disabling sdmmc2

    When we disable SDMMC1, SDMMC2, FMC, QSPI clocks we have to put
    their MUX on save position.
    In your case we are trying to set a MUX at save position to a bus
    clock which have no MUX.
    The bus clocks of SDMMC1, SDMMC2, QSPI and FMC are useless, we can
    suppress it.
    Use also flag instead a counter to know if we have to set the MUX
    in safe position to manage the disable of clock ignore unused.
    
    Change-Id: I7317e12d0d195ea7c9f36971d16c581901788a7a
    Signed-off-by: Gabriel Fernandez <gabriel.fernandez@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/176764
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Gabriel-Fernandez-stm authored and atorgue committed Sep 28, 2020
    Configuration menu
    Copy the full SHA
    34a7189 View commit details
    Browse the repository at this point in the history
  6. hwspinlock: stm32: enable clock at probe

    Set the clock during probe and keep its control during suspend / resume
    operations.
    This fixes an issue when CONFIG_PM is not set and where the clock is
    never enabled.
    
    Make use of devm_ functions to simplify the code.
    
    Change-Id: I47aead7fee24f38ed867d2ba04fb66e0520544b9
    Signed-off-by: Fabien Dessenne <fabien.dessenne@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/177170
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Arnaud POULIQUEN <arnaud.pouliquen@st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Fabien Dessenne authored and atorgue committed Sep 28, 2020
    Configuration menu
    Copy the full SHA
    7782557 View commit details
    Browse the repository at this point in the history
  7. irqchip/stm32-exti: Add all LP timer exti direct events support

    Add all remaining LP timer exti direct events, e.g. for LP Timer 2 to 5.
    
    Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com>
    Change-Id: I6c611dc3af2faee3d867935e484e15086ebc6534
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/178198
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Fabrice Gasnier authored and atorgue committed Sep 28, 2020
    Configuration menu
    Copy the full SHA
    20cf85d View commit details
    Browse the repository at this point in the history
  8. ARM: dts: stm32: Add LPtimer irqs on stm32mp151

    Add all LPtimer irqs on stm32mp151.
    
    Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com>
    Change-Id: I328df99bc8b32dd5eddabc508da0bfe86c639b2f
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/178199
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Fabrice Gasnier authored and atorgue committed Sep 28, 2020
    Configuration menu
    Copy the full SHA
    c8945b5 View commit details
    Browse the repository at this point in the history
  9. iio: adc: stm32-adc: fix a regression when using dma and irq

    Since overrun interrupt support has been added, there's a regression when
    two ADCs are used at the same time, with:
    - an ADC configured to use IRQs. EOCIE bit is set. The handler is normally
      called in this case.
    - an ADC configured to use DMA. EOCIE bit isn't set. EOC triggers the DMA
      request. It's then automatically cleared by DMA read. But the handler
      gets called due to status bit is temporarily set (IRQ triggered by the
      other ADC).
    
    This is a regression as similar issue had been fixed earlier by
    commit dcb1092 ("iio: adc: stm32-adc:
    fix a race when using several adcs with dma and irq").
    Issue is that stm32_adc_eoc_enabled() returns non-zero value (always)
    since OVR bit has been added and enabled for both DMA and IRQ case.
    
    Remove OVR mask in IER register, and rely only on CSR status for overrun.
    To avoid subsequent calls to interrupt routine on overrun, CSR OVR bit has
    to be cleared. CSR OVR bit cannot be cleared directly by software.
    To do this ADC must be stopped first, and OVR bit in ADC ISR has
    to be cleared.
    Also add a check in ADC IRQ handler to report spurious IRQs.
    
    Fixes: cc06e67 ("iio: adc: stm32-adc: Add check on overrun interrupt")
    
    Signed-off-by: Olivier Moysan <olivier.moysan@st.com>
    Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com>
    Change-Id: I74283d07fb2c69e2a117c1cf39972e4c5d864190
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/176382
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Olivier Moysan authored and atorgue committed Sep 28, 2020
    Configuration menu
    Copy the full SHA
    c179a84 View commit details
    Browse the repository at this point in the history
  10. drm/bridge/synopsys: dsi: disable PM runtime on probe fail

    While current implementation of mipi_dsi_host_register() does
    never fail, it could change in the future. Checking the returned
    value is a good practice.
    On probe exit for fail of mipi_dsi_host_register(), it's missing
    the call to disable PM runtime to balance the enable just few
    lines above.
    
    Call pm_runtime_disable() in the reverse call order before exit
    with error.
    
    Signed-off-by: Antonio Borneo <antonio.borneo@st.com>
    Change-Id: Ic2c5008b7c22a3bd61878af6a89bfeb28f34e129
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/176574
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Yannick FERTRE <yannick.fertre@st.com>
    Reviewed-by: Philippe CORNU <philippe.cornu@st.com>
    Tested-by: Yannick FERTRE <yannick.fertre@st.com>
    AntonioBorneo authored and atorgue committed Sep 28, 2020
    Configuration menu
    Copy the full SHA
    4afcc72 View commit details
    Browse the repository at this point in the history
  11. drm/bridge/synopsys: dsi: fix remove of panel/bridge

    The commit "drm/bridge/synopsys: dsi: parse all endpoints"
    doesn't use anymore the endpoint 1 for the panel/bridge,
    but searches all the endpoints (after endpoint 0) for an
    available device.
    While it changes the code in attach(), the corresponding code in
    detach() is still using only the hardcoded endpoint 1.
    
    Fix it by using the panel/bridge selected in attach().
    Fix also the sequence order during detach() to match the order in
    attach().
    
    Signed-off-by: Antonio Borneo <antonio.borneo@st.com>
    Change-Id: I78b325c62aef43c9d86bb18b42dd924fa0edea6e
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/176575
    Tested-by: Yannick FERTRE <yannick.fertre@st.com>
    Reviewed-by: Yannick FERTRE <yannick.fertre@st.com>
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Philippe CORNU <philippe.cornu@st.com>
    AntonioBorneo authored and atorgue committed Sep 28, 2020
    Configuration menu
    Copy the full SHA
    6abcc91 View commit details
    Browse the repository at this point in the history
  12. drm/bridge/synopsys: dsi: fix initialization sequence

    The current driver calls drm_bridge_add(), to add the dsi bridge
    to the global bridge list, in dw_mipi_dsi_host_attach().
    Thus, it relies on the probing of panel or bridge sub-nodes to
    trigger the execution of dsi host attach() that will, in turn,
    call dw_mipi_dsi_host_attach().
    This causes an incomplete driver initialization if the panel or
    the next bridge is not present as sub-node, e.g. because it is an
    i2c device, thus sub-node of the respective i2c controller.
    
    Move the relevant code from host attach() to probe(), and the
    corresponding code from detach() to remove().
    
    Signed-off-by: Antonio Borneo <antonio.borneo@st.com>
    Change-Id: I29df3ddbfc43272d56bef95f32686b2055778571
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/176576
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Yannick FERTRE <yannick.fertre@st.com>
    Reviewed-by: Philippe CORNU <philippe.cornu@st.com>
    Tested-by: Yannick FERTRE <yannick.fertre@st.com>
    AntonioBorneo authored and atorgue committed Sep 28, 2020
    Configuration menu
    Copy the full SHA
    ab6eb15 View commit details
    Browse the repository at this point in the history
  13. media: stm32-dcmi: add 8-bit Bayer formats support

    Add BA81, GBRG, GRBG, RGGB formats in the list of
    supported capture formats.
    
    Change-Id: I25f43886df73a058710959a412ef597bd1194516
    Signed-off-by: Alain Volmat <alain.volmat@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/174351
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Hugues FRUCHET <hugues.fruchet@st.com>
    Reviewed-by: Philippe CORNU <philippe.cornu@st.com>
    avolmat-st authored and atorgue committed Sep 28, 2020
    Configuration menu
    Copy the full SHA
    8ce31d6 View commit details
    Browse the repository at this point in the history
  14. media: stm32-dcmi: fix unbalanced pm_runtime_get_sync

    pm_runtime_get_sync does not decrement the counter in case of
    error hence pm_runtime_put is necessary in the error handling
    path.
    
    Fixes: 152e0bf ("media: stm32-dcmi: add power saving support")
    
    Signed-off-by: Alain Volmat <alain.volmat@st.com>
    Change-Id: I7b7438103b4a27d0dee906820b1beda90928c197
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/167945
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Hugues FRUCHET <hugues.fruchet@st.com>
    Reviewed-by: Philippe CORNU <philippe.cornu@st.com>
    avolmat-st authored and atorgue committed Sep 28, 2020
    Configuration menu
    Copy the full SHA
    7cc4a3b View commit details
    Browse the repository at this point in the history

Commits on Sep 30, 2020

  1. opp: core: remove useless mutex protection in _allocate_opp_table

    Mutex protection in not needed in _allocate_opp_table as it this function
    is already called under mutex lock. Furthermore, it fixes the following
    issue seen with CONFIG_PROVE_LOCKING flag:
    
    [    3.648912] =========================
    [    3.648927] WARNING: held lock freed!
    [    3.648944] 5.4.56-00014-g7cc4a3bdec16 #7 Not tainted
    [    3.648957] -------------------------
    [    3.648976] kworker/1:1/22 is freeing memory df183c00-df183fff, with a lock still held there!
    [    3.648991] df183ca0 (&opp_table->lock){+.+.}, at: _opp_get_opp_table+0x1cc/0x224
    [    3.649037] 5 locks held by kworker/1:1/22:
    [    3.649049]  #0: df0086a0 ((wq_completion)events){+.+.}, at: process_one_work+0x200/0x858
    [    3.649082]  #1: df515f1c (deferred_probe_work){+.+.}, at: process_one_work+0x200/0x858
    [    3.649110]  #2: d1ff08cc (&dev->mutex){....}, at: __device_attach+0x34/0x17c
    [    3.649145]  #3: c139e5e0 (opp_table_lock){+.+.}, at: _opp_get_opp_table+0x1c/0x224
    [    3.649175]  #4: df183ca0 (&opp_table->lock){+.+.}, at: _opp_get_opp_table+0x1cc/0x224
    
    Fixes: cf1f361 ("opp: core: fix memory leak in probe deferral")
    
    Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
    Change-Id: I6da51fab26b698bb803a3a8ddf5454f73d8af956
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/178474
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    atorgue committed Sep 30, 2020
    Configuration menu
    Copy the full SHA
    ec5a465 View commit details
    Browse the repository at this point in the history
  2. ARM: dts: build stm32 dtb with symbols

    Build stm32 dtbs with symbols to allow bootloader to apply device tree
    overlays.
    
    Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
    Change-Id: I5f5d8d7eacd3243a2fb9dd5496733284ff48ae67
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/178489
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    atorgue committed Sep 30, 2020
    Configuration menu
    Copy the full SHA
    c231db3 View commit details
    Browse the repository at this point in the history
  3. ARM: configs: Add LP Timer clocksource support in multi_v7 addons fra…

    …gment
    
    Add LP Timer clocksource support in multi_v7 addons fragment for ASIM
    purpose.
    
    Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
    Change-Id: Ic5f2227531a192b17e70e57875a85d0b11f9307f
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/178443
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    atorgue committed Sep 30, 2020
    Configuration menu
    Copy the full SHA
    114dadb View commit details
    Browse the repository at this point in the history
  4. ARM: dts: stm32: add LP timer wakeup on stm32mp151

    LPtimer can be used to wakeup from stop mode on stm32mp151.
    Add wakeup-source and pd_core PM domain properties on LPtimer instances.
    
    Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com>
    Change-Id: I53bd5778331838f0a9876d940df320f9b2111326
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/178701
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Fabrice Gasnier authored and atorgue committed Sep 30, 2020
    Configuration menu
    Copy the full SHA
    f976b52 View commit details
    Browse the repository at this point in the history
  5. Revert "iio: adc: stm32-adc: fix runtime autosuspend delay when slow …

    …polling"
    
    This reverts commit 8ad7063.
    
    Change-Id: Ia4b7857e4d1325f4529fbb3d7484940cd235d6d0
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/178862
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Olivier MOYSAN <olivier.moysan@st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Tested-by: Olivier MOYSAN <olivier.moysan@st.com>
    Fabrice Gasnier authored and atorgue committed Sep 30, 2020
    Configuration menu
    Copy the full SHA
    4c5cf19 View commit details
    Browse the repository at this point in the history

Commits on Oct 1, 2020

  1. iio: adc: stm32-adc: fix runtime autosuspend delay when slow polling

    When the ADC is runtime suspended and starting a conversion, the stm32-adc
    driver calls pm_runtime_get_sync() that gets cascaded to the parent
    (e.g. runtime resume of stm32-adc-core driver). This also kicks the
    autosuspend delay (e.g. 2s) of the parent.
    Once the ADC is active, calling pm_runtime_get_sync() again (upon a new
    capture) won't kick the autosuspend delay for the parent (stm32-adc-core
    driver) as already active.
    
    Currently, this makes the stm32-adc-core driver go in suspend state
    every 2s when doing slow polling. As an example, doing a capture, e.g.
    cat in_voltageY_raw at a 0.2s rate, the auto suspend delay for the parent
    isn't refreshed. Once it expires, the parent immediately falls into
    runtime suspended state, in between two captures, as soon as the child
    driver falls into runtime suspend state:
    - e.g. after 2s, + child calls pm_runtime_put_autosuspend() + 100ms
      autosuspend delay of the child.
    - stm32-adc-core switches off regulators, clocks and so on.
    - They get switched on back again 100ms later in this example (at 2.2s).
    
    So, use runtime_idle() callback in stm32-adc-core driver to call
    pm_runtime_mark_last_busy() for the parent driver (stm32-adc-core),
    to avoid this.
    
    Fixes: 9bdbb11 ("iio: adc: stm32-adc: add power management support")
    Signed-off-by: Fabrice Gasnier <fabrice.gasnier@st.com>
    Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
    Link: https://lore.kernel.org/r/1593615328-5180-1-git-send-email-fabrice.gasnier@st.com
    Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
    (cherry picked from commit c537d34)
    
    Change-Id: Id04972e7d82475daa6449cb85426880663fd18a1
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/178863
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Olivier MOYSAN <olivier.moysan@st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Tested-by: Olivier MOYSAN <olivier.moysan@st.com>
    Fabrice Gasnier authored and atorgue committed Oct 1, 2020
    Configuration menu
    Copy the full SHA
    b7685f9 View commit details
    Browse the repository at this point in the history

Commits on Oct 14, 2020

  1. clk: stm32mp1: Add CLK_IGNORE_UNUSED to ck_trace clock

    Don't disable the tracing clock if it was set by bootloader or by
    an external debugger tool.
    
    Signed-off-by: Antonio Borneo <antonio.borneo@st.com>
    Change-Id: I8883d6442412c3610ee5d0f66cb74ba71766d79a
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/179914
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Gabriel FERNANDEZ <gabriel.fernandez@st.com>
    Reviewed-by: Raphael GALLAIS-POU <raphael.gallais-pou-ext@st.com>
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    AntonioBorneo authored and atorgue committed Oct 14, 2020
    Configuration menu
    Copy the full SHA
    8ad7975 View commit details
    Browse the repository at this point in the history
  2. ARM: dts: stm32: change dmic mapping on stm32mp15xx-evx

    dfsdm2(3) capture device records the same channel as dfsdm0(1).
    Use alternate channels to properly record from the expected
    microphones.
    
    Signed-off-by: Olivier Moysan <olivier.moysan@st.com>
    Change-Id: Ief0bc363123cc0ca77da7a7128bb0ee177bf47f7
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/180614
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Arnaud POULIQUEN <arnaud.pouliquen@st.com>
    Olivier Moysan authored and atorgue committed Oct 14, 2020
    Configuration menu
    Copy the full SHA
    57a1210 View commit details
    Browse the repository at this point in the history
  3. irqchip/stm32-exti: Avoid losing interrupts due to clearing pending b…

    …its by mistake
    
    In the current code, when the eoi callback of the exti clears the pending
    bit of the current interrupt, it will first read the values of fpr and
    rpr, then logically OR the corresponding bit of the interrupt number,
    and finally write back to fpr and rpr.
    
    We found through experiments that if two exti interrupts,
    we call them int1/int2, arrive almost at the same time. in our scenario,
    the time difference is 30 microseconds, assuming int1 is triggered first.
    
    there will be an extreme scenario: both int's pending bit are set to 1,
    the irq handle of int1 is executed first, and eoi handle is then executed,
    at this moment, all pending bits are cleared, but the int 2 has not
    finally been reported to the cpu yet, which eventually lost int2.
    
    According to stm32's TRM description about rpr and fpr: Writing a 1 to this
    bit will trigger a rising edge event on event x, Writing 0 has no
    effect.
    
    Therefore, when clearing the pending bit, we only need to clear the
    pending bit of the irq.
    
    Fixes: 927abfc ("irqchip/stm32: Add stm32mp1 support with hierarchy domain")
    Signed-off-by: qiuguorui1 <qiuguorui1@huawei.com>
    Signed-off-by: Marc Zyngier <maz@kernel.org>
    Cc: stable@vger.kernel.org # v4.18+
    Link: https://lore.kernel.org/r/20200820031629.15582-1-qiuguorui1@huawei.com
    Change-Id: I8f8292277de690c661562dedd4bb116f146d6ba9
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/180691
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Reviewed-by: Fabien DESSENNE <fabien.dessenne@st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Tested-by: Alexandre TORGUE <alexandre.torgue@st.com>
    qiuguorui1 authored and atorgue committed Oct 14, 2020
    Configuration menu
    Copy the full SHA
    84d8a87 View commit details
    Browse the repository at this point in the history
  4. remoteproc: tee: clean unused structure fields

    Supress useless fields in tee_rproc_context structure.
    
    Fixes: 4e83854f8604 ("remoteproc: add TEE support", 2020-04-23)
    
    Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com>
    Change-Id: I8574e57833a626e32bf0a6f73fcb1f7a4335fa90
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/179109
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabien DESSENNE <fabien.dessenne@st.com>
    arnopo authored and atorgue committed Oct 14, 2020
    Configuration menu
    Copy the full SHA
    058ed2a View commit details
    Browse the repository at this point in the history
  5. remoteproc: stm32: fix early boot support for firmware booted by OP-TEE

    Fix the attachement of a preloaded firmware booted
    by an OP-TEE trusted application.
    
    Fixes: 23421716b182 ("remoteproc: stm32: add support of an OP-TEE TA to load the firmware", 2020-05-14)
    
    Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com>
    Change-Id: I806805a7a641cd675f5aed758a156dc04fdaa0ee
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/179110
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabien DESSENNE <fabien.dessenne@st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    arnopo authored and atorgue committed Oct 14, 2020
    Configuration menu
    Copy the full SHA
    140041a View commit details
    Browse the repository at this point in the history
  6. remoteproc: stm32: fix crash recovery for firmware managed by OP-TEE

    Fix the management of the recovery from crash when firmware is booted
    by an OP-TEE trusted application.
    
    Fixes: 23421716b182 ("remoteproc: stm32: add support of an OP-TEE TA to load the firmware", 2020-05-14)
    
    Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com>
    Change-Id: I6a50e8e3ed9dfc1f08a7896262d8c374d82a2843
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/179111
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabien DESSENNE <fabien.dessenne@st.com>
    arnopo authored and atorgue committed Oct 14, 2020
    Configuration menu
    Copy the full SHA
    2acfc9f View commit details
    Browse the repository at this point in the history

Commits on Oct 15, 2020

  1. phy: stm32: set CRITICAL and IGNORE_UNUSED flags to ck_usbo_48m

    ck_usbo_48m is the parent clock of USBOTG peripheral clock.
    ck_usbo_48m is generated as soon as USBPHYC PLL is enabled.
    USBPHYC requires vdda1v1 and vdda1v8 supplies (PWR regulators).
    
    USBPHYC PHYs requires vdd3v3_usbhs. On our board, it is supplied by PMIC
    vdd_usb regulator.
    
    Regarding AN5031, vdda1v8 is always shutdown during standby. Moreover,
    vdd3v3_usbhs must not be present unless vdda1v8 is present, otherwise
    permanent STM32MP15x lines damage could occur.
    
    By setting ck_usbo_48m CLK_IGNORE_UNUSED & CLK_IS_CRITICAL flags, we ensure
    that the USBPHYC PLL will remain enabled, so reg11 and reg18 supplies will
    remain enabled too.
    
    This way, we ensure vdda1v8 will be present when vdd_usb is.
    This patch is a workaround, pending a proper implementation of USB wakeup
    feature.
    
    Change-Id: I0b635af691a9ef9f61f7434b0442fae216f2a734
    Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/179650
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    ADESTM authored and atorgue committed Oct 15, 2020
    Configuration menu
    Copy the full SHA
    6406e6b View commit details
    Browse the repository at this point in the history

Commits on Oct 20, 2020

  1. usb: dwc2: select USB_ROLE_SWITCH if USB_DWC2 instead of USB_DWC2_DUA…

    …L_ROLE
    
    Select USB_ROLE_SWITCH if USB_DWC2, and not only if USB_DWC2_DUAL_ROLE:
    drd.c is built whatever DWC2 mode (DUAL, HOST, PERIPHERAL) as it is used
    also to detect attach/detach (so a-valid/b-valid sessions).
    
    Change-Id: I42869aaa75fe58a74ca2fa12ce667bcaa436a5a1
    Fixes: bfed408 ("usb: dwc2: add DRD support with role switch and override Vbus/ID signals")
    Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/181007
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    ADESTM authored and atorgue committed Oct 20, 2020
    Configuration menu
    Copy the full SHA
    b39b894 View commit details
    Browse the repository at this point in the history
  2. usb: dwc2: fix dwc2_force_mode call in dwc2_ovr_init

    Instead of forcing the role to Device, check the dr_mode configuration.
    If the core is Host only, force the mode to Host, this to avoid the
    dwc2_force_mode warning:
    WARNING: CPU: 1 PID: 21 at drivers/usb/dwc2/core.c:615 dwc2_drd_init+0x104/0x17c
    
    When forcing mode to Host, dwc2_force_mode may sleep the time the host
    role is applied. To avoid sleeping while atomic context, move the call
    to dwc2_force_mode after spin_unlock_irqrestore. It is safe, as
    interrupts are not yet unmasked here.
    
    Change-Id: I7d852ecfd88dcf2174fd14b1fea2939d92a3ac04
    Fixes: a8dad50 ("usb: dwc2: force ID pin high on init of dual role overwrite")
    Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/181008
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    ADESTM authored and atorgue committed Oct 20, 2020
    Configuration menu
    Copy the full SHA
    1c8dae4 View commit details
    Browse the repository at this point in the history
  3. usb: dwc2: fix dwc2_drd_role_sw_set when clock could be disabled

    In case of USB_DR_MODE_PERIPHERAL, the OTG clock is disabled at the end of
    the probe (it is not the case if USB_DR_MODE_HOST or USB_DR_MODE_OTG).
    The clock is then enabled on udc_start.
    If dwc2_drd_role_sw_set is called before udc_start (it is the case if the
    usb cable is plugged at boot), GOTGCTL and GUSBCFG registers cannot be
    read/writen, so session cannot be overridden.
    To avoid this case, check the ll_hw_enabled value and enable the clock if
    it is available, and disable it after the override.
    
    Change-Id: I17aa02ef2ce8ea976c2b33dba46f1b3e1be4db47
    Fixes: bbb6e11 ("usb: dwc2: drd: fix sleeping while spinlock atomic context")
    Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/181009
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    ADESTM authored and atorgue committed Oct 20, 2020
    Configuration menu
    Copy the full SHA
    e5e4901 View commit details
    Browse the repository at this point in the history
  4. serial: stm32: add FIFO flush when port is closed

    Transmission complete error is sent when ISR_TC is not set. If port closure
    is requested despite data in TDR / TX FIFO has not been sent (because of
    flow control), ISR_TC is not set and error message is sent on port closure
    but also when a new port is opened.
    
    Flush the data when port is closed, and send the transmission complete
    error message only when ISR_TC is not set and TDR / TX FIFO is not empty.
    
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: I30c4cc1535d3a7bc1e8acd25b003f31fb555cd78
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/181423
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Erwan Le Ray authored and atorgue committed Oct 20, 2020
    Configuration menu
    Copy the full SHA
    a56628a View commit details
    Browse the repository at this point in the history

Commits on Nov 13, 2020

  1. can: m_can_platform: don't call m_can_class_suspend in runtime suspend

    commit 81f1f5a upstream.
    
        0704c57 can: m_can_platform: remove unnecessary m_can_class_resume() call
    
    removed the m_can_class_resume() call in the runtime resume path to get
    rid of a infinite recursion, so the runtime resume now only handles the device
    clocks.
    
    Unfortunately it did not remove the complementary m_can_class_suspend() call in
    the runtime suspend function, so those paths are now unbalanced, which causes
    the pinctrl state to get stuck on the "sleep" state, which breaks all CAN
    functionality on SoCs where this state is defined. Remove the
    m_can_class_suspend() call to fix this.
    
    Fixes: 0704c57 can: m_can_platform: remove unnecessary m_can_class_resume() call
    Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
    Link: https://lore.kernel.org/r/20200811081545.19921-1-l.stach@pengutronix.de
    Acked-by: Dan Murphy <dmurphy@ti.com>
    Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
    Signed-off-by: Antonio Borneo <antonio.borneo@st.com>
    Change-Id: I71a38eaa22a7e8372260d6e965e5d399f98b73d5
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/182087
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Tested-by: Alexandre TORGUE <alexandre.torgue@st.com>
    lynxeye-dev authored and atorgue committed Nov 13, 2020
    Configuration menu
    Copy the full SHA
    621e4f6 View commit details
    Browse the repository at this point in the history

Commits on Dec 7, 2020

  1. dmaengine: stm32-dma: mark pending descriptor complete in terminate_all

    To prevent accidental repeated completion, mark pending descriptor
    complete in terminate_all. It can be the case when terminate_all is called
    while no end of transfer interrupt occurs.
    
    Change-Id: I32b53ed79507b5b18d31b2e43e8a076bea424b8f
    Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/183517
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Erwan LE RAY <erwan.leray@st.com>
    Reviewed-by: Fabien DESSENNE <fabien.dessenne@st.com>
    Tested-by: Erwan LE RAY <erwan.leray@st.com>
    ADESTM authored and atorgue committed Dec 7, 2020
    Configuration menu
    Copy the full SHA
    0ccf1a4 View commit details
    Browse the repository at this point in the history
  2. net: phy: realtek: read actual speed to detect downshift

    commit d445dff upstream.
    
    At least some integrated PHY's in RTL8168/RTL8125 chip versions support
    downshift, and the actual link speed can be read from a vendor-specific
    register. Info about this register was provided by Realtek.
    More details about downshift configuration (e.g. number of attempts)
    aren't available, therefore the downshift tunable is not implemented.
    
    Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Antonio Borneo <antonio.borneo@st.com>
    Change-Id: Id8cd9c2aea6efcc716b9d2db73df2aafb56ce81e
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/186199
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Tested-by: Alexandre TORGUE <alexandre.torgue@st.com>
    hkallweit authored and atorgue committed Dec 7, 2020
    Configuration menu
    Copy the full SHA
    4159c12 View commit details
    Browse the repository at this point in the history
  3. net: phy: realtek: read actual speed on rtl8211f to detect downshift

    commit 4826d2c in netdev-next.
    
    The rtl8211f supports downshift and before commit 5502b21
    ("net: phy: use phy_resolve_aneg_linkmode in genphy_read_status")
    the read-back of register MII_CTRL1000 was used to detect the
    negotiated link speed.
    The code added in commit d445dff ("net: phy: realtek: read
    actual speed to detect downshift") is working fine also for this
    phy and it's trivial re-using it to restore the downshift
    detection on rtl8211f.
    
    Add the phy specific read_status() pointing to the existing
    function rtlgen_read_status().
    
    Signed-off-by: Antonio Borneo <antonio.borneo@st.com>
    Link: https://lore.kernel.org/r/478f871a-583d-01f1-9cc5-2eea56d8c2a7@huawei.com
    Tested-by: Yonglong Liu <liuyonglong@huawei.com>
    Link: https://lore.kernel.org/r/20201124230756.887925-1-antonio.borneo@st.com
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
    Change-Id: I450ee6a6d5a92c3b12bc5bac97aa527a526814af
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/186200
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Alexandre TORGUE <alexandre.torgue@st.com>
    Tested-by: Alexandre TORGUE <alexandre.torgue@st.com>
    AntonioBorneo authored and atorgue committed Dec 7, 2020
    Configuration menu
    Copy the full SHA
    1f532cc View commit details
    Browse the repository at this point in the history
  4. serial: stm32: fix call of a non-atomic function in stop_rx

    Stm32_usart_stop_rx() is a function called under atomic context.
    But it called a non-atomic function "dma_terminate_sync()".
    
    Correct it in replace by "dma_terminate_async()"
    
    Fixes: d3afae7 ("serial: stm32: move dma rx disabling from shutdown to stop_rx")
    Signed-off-by: Valentin Caron <valentin.caron@st.com>
    Change-Id: If1abb7e2a9dff45c3b871f90ff3d314c9ad69853
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/185015
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    VCASTM authored and atorgue committed Dec 7, 2020
    Configuration menu
    Copy the full SHA
    44a26ec View commit details
    Browse the repository at this point in the history
  5. ARM: dts: stm32: activate usart3 for stm32mp157f-ev1 a7-examples

    Activate usart3 (available on GPIO expansion connector) for
    stm32mp157f-ev1 a7-examples.
    
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Signed-off-by: Valentin Caron <valentin.caron@st.com>
    Change-Id: I351adb642f5a6f3b923a031f073bc1ed9f588cd7
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/185016
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    VCASTM authored and atorgue committed Dec 7, 2020
    Configuration menu
    Copy the full SHA
    479561d View commit details
    Browse the repository at this point in the history
  6. ARM: dts: stm32: activate usart3 and uart7 for stm32mp157f-dk2 a7-exa…

    …mples
    
    Activate usart3 (available on GPIO expansion connector) and uart7
    (available on Arduino connector) for stm32mp157f-dk2 a7-examples.
    
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Signed-off-by: Valentin Caron <valentin.caron@st.com>
    Change-Id: Id55fdcb7e47355a7456add174074f66734217306
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/185017
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    VCASTM authored and atorgue committed Dec 7, 2020
    Configuration menu
    Copy the full SHA
    d088d74 View commit details
    Browse the repository at this point in the history
  7. serial: stm32: prevent TDR register overwrite when sending x_char

    When sending x_char in stm32_usart_transmit_chars(), driver has a chance
    to overwrite the value of TDR register by the value of x_char. If this
    happens, the previous value that was present in TDR register will not be
    send through uart.
    
    This code checks if the previous value in TDR register is send before write
    the x_char value into register.
    
    Fixes: 48a6092 ("serial: stm32-usart: Add STM32 USART Driver")
    Signed-off-by: Valentin Caron <valentin.caron@st.com>
    Change-Id: If1a955af43fe73099d3f0f54bb354282395388e0
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/185481
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    VCASTM authored and atorgue committed Dec 7, 2020
    Configuration menu
    Copy the full SHA
    e58e2d8 View commit details
    Browse the repository at this point in the history
  8. serial: stm32: change stm32_port->status to local variable

    Stm32_port->status is used only once. We remove it from stm32_port
    and transform it into local variable.
    
    Signed-off-by: Valentin Caron <valentin.caron@st.com>
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: I643c411eb493486c16b72c59cb07963418b7c934
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/185482
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    VCASTM authored and atorgue committed Dec 7, 2020
    Configuration menu
    Copy the full SHA
    037561d View commit details
    Browse the repository at this point in the history
  9. serial: stm32: update rx dma state variable name

    Update rx dma state variable name with addition of rx_dma
    prefix to allow the use of similar variables for tx dma.
    
    Signed-off-by: Valentin Caron <valentin.caron@st.com>
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: If60c203248d31eb93503d3539c9958f9adff7afe
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/185483
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Erwan Le Ray authored and atorgue committed Dec 7, 2020
    Configuration menu
    Copy the full SHA
    b19aa0d View commit details
    Browse the repository at this point in the history
  10. serial: stm32: rework tx dma state condition

    Tx dma state condition is handled by tx_dma_busy boolean.
    
    This boolean is set when dma descriptor is requested and reset when dma
    channel is stopped (dma_terminate).
    
    In stm32_usart_serial_remove(), stm32_usart_stop_tx() and
    stm32_usart_transmit_chars_dma() fallback error case, dma channel is
    stopped but tx_dma_busy is not handled.
    
    Instead of fixing this issue, we prefer to rework the driver by removing this
    boolean and use two function to replace it:
    
    - stm32_usart_tx_dma_started return true if dma tx have a descriptor.
    - stm32_usart_tx_dma_enabled return true if DMAT bit equal true.
    
    Signed-off-by: Valentin Caron <valentin.caron@st.com>
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: I65b5c55295ec5e777a19e8c1b6027fd2d8b4cb97
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/185484
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    VCASTM authored and atorgue committed Dec 7, 2020
    Configuration menu
    Copy the full SHA
    c8dde7e View commit details
    Browse the repository at this point in the history
  11. serial: stm32: fix flow control transfer in DMA mode

    If flow control is enabled, framework will call stop_tx to
    pause transfer and then call start_tx to resume transfer. If dma is
    stopped in stop_tx, transfer while not resume with start_tx.
    
    Move dmaengine_terminate_async() from stm32_usart_stop_tx() to
    stm32_usart_shutdown() and add clear of USART_CR3_DMAT bit.
    
    Signed-off-by: Valentin Caron <valentin.caron@st.com>
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: I1c4f989789fc495b5f55202506480dc4888f5915
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/186087
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    VCASTM authored and atorgue committed Dec 7, 2020
    Configuration menu
    Copy the full SHA
    15d0789 View commit details
    Browse the repository at this point in the history
  12. serial: stm32: fix software flow control transfer

    X_char is ignored by stm32_usart_start_tx() when xmit buffer is empty
    
    Correct start_tx condition to allow x_char to be send
    
    Fixes: 48a6092 ("serial: stm32-usart: Add STM32 USART Driver")
    Signed-off-by: Valentin Caron <valentin.caron@st.com>
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: I4cd2953b08607dfb53668ac42cc6d8016c798d1c
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/185485
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    VCASTM authored and atorgue committed Dec 7, 2020
    Configuration menu
    Copy the full SHA
    f6c0f4d View commit details
    Browse the repository at this point in the history
  13. serial: stm32: fix dual tx dma transaction

    stm32_usart_tx_dma_started cannot use the function "dmaengine_tx_status"
    to know the status of DMA. This function does not show if the "dma
    complete" callback of the DMA transaction has been called.
    
    We prefer to use "tx_dma_busy" flag to prevent dual DMA transaction at
    the same time. This flag is set when a DMA transaction begins and is unset
    when dmaengine_dma_terminate function is called. A new DMA transaction
    cannot be created if this flag is up.
    
    Create a new function "stm32_usart_tx_dma_terminate" to be sure the flag
    is unset after each call of dmaengine_terminate_async.
    
    Fixes: 0b0aa402675c ("serial: stm32: rework tx dma state condition")
    Signed-off-by: Valentin Caron <valentin.caron@st.com>
    Change-Id: I3f52abfcea458c3d794883633251084a9e1576fb
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/186757
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    VCASTM authored and atorgue committed Dec 7, 2020
    Configuration menu
    Copy the full SHA
    575fa26 View commit details
    Browse the repository at this point in the history
  14. serial: stm32: fix transmission complete error handling

    Fix the "serial: stm32: add FIFO flush when port is closed" patch that
    provides an incorrect implementation:
    - the TC error message is needed only when ISR_TC is set.
    
    Fixes: a56628a ("serial: stm32: add FIFO flush when port is closed")
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: Ia50bb3f68bc06ba2822b4d50c7df393911b729c9
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/185384
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Erwan Le Ray authored and atorgue committed Dec 7, 2020
    Configuration menu
    Copy the full SHA
    61e604a View commit details
    Browse the repository at this point in the history
  15. serial: stm32: update transmission complete error message

    The transmission complete error message provides the status of the
    ISR_USART_TC bit. This bit, when set, indicates that the transmission
    has not been completed.
    The bit status indication is not a very understandable information.
    The error message sent on console should indicate that the transmission is
    not complete, instead of providing USART_TC bit status.
    Update the error message for better understanding.
    
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: I98472c898a4608e2916e14e9bf6926b384f2c60c
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/186043
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Erwan Le Ray authored and atorgue committed Dec 7, 2020
    Configuration menu
    Copy the full SHA
    f8cb661 View commit details
    Browse the repository at this point in the history
  16. serial: stm32: fix FIFO flush in shutdown

    Fifo flush set USART_RQR register by calling stm32_usart_set_bits
    routine (Read/Modify/Write). USART_RQR register is a write only
    register. So, read before write isn't correct / relevant to flush
    the FIFOs.
    Replace stm32_usart_set_bits call by writel_relaxed.
    
    Fixes: a56628a ("serial: stm32: add FIFO flush when port is closed")
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: I32a4d0928f268b388d1d1932c4dc41d3d52da593
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/185809
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Erwan Le Ray authored and atorgue committed Dec 7, 2020
    Configuration menu
    Copy the full SHA
    245cc3a View commit details
    Browse the repository at this point in the history
  17. serial: stm32: fix FIFO flush in startup and set_termios

    Fifo flush set USART_RQR register by calling stm32_usart_set_bits
    routine (Read/Modify/Write). USART_RQR register is a write only
    register. So, read before write isn't correct / relevant to flush
    the FIFOs.
    Replace stm32_usart_set_bits call by writel_relaxed.
    
    Fixes: 84872dc ("serial: stm32: add RX and TX FIFO flush")
    Signed-off-by: Erwan Le Ray <erwan.leray@st.com>
    Change-Id: Ic7f09b71f2b6abe64ae3a7a9a859d432f1b5ba28
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/185810
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    Erwan Le Ray authored and atorgue committed Dec 7, 2020
    Configuration menu
    Copy the full SHA
    8663b4e View commit details
    Browse the repository at this point in the history
  18. dt-bindings: dma: add alternative REQ/ACK protocol selection in stm32…

    …-dma
    
    Default REQ/ACK protocol consists in maintaining ACK signal up to the
    removal of REQuest and the transfer completion.
    In case of alternative REQ/ACK protocol, ACK de-assertion does not wait the
    removal of the REQuest, but only the transfer completion.
    Due to a possible DMA stream lock when transferring data to/from STM32
    USART/UART, this new bindings allow to select this alternative protocol in
     device tree, especially for STM32 USART/UART nodes.
    
    Change-Id: I5cba365458fc17d51944d50cb7a098326e05da0a
    Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/186667
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabien DESSENNE <fabien.dessenne@st.com>
    ADESTM authored and atorgue committed Dec 7, 2020
    Configuration menu
    Copy the full SHA
    3895884 View commit details
    Browse the repository at this point in the history
  19. dmaengine: stm32-dma: add alternate REQ/ACK protocol management

    STM32 USART/UART is not managing correctly the default DMA REQ/ACK protocol
    leading to possibly lock the DMA stream.
    Default protocol consists in maintaining ACK signal up to the removal of
    REQuest and the transfer completion.
    In case of alternative REQ/ACK protocol, ACK de-assertion does not wait the
    removal of the REQuest, but only the transfer completion.
    
    This patch retrieve the need of the alternative protocol through the device
    tree, and sets the protocol accordingly.
    
    Change-Id: I2c9fd6f33f3ad9a600449cbf02b9f29c88384618
    Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com>
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/186668
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: Fabien DESSENNE <fabien.dessenne@st.com>
    ADESTM authored and atorgue committed Dec 7, 2020
    Configuration menu
    Copy the full SHA
    38078f0 View commit details
    Browse the repository at this point in the history
  20. ARM: dts: stm32: activate alternate REQ/ACK dma protocol for uart

    Default REQ/ACK DMA protocol consists in maintaining ACK signal up to the
    removal of REQuest and the transfer completion.
    In case of alternative REQ/ACK protocol, ACK de-assertion does not wait the
    removal of the REQuest, but only the transfer completion.
    Due to a possible DMA stream lock when transferring data to/from STM32
    USART/UART, select this alternative protocol in STM32 USART/UART nodes.
    
    Signed-off-by: Valentin Caron <valentin.caron@st.com>
    Change-Id: Ia5c1205e1a74a06ff670006e9fbf619ad45deeb5
    Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/186820
    Reviewed-by: CITOOLS <smet-aci-reviews@lists.codex.cro.st.com>
    Reviewed-by: CIBUILD <smet-aci-builds@lists.codex.cro.st.com>
    Reviewed-by: Fabrice GASNIER <fabrice.gasnier@st.com>
    VCASTM authored and atorgue committed Dec 7, 2020
    Configuration menu
    Copy the full SHA
    e1b933d View commit details
    Browse the repository at this point in the history

Commits on Apr 6, 2021

  1. Configuration menu
    Copy the full SHA
    77758b2 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1c481a7 View commit details
    Browse the repository at this point in the history

Commits on May 10, 2021

  1. Configuration menu
    Copy the full SHA
    fca962b View commit details
    Browse the repository at this point in the history
  2. Add uio_stm32_fmc3_fpga driver using Kconfig.

      Just in case we need to do this in the kernel.
    mcarlin-ds committed May 10, 2021
    Configuration menu
    Copy the full SHA
    0a7d81a View commit details
    Browse the repository at this point in the history

Commits on May 11, 2021

  1. Use STM32 DAC2 unbuffered

    mcarlin-ds committed May 11, 2021
    Configuration menu
    Copy the full SHA
    1aec604 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    8ef5049 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    9525337 View commit details
    Browse the repository at this point in the history

Commits on May 19, 2021

  1. Modify rpsmg_sdb driver to add ioctl for reading physical address of …

    …sdb buffer for transfer to CM4
    mcarlin-ds committed May 19, 2021
    Configuration menu
    Copy the full SHA
    52f684f View commit details
    Browse the repository at this point in the history