03 Sep, 2019

2 commits

  • Pull char/misc driver fixes from Greg KH:
    "Here are some small char and misc driver fixes for reported issues for
    5.3-rc7

    Also included in here is the documentation for how we are handling
    hardware issues under embargo that everyone has finally agreed on, as
    well as a MAINTAINERS update for the suckers who agreed to handle the
    LICENSES/ files.

    All of these have been in linux-next last week with no reported
    issues"

    * tag 'char-misc-5.3-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
    fsi: scom: Don't abort operations for minor errors
    vmw_balloon: Fix offline page marking with compaction
    VMCI: Release resource if the work is already queued
    Documentation/process: Embargoed hardware security issues
    lkdtm/bugs: fix build error in lkdtm_EXHAUST_STACK
    mei: me: add Tiger Lake point LP device ID
    intel_th: pci: Add Tiger Lake support
    intel_th: pci: Add support for another Lewisburg PCH
    stm class: Fix a double free of stm_source_device
    MAINTAINERS: add entry for LICENSES and SPDX stuff
    fpga: altera-ps-spi: Fix getting of optional confd gpio

    Linus Torvalds
     
  • Pull USB fixes from Greg KH:
    "Here are some small USB fixes that have been in linux-next this past
    week for 5.3-rc7

    They fix the usual xhci, syzbot reports, and other small issues that
    have come up last week.

    All have been in linux-next with no reported issues"

    * tag 'usb-5.3-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
    USB: cdc-wdm: fix race between write and disconnect due to flag abuse
    usb: host: xhci: rcar: Fix typo in compatible string matching
    usb: host: xhci-tegra: Set DMA mask correctly
    USB: storage: ums-realtek: Whitelist auto-delink support
    USB: storage: ums-realtek: Update module parameter description for auto_delink_en
    usb: host: ohci: fix a race condition between shutdown and irq
    usb: hcd: use managed device resources
    typec: tcpm: fix a typo in the comparison of pdo_max_voltage
    usb-storage: Add new JMS567 revision to unusual_devs
    usb: chipidea: udc: don't do hardware access if gadget has stopped
    usbtmc: more sanity checking for packet size
    usb: udc: lpc32xx: silence fall-through warning

    Linus Torvalds
     

02 Sep, 2019

2 commits

  • Pull networking fixes from David Miller:

    1) Fix some length checks during OGM processing in batman-adv, from
    Sven Eckelmann.

    2) Fix regression that caused netfilter conntrack sysctls to not be
    per-netns any more. From Florian Westphal.

    3) Use after free in netpoll, from Feng Sun.

    4) Guard destruction of pfifo_fast per-cpu qdisc stats with
    qdisc_is_percpu_stats(), from Davide Caratti. Similar bug is fixed
    in pfifo_fast_enqueue().

    5) Fix memory leak in mld_del_delrec(), from Eric Dumazet.

    6) Handle neigh events on internal ports correctly in nfp, from John
    Hurley.

    7) Clear SKB timestamp in NF flow table code so that it does not
    confuse fq scheduler. From Florian Westphal.

    8) taprio destroy can crash if it is invoked in a failure path of
    taprio_init(), because the list head isn't setup properly yet and
    the list del is unconditional. Perform the list add earlier to
    address this. From Vladimir Oltean.

    9) Make sure to reapply vlan filters on device up, in aquantia driver.
    From Dmitry Bogdanov.

    10) sgiseeq driver releases DMA memory using free_page() instead of
    dma_free_attrs(). From Christophe JAILLET.

    * git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (58 commits)
    net: seeq: Fix the function used to release some memory in an error handling path
    enetc: Add missing call to 'pci_free_irq_vectors()' in probe and remove functions
    net: bcmgenet: use ethtool_op_get_ts_info()
    tc-testing: don't hardcode 'ip' in nsPlugin.py
    net: dsa: microchip: add KSZ8563 compatibility string
    dt-bindings: net: dsa: document additional Microchip KSZ8563 switch
    net: aquantia: fix out of memory condition on rx side
    net: aquantia: linkstate irq should be oneshot
    net: aquantia: reapply vlan filters on up
    net: aquantia: fix limit of vlan filters
    net: aquantia: fix removal of vlan 0
    net/sched: cbs: Set default link speed to 10 Mbps in cbs_set_port_rate
    taprio: Set default link speed to 10 Mbps in taprio_set_picos_per_byte
    taprio: Fix kernel panic in taprio_destroy
    net: dsa: microchip: fill regmap_config name
    rxrpc: Fix lack of conn cleanup when local endpoint is cleaned up [ver #2]
    net: stmmac: dwmac-rk: Don't fail if phy regulator is absent
    amd-xgbe: Fix error path in xgbe_mod_init()
    netfilter: nft_meta_bridge: Fix get NFT_META_BRI_IIFVPROTO in network byteorder
    mac80211: Correctly set noencrypt for PAE frames
    ...

    Linus Torvalds
     
  • In commit 99cd149efe82 ("sgiseeq: replace use of dma_cache_wback_inv"),
    a call to 'get_zeroed_page()' has been turned into a call to
    'dma_alloc_coherent()'. Only the remove function has been updated to turn
    the corresponding 'free_page()' into 'dma_free_attrs()'.
    The error hndling path of the probe function has not been updated.

    Fix it now.

    Rename the corresponding label to something more in line.

    Fixes: 99cd149efe82 ("sgiseeq: replace use of dma_cache_wback_inv")
    Signed-off-by: Christophe JAILLET
    Reviewed-by: Thomas Bogendoerfer
    Signed-off-by: David S. Miller

    Christophe JAILLET
     

01 Sep, 2019

10 commits

  • Call to 'pci_free_irq_vectors()' are missing both in the error handling
    path of the probe function, and in the remove function.
    Add them.

    Fixes: 19971f5ea0ab ("enetc: add PTP clock driver")
    Signed-off-by: Christophe JAILLET
    Signed-off-by: David S. Miller

    Christophe JAILLET
     
  • This change enables the use of SW timestamping on the Raspberry Pi 4.

    bcmgenet's transmit function bcmgenet_xmit() implements software
    timestamping. However the SOF_TIMESTAMPING_TX_SOFTWARE capability was
    missing and only SOF_TIMESTAMPING_RX_SOFTWARE was announced. By using
    ethtool_ops bcmgenet_ethtool_ops() as get_ts_info(), the
    SOF_TIMESTAMPING_TX_SOFTWARE capability is announced.

    Similar to commit a8f5cb9e7991 ("smsc95xx: use ethtool_op_get_ts_info()")

    Signed-off-by: Ryan M. Collins
    Acked-by: Florian Fainelli
    Acked-by: Doug Berger
    Signed-off-by: David S. Miller

    Ryan M. Collins
     
  • It is a 3-Port 10/100 Ethernet Switch with 1588v2 PTP.

    Signed-off-by: Razvan Stefanescu
    Signed-off-by: David S. Miller

    Razvan Stefanescu
     
  • On embedded environments with hard memory limits it is a normal although
    rare case when skb can't be allocated on rx part under high traffic.

    In such OOM cases napi_complete_done() was not called.
    So the napi object became in an invalid state like it is "scheduled".
    Kernel do not re-schedules the poll of that napi object.

    Consequently, kernel can not remove that object the system hangs on
    `ifconfig down` waiting for a poll.

    We are fixing this by gracefully closing napi poll routine with correct
    invocation of napi_complete_done.

    This was reproduced with artificially failing the allocation of skb to
    simulate an "out of memory" error case and check that traffic does
    not get stuck.

    Fixes: 970a2e9864b0 ("net: ethernet: aquantia: Vector operations")
    Signed-off-by: Igor Russkikh
    Signed-off-by: Dmitry Bogdanov
    Signed-off-by: David S. Miller

    Dmitry Bogdanov
     
  • Declaring threaded irq handler should also indicate the irq is
    oneshot. It is oneshot indeed, because HW implements irq automasking
    on trigger.

    Not declaring this causes some kernel configurations to fail
    on interface up, because request_threaded_irq returned an err code.

    The issue was originally hidden on normal x86_64 configuration with
    latest kernel, because depending on interrupt controller, irq driver
    added ONESHOT flag on its own.

    Issue was observed on older kernels (4.14) where no such logic exists.

    Fixes: 4c83f170b3ac ("net: aquantia: link status irq handling")
    Signed-off-by: Igor Russkikh
    Reported-by: Michael Symolkin
    Signed-off-by: David S. Miller

    Igor Russkikh
     
  • In case of device reconfiguration the driver may reset the device invisible
    for other modules, vlan module in particular. So vlans will not be
    removed&created and vlan filters will not be configured in the device.
    The patch reapplies the vlan filters at device start.

    Fixes: 7975d2aff5afb ("net: aquantia: add support of rx-vlan-filter offload")
    Signed-off-by: Dmitry Bogdanov
    Signed-off-by: Igor Russkikh
    Signed-off-by: David S. Miller

    Dmitry Bogdanov
     
  • Fix a limit condition of vlans on the interface before setting vlan
    promiscuous mode

    Fixes: 48dd73d08d4dd ("net: aquantia: fix vlans not working over bridged network")
    Signed-off-by: Dmitry Bogdanov
    Signed-off-by: Igor Russkikh
    Signed-off-by: David S. Miller

    Dmitry Bogdanov
     
  • Due to absence of checking against the rx flow rule when vlan 0 is being
    removed, the other rule could be removed instead of the rule with vlan 0

    Fixes: 7975d2aff5afb ("net: aquantia: add support of rx-vlan-filter offload")
    Signed-off-by: Dmitry Bogdanov
    Signed-off-by: Igor Russkikh
    Signed-off-by: David S. Miller

    Dmitry Bogdanov
     
  • Use the register value width as the regmap_config name to prevent the
    following error when the second and third regmap_configs are
    initialized.
    "debugfs: Directory '${bus-id}' with parent 'regmap' already present!"

    Signed-off-by: George McCollister
    Reviewed-by: Marek Vasut
    Signed-off-by: David S. Miller

    George McCollister
     
  • Pull i2c fixes from Wolfram Sang:
    "I2C has a bunch of driver fixes and a core improvement to make the
    on-going API transition more robust"

    * 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
    i2c: mediatek: disable zero-length transfers for mt8183
    i2c: iproc: Stop advertising support of SMBUS quick cmd
    MAINTAINERS: i2c mv64xxx: Update documentation path
    i2c: piix4: Fix port selection for AMD Family 16h Model 30h
    i2c: designware: Synchronize IRQs when unregistering slave client
    i2c: i801: Avoid memory leak in check_acpi_smo88xx_device()
    i2c: make i2c_unregister_device() ERR_PTR safe

    Linus Torvalds
     

31 Aug, 2019

7 commits

  • Pull crypto fix from Herbert Xu:
    "Fix a potential crash in the ccp driver"

    * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
    crypto: ccp - Ignore unconfigured CCP device on suspend/resume

    Linus Torvalds
     
  • Daniel Borkmann says:

    ====================
    pull-request: bpf 2019-08-31

    The following pull-request contains BPF updates for your *net* tree.

    The main changes are:

    1) Fix 32-bit zero-extension during constant blinding which
    has been causing a regression on ppc64, from Naveen.

    2) Fix a latency bug in nfp driver when updating stack index
    register, from Jiong.
    ====================

    Signed-off-by: David S. Miller

    David S. Miller
     
  • The devicetree binding lists the phy phy as optional. As such, the
    driver should not bail out if it can't find a regulator. Instead it
    should just skip the remaining regulator related code and continue
    on normally.

    Skip the remainder of phy_power_on() if a regulator supply isn't
    available. This also gets rid of the bogus return code.

    Fixes: 2e12f536635f ("net: stmmac: dwmac-rk: Use standard devicetree property for phy regulator")
    Signed-off-by: Chen-Yu Tsai
    Signed-off-by: David S. Miller

    Chen-Yu Tsai
     
  • In xgbe_mod_init(), we should do cleanup if some error occurs

    Reported-by: Hulk Robot
    Fixes: efbaa828330a ("amd-xgbe: Add support to handle device renaming")
    Fixes: 47f164deab22 ("amd-xgbe: Add PCI device support")
    Signed-off-by: YueHaibing
    Signed-off-by: David S. Miller

    YueHaibing
     
  • Pull ARM SoC fixes from Arnd Bergmann:
    "The majority of the fixes this time are for OMAP hardware, here is a
    breakdown of the significant changes:

    Various device tree bug fixes:
    - TI am57xx boards need a voltage level fix to avoid damaging SD
    cards
    - vf610-bk4 fails to detect its flash due to an incorrect description
    - meson-g12a USB phy configuration fails
    - meson-g12b reboot should not power off the SD card
    - Some corrections for apparently harmless differences from the
    documentation.

    Regression fixes:
    - ams-delta FIQ interrupts broke in 5.3
    - TI am3/am4 mmc controllers broke in 5.2

    The logic_pio driver (used on some Huawei ARM servers) got a few bug
    fixes for reliability.

    And a couple of compile-time warning fixes"

    * tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (26 commits)
    soc: ixp4xx: Protect IXP4xx SoC drivers by ARCH_IXP4XX || COMPILE_TEST
    soc: ti: pm33xx: Make two symbols static
    soc: ti: pm33xx: Fix static checker warnings
    ARM: OMAP: dma: Mark expected switch fall-throughs
    ARM: dts: Fix incomplete dts data for am3 and am4 mmc
    bus: ti-sysc: Simplify cleanup upon failures in sysc_probe()
    ARM: OMAP1: ams-delta-fiq: Fix missing irq_ack
    ARM: dts: dra74x: Fix iodelay configuration for mmc3
    ARM: dts: am335x: Fix UARTs length
    ARM: OMAP2+: Fix omap4 errata warning on other SoCs
    bus: hisi_lpc: Add .remove method to avoid driver unbind crash
    bus: hisi_lpc: Unregister logical PIO range to avoid potential use-after-free
    lib: logic_pio: Add logic_pio_unregister_range()
    lib: logic_pio: Avoid possible overlap for unregistering regions
    lib: logic_pio: Fix RCU usage
    arm64: dts: amlogic: odroid-n2: keep SD card regulator always on
    arm64: dts: meson-g12a-sei510: enable IR controller
    arm64: dts: meson-g12a: add missing dwc2 phy-names
    ARM: dts: vf610-bk4: Fix qspi node description
    ARM: dts: Fix incorrect dcan register mapping for am3, am4 and dra7
    ...

    Linus Torvalds
     
  • Pull rdma fix from Doug Ledford:
    "Much calmer week this week. Just one patch queued up:

    The way the siw driver was locking around the traversal of the list of
    ipv6 addresses on a device was causing a scheduling while atomic
    issue. Bernard straightened it out by using the rtnl_lock"

    * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma:
    RDMA/siw: Fix IPv6 addr_list locking

    Linus Torvalds
     
  • Pull two ceph fixes from Ilya Dryomov:
    "A fix for a -rc1 regression in rbd and a trivial static checker fix"

    * tag 'ceph-for-5.3-rc7' of git://github.com/ceph/ceph-client:
    rbd: restore zeroing past the overlap when reading from parent
    libceph: don't call crypto_free_sync_skcipher() on a NULL tfm

    Linus Torvalds
     

30 Aug, 2019

19 commits

  • Pull MMC fixes from Ulf Hansson:
    "MMC core:
    - Fix init of SD cards reporting an invalid VDD range

    MMC host:
    - sprd: Fixes for clocks, card-detect, write-protect etc
    - cadence: Fix ADMA 64-bit addressing
    - tegra: Re-allow writing to SD card when GPIO pin is absent
    - at91: Fix eMMC init by clearing HS200 cap as it's not supported"

    * tag 'mmc-v5.3-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc:
    mmc: sdhci-cadence: enable v4_mode to fix ADMA 64-bit addressing
    mmc: sdhci-sprd: clear the UHS-I modes read from registers
    mms: sdhci-sprd: add SDHCI_QUIRK_BROKEN_CARD_DETECTION
    mmc: sdhci-sprd: add SDHCI_QUIRK2_PRESET_VALUE_BROKEN
    mmc: sdhci-sprd: add get_ro hook function
    mmc: sdhci-sprd: fixed incorrect clock divider
    mmc: core: Fix init of SD cards reporting an invalid VDD range
    mmc: sdhci-of-at91: add quirk for broken HS200
    Revert "mmc: sdhci-tegra: drop ->get_ro() implementation"

    Linus Torvalds
     
  • Pull drm fixes from Dave Airlie:
    "Nothing too crazy, there's probably more patches than I'd like at this
    stage, but they are all pretty self contained:

    amdgpu:
    - Fix GFXOFF regression for PCO and RV2
    - Fix missing fence reference
    - Fix VG20 power readings on certain SMU firmware versions
    - Fix dpm level setup for VG20
    - Add an ATPX laptop quirk

    i915:
    - Fix DP MST max BPC property creation after DRM register
    - Fix unused ggtt deballooning and NULL dereference in guest
    - Fix DSC eDP transcoder identification
    - Fix WARN from DMA API debug by setting DMA max segment size

    qxl:
    - Make qxl reservel the vga ports using vgaargb to prevent switching to vga compatibility mode.

    omap:
    - Fix omap port lookup for SDI output

    virtio:
    - Use virtio_max_dma_size to fix an issue with swiotlb.

    komeda:
    - Compiler fixes to komeda.
    - Add missing of_node_get() call in komeda.
    - Reorder the komeda de-init functions"

    * tag 'drm-fixes-2019-08-30' of git://anongit.freedesktop.org/drm/drm:
    drm/komeda: Reordered the komeda's de-init functions
    drm/amdgpu: fix GFXOFF on Picasso and Raven2
    drm/amdgpu: Add APTX quirk for Dell Latitude 5495
    drm/amd/powerplay: correct Vega20 dpm level related settings
    drm/i915: Call dma_set_max_seg_size() in i915_driver_hw_probe()
    drm/i915/dp: Fix DSC enable code to use cpu_transcoder instead of encoder->type
    drm/i915: Don't deballoon unused ggtt drm_mm_node in linux guest
    drm/i915: Do not create a new max_bpc prop for MST connectors
    drm/powerplay: Fix Vega20 power reading again
    drm/powerplay: Fix Vega20 Average Power value v4
    drm/amdgpu: fix dma_fence_wait without reference
    drm/komeda: Add missing of_node_get() call
    drm/komeda: Clean warning 'komeda_component_add' might be a candidate for 'gnu_printf'
    drm/komeda: Fix warning -Wunused-but-set-variable
    drm/komeda: Fix error: not allocating enough data 1592 vs 1584
    drm/virtio: use virtio_max_dma_size
    drm/omap: Fix port lookup for SDI output
    drm/qxl: get vga ioports

    Linus Torvalds
     
  • Quoting from mt8183 datasheet, the number of transfers to be
    transferred in one transaction should be set to bigger than 1,
    so we should forbid zero-length transfer and update functionality.

    Reported-by: Alexandru M Stan
    Signed-off-by: Hsin-Yi Wang
    Reviewed-by: Qii Wang
    [wsa: shortened commit message a little]
    Signed-off-by: Wolfram Sang

    Hsin-Yi Wang
     
  • The driver does not support the SMBUS Quick command so remove the
    flag that indicates that level of support.
    By default the i2c_detect tool uses the quick command to try and
    detect devices at some bus addresses. If the quick command is used
    then we will not detect the device, even though it is present.

    Fixes: e6e5dd3566e0 (i2c: iproc: Add Broadcom iProc I2C Driver)
    Signed-off-by: Lori Hikichi
    Signed-off-by: Rayagonda Kokatanur
    Reviewed-by: Ray Jui
    Signed-off-by: Wolfram Sang

    Lori Hikichi
     
  • The IP datasheet says this controller is compatible with SD Host
    Specification Version v4.00.

    As it turned out, the ADMA of this IP does not work with 64-bit mode
    when it is in the Version 3.00 compatible mode; it understands the
    old 64-bit descriptor table (as defined in SDHCI v2), but the ADMA
    System Address Register (SDHCI_ADMA_ADDRESS) cannot point to the
    64-bit address.

    I noticed this issue only after commit bd2e75633c80 ("dma-contiguous:
    use fallback alloc_pages for single pages"). Prior to that commit,
    dma_set_mask_and_coherent() returned the dma address that fits in
    32-bit range, at least for the default arm64 configuration
    (arch/arm64/configs/defconfig). Now the host->adma_addr exceeds the
    32-bit limit, causing the real problem for the Socionext SoCs.
    (As a side-note, I was also able to reproduce the issue for older
    kernels by turning off CONFIG_DMA_CMA.)

    Call sdhci_enable_v4_mode() to fix this.

    Cc: # v4.20+
    Signed-off-by: Masahiro Yamada
    Signed-off-by: Ulf Hansson

    Masahiro Yamada
     
  • sprd's sd host controller supports SDR50/SDR104/DDR50 though, the UHS-I
    mode used by the specific card can be selected via devicetree only.

    Fixes: fb8bd90f83c4 ("mmc: sdhci-sprd: Add Spreadtrum's initial host controller")
    Signed-off-by: Chunyan Zhang
    Signed-off-by: Chunyan Zhang
    Reviewed-by: Baolin Wang
    Tested-by: Baolin Wang
    Cc: stable@vger.kernel.org
    Signed-off-by: Ulf Hansson

    Chunyan Zhang
     
  • sprd's sd host controller doesn't support detection to
    card insert or remove.

    Fixes: fb8bd90f83c4 ("mmc: sdhci-sprd: Add Spreadtrum's initial host controller")
    Signed-off-by: Chunyan Zhang
    Signed-off-by: Chunyan Zhang
    Reviewed-by: Baolin Wang
    Tested-by: Baolin Wang
    Cc: stable@vger.kernel.org
    Signed-off-by: Ulf Hansson

    Chunyan Zhang
     
  • The bit of PRESET_VAL_ENABLE in HOST_CONTROL2 register is reserved on
    sprd's sd host controller, set quirk2 to disable configuring this.

    Fixes: fb8bd90f83c4 ("mmc: sdhci-sprd: Add Spreadtrum's initial host controller")
    Signed-off-by: Chunyan Zhang
    Signed-off-by: Chunyan Zhang
    Reviewed-by: Baolin Wang
    Tested-by: Baolin Wang
    Cc: stable@vger.kernel.org
    Signed-off-by: Ulf Hansson

    Chunyan Zhang
     
  • sprd's sd host controller doesn't support write protect to sd card.

    Fixes: fb8bd90f83c4 ("mmc: sdhci-sprd: Add Spreadtrum's initial host controller")
    Signed-off-by: Chunyan Zhang
    Signed-off-by: Chunyan Zhang
    Reviewed-by: Baolin Wang
    Tested-by: Baolin Wang
    Cc: stable@vger.kernel.org
    Signed-off-by: Ulf Hansson

    Chunyan Zhang
     
  • The register SDHCI_CLOCK_CONTROL should be cleared before config clock
    divider, otherwise the frequency configured maybe lower than we
    expected.

    Fixes: fb8bd90f83c4 ("mmc: sdhci-sprd: Add Spreadtrum's initial host controller")
    Signed-off-by: Chunyan Zhang
    Signed-off-by: Chunyan Zhang
    Reviewed-by: Baolin Wang
    Tested-by: Baolin Wang
    Cc: stable@vger.kernel.org
    Signed-off-by: Ulf Hansson

    Chunyan Zhang
     
  • The OCR register defines the supported range of VDD voltages for SD cards.
    However, it has turned out that some SD cards reports an invalid voltage
    range, for example having bit7 set.

    When a host supports MMC_CAP2_FULL_PWR_CYCLE and some of the voltages from
    the invalid VDD range, this triggers the core to run a power cycle of the
    card to try to initialize it at the lowest common supported voltage.
    Obviously this fails, since the card can't support it.

    Let's fix this problem, by clearing invalid bits from the read OCR register
    for SD cards, before proceeding with the VDD voltage negotiation.

    Cc: stable@vger.kernel.org
    Reported-by: Philip Langdale
    Signed-off-by: Ulf Hansson
    Reviewed-by: Philip Langdale
    Tested-by: Philip Langdale
    Tested-by: Manuel Presnitz

    Ulf Hansson
     
  • drm/i915 fixes for v5.3-rc7:
    - Fix DP MST max BPC property creation after DRM register
    - Fix unused ggtt deballooning and NULL dereference in guest
    - Fix DSC eDP transcoder identification
    - Fix WARN from DMA API debug by setting DMA max segment size

    Signed-off-by: Dave Airlie

    From: Jani Nikula
    Link: https://patchwork.freedesktop.org/patch/msgid/87a7bseati.fsf@intel.com

    Dave Airlie
     
  • drm-fixes-5.3-2019-08-28:

    amdgpu:
    - Fix GFXOFF regression for PCO and RV2
    - Fix missing fence reference
    - Fix VG20 power readings on certain SMU firmware versions
    - Fix dpm level setup for VG20
    - Add an ATPX laptop quirk

    Signed-off-by: Dave Airlie
    From: Alex Deucher
    Link: https://patchwork.freedesktop.org/patch/msgid/20190829022925.32678-1-alexander.deucher@amd.com

    Dave Airlie
     
  • drm-misc-fixes for v5.3 (rc7?):
    - Make qxl reservel the vga ports using vgaargb to prevent switching to vga compatibility mode.
    - Fix omap port lookup for SDI output
    - Use virtio_max_dma_size to fix an issue with swiotlb.
    - Compiler fixes to komeda.
    - Add missing of_node_get() call in komeda.
    - Reorder the komeda de-init functions.

    Signed-off-by: Dave Airlie

    From: Maarten Lankhorst
    Link: https://patchwork.freedesktop.org/patch/msgid/f187c28b-6279-2c4f-3e53-296ee899133b@linux.intel.com

    Dave Airlie
     
  • Family 16h Model 30h SMBus controller needs the same port selection fix
    as described and fixed in commit 0fe16195f891 ("i2c: piix4: Fix SMBus port
    selection for AMD Family 17h chips")

    commit 6befa3fde65f ("i2c: piix4: Support alternative port selection
    register") also fixed the port selection for Hudson2, but unfortunately
    this is not the exact same device and the AMD naming and PCI Device IDs
    aren't particularly helpful here.

    The SMBus port selection register is common to the following Families
    and models, as documented in AMD's publicly available BIOS and Kernel
    Developer Guides:

    50742 - Family 15h Model 60h-6Fh (PCI_DEVICE_ID_AMD_KERNCZ_SMBUS)
    55072 - Family 15h Model 70h-7Fh (PCI_DEVICE_ID_AMD_KERNCZ_SMBUS)
    52740 - Family 16h Model 30h-3Fh (PCI_DEVICE_ID_AMD_HUDSON2_SMBUS)

    The Hudson2 PCI Device ID (PCI_DEVICE_ID_AMD_HUDSON2_SMBUS) is shared
    between Bolton FCH and Family 16h Model 30h, but the location of the
    SmBus0Sel port selection bits are different:

    51192 - Bolton Register Reference Guide

    We distinguish between Bolton and Family 16h Model 30h using the PCI
    Revision ID:

    Bolton is device 0x780b, revision 0x15
    Family 16h Model 30h is device 0x780b, revision 0x1F
    Family 15h Model 60h and 70h are both device 0x790b, revision 0x4A.

    The following additional public AMD BKDG documents were checked and do
    not share the same port selection register:

    42301 - Family 15h Model 00h-0Fh doesn't mention any
    42300 - Family 15h Model 10h-1Fh doesn't mention any
    49125 - Family 15h Model 30h-3Fh doesn't mention any

    48751 - Family 16h Model 00h-0Fh uses the previously supported
    index register SB800_PIIX4_PORT_IDX_ALT at 0x2e

    Signed-off-by: Andrew Cooks
    Signed-off-by: Jean Delvare
    Cc: stable@vger.kernel.org [v4.6+]
    Signed-off-by: Wolfram Sang

    Andrew Cooks
     
  • Make sure interrupt handler i2c_dw_irq_handler_slave() has finished
    before clearing the the dev->slave pointer in i2c_dw_unreg_slave().

    There is possibility for a race if i2c_dw_irq_handler_slave() is running
    on another CPU while clearing the dev->slave pointer.

    Reported-by: Krzysztof Adamski
    Reported-by: Wolfram Sang
    Signed-off-by: Jarkko Nikula
    Signed-off-by: Wolfram Sang

    Jarkko Nikula
     
  • check_acpi_smo88xx_device() utilizes acpi_get_object_info() which in its turn
    allocates a buffer. User is responsible to clean allocated resources. The last
    has been missed in the original code. Fix it here.

    While here, replace !ACPI_SUCCESS() with ACPI_FAILURE().

    Fixes: 19b07cb4a187 ("i2c: i801: Register optional lis3lv02d I2C device on Dell machines")
    Signed-off-by: Andy Shevchenko
    Reviewed-by: Pali Rohár
    Reviewed-by: Jean Delvare
    Signed-off-by: Wolfram Sang

    Andy Shevchenko
     
  • We are moving towards returning ERR_PTRs when i2c_new_*_device() calls
    fail. Make sure its counterpart for unregistering handles ERR_PTRs as
    well.

    Signed-off-by: Wolfram Sang
    Reviewed-by: Geert Uytterhoeven
    Signed-off-by: Wolfram Sang

    Wolfram Sang
     
  • Pull mtd fix from Miquel Raynal:
    "Add a 'depends on' in the core Hyperbus Kconfig entry to avoid build
    errors"

    * tag 'mtd/fixes-for-5.3-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux:
    mtd: hyperbus: fix dependency and build error

    Linus Torvalds