1. Jul 20, 2018
    • Uwe Kleine-König's avatar
      ARM: dts: imx6: RDU2: fix irq type for mv88e6xxx switch · e01a06c8
      Uwe Kleine-König authored
      
      
      The Marvell switches report their interrupts in a level sensitive way.
      When using edge sensitive detection a race condition in the interrupt
      handler of the swich might result in the OS to miss all future events
      which might make the switch non-functional.
      
      The problem is that both mv88e6xxx_g2_irq_thread_fn() and
      mv88e6xxx_g1_irq_thread_work() sample the irq cause register
      (MV88E6XXX_G2_INT_SRC and MV88E6XXX_G1_STS respectively) once and then
      handle the observed sources. If after sampling but before all observed
      irq sources are handled a new irq source gets active this is not noticed
      by the handler which returns unsuspecting, but the interrupt line stays
      active which prevents the edge detector to kick in.
      
      All device trees but imx6qdl-zii-rdu2 get this right (most of them by
      not specifying an interrupt parent). So fix imx6qdl-zii-rdu2
      accordingly.
      
      Signed-off-by: default avatarUwe Kleine-König <u.kleine-koenig@pengutronix.de>
      Fixes: f64992d1
      
       ("ARM: dts: imx6: RDU2: Add Switch interrupts")
      Reviewed-by: default avatarAndrew Lunn <andrew@lunn.ch>
      Signed-off-by: default avatarShawn Guo <shawnguo@kernel.org>
      e01a06c8
  2. Jul 19, 2018
    • Anson Huang's avatar
      soc: imx: gpc: restrict register range for regmap access · de2d9b52
      Anson Huang authored
      GPC registers are NOT continuous, some registers are
      reserved and accessing them from userspace will trigger
      external abort, add regmap register access table to
      avoid below abort:
      
      root@imx6slevk:~# cat /sys/kernel/debug/regmap/20dc000.gpc/registers
      [  108.480477] Unhandled fault: imprecise external abort (0x1406) at 0xb6db5004
      [  108.487985] pgd = 42b54bfd
      [  108.490741] [b6db5004] *pgd=ba1b7831
      [  108.494386] Internal error: : 1406 [#1] SMP ARM
      [  108.498943] Modules linked in:
      [  108.502043] CPU: 0 PID: 389 Comm: cat Not tainted 4.18.0-rc1-00074-gc9f1f60-dirty #482
      [  108.509982] Hardware name: Freescale i.MX6 SoloLite (Device Tree)
      [  108.516123] PC is at regmap_mmio_read32le+0x20/0x24
      [  108.521031] LR is at regmap_mmio_read+0x40/0x60
      [  108.525586] pc : [<c059cf74>]    lr : [<c059d1ac>]    psr: 20060093
      [  108.531875] sp : eccf1d98  ip : eccf1da8  fp : eccf1da4
      [  108.537122] r10: ec2d3800  r9 : eccf1f60  r8 : ecfc0000
      [  108.542370] r7 : eccf1e2c  r6 : eccf1e2c  r5 : 00000028  r4 : ec338e00
      [  108.548920] r3 : 00000000  r2 : eccf1e2c  r1 : f0980028  r0 : 00000000
      [  108.555474] Flags: nzCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM  Segment none
      [  108.562720] Control: 10c5387d  Table: acf4004a  DAC: 00000051
      [  108.568491] Process cat (pid: 389, stack limit = 0xd4318a65)
      [  108.574174] Stack: (0xeccf1d98 to 0xeccf2000)
      
      Fixes: 721cabf6
      
       ("soc: imx: move PGC handling to a new GPC driver")
      Signed-off-by: default avatarAnson Huang <Anson.Huang@nxp.com>
      Reviewed-by: default avatarFabio Estevam <fabio.estevam@nxp.com>
      Signed-off-by: default avatarShawn Guo <shawnguo@kernel.org>
      de2d9b52
  3. Jul 03, 2018
  4. Jul 01, 2018
  5. Jun 19, 2018
  6. Jun 17, 2018
    • Anson Huang's avatar
      soc: imx: gpcv2: correct PGC offset · 3637f12f
      Anson Huang authored
      
      
      Correct MIPI/PCIe/USB_HSIC's PGC offset based on
      design RTL, the values in the Reference Manual
      (Rev. 1, 01/2018 and the older ones) are incorrect.
      
      The correct offset values should be as below:
      
      0x800 ~ 0x83F: PGC for core0 of A7 platform;
      0x840 ~ 0x87F: PGC for core1 of A7 platform;
      0x880 ~ 0x8BF: PGC for SCU of A7 platform;
      0xA00 ~ 0xA3F: PGC for fastmix/megamix;
      0xC00 ~ 0xC3F: PGC for MIPI PHY;
      0xC40 ~ 0xC7F: PGC for PCIe_PHY;
      0xC80 ~ 0xCBF: PGC for USB OTG1 PHY;
      0xCC0 ~ 0xCFF: PGC for USB OTG2 PHY;
      0xD00 ~ 0xD3F: PGC for USB HSIC PHY;
      
      Signed-off-by: default avatarAnson Huang <Anson.Huang@nxp.com>
      Fixes: 03aa1262
      
       ("soc: imx: Add GPCv2 power gating driver")
      Acked-by: default avatarAndrey Smirnov <andrew.smirnov@gmail.com>
      Reviewed-by: default avatarFabio Estevam <fabio.estevam@nxp.com>
      Signed-off-by: default avatarShawn Guo <shawnguo@kernel.org>
      3637f12f
    • Sean Nyekjaer's avatar
      ARM: dts: imx6q: Use correct SDMA script for SPI5 core · df07101e
      Sean Nyekjaer authored
      According to the reference manual the shp_2_mcu / mcu_2_shp
      scripts must be used for devices connected through the SPBA.
      
      This fixes an issue we saw with DMA transfers.
      Sometimes the SPI controller RX FIFO was not empty after a DMA
      transfer and the driver got stuck in the next PIO transfer when
      it read one word more than expected.
      
      commit dd4b487b ("ARM: dts: imx6: Use correct SDMA script
      for SPI cores") is fixing the same issue but only for SPI1 - 4.
      
      Fixes: 67794025
      
       ("ARM: dts: imx6q: enable dma for ecspi5")
      Signed-off-by: default avatarSean Nyekjaer <sean.nyekjaer@prevas.dk>
      Reviewed-by: default avatarFabio Estevam <fabio.estevam@nxp.com>
      Signed-off-by: default avatarShawn Guo <shawnguo@kernel.org>
      df07101e
    • Linus Torvalds's avatar
      Linux 4.18-rc1 · ce397d21
      Linus Torvalds authored
      ce397d21
    • Linus Torvalds's avatar
      Merge tag 'for-linus-20180616' of git://git.kernel.dk/linux-block · 265c5596
      Linus Torvalds authored
      Pull block fixes from Jens Axboe:
       "A collection of fixes that should go into -rc1. This contains:
      
         - bsg_open vs bsg_unregister race fix (Anatoliy)
      
         - NVMe pull request from Christoph, with fixes for regressions in
           this window, FC connect/reconnect path code unification, and a
           trace point addition.
      
         - timeout fix (Christoph)
      
         - remove a few unused functions (Christoph)
      
         - blk-mq tag_set reinit fix (Roman)"
      
      * tag 'for-linus-20180616' of git://git.kernel.dk/linux-block:
        bsg: fix race of bsg_open and bsg_unregister
        block: remov blk_queue_invalidate_tags
        nvme-fabrics: fix and refine state checks in __nvmf_check_ready
        nvme-fabrics: handle the admin-only case properly in nvmf_check_ready
        nvme-fabrics: refactor queue ready check
        blk-mq: remove blk_mq_tagset_iter
        nvme: remove nvme_reinit_tagset
        nvme-fc: fix nulling of queue data on reconnect
        nvme-fc: remove reinit_request routine
        blk-mq: don't time out requests again that are in the timeout handler
        nvme-fc: change controllers first connect to use reconnect path
        nvme: don't rely on the changed namespace list log
        nvmet: free smart-log buffer after use
        nvme-rdma: fix error flow during mapping request data
        nvme: add bio remapping tracepoint
        nvme: fix NULL pointer dereference in nvme_init_subsystem
        blk-mq: reinit q->tag_set_list entry only after grace period
      265c5596
    • Linus Torvalds's avatar
      Merge tag 'docs-broken-links' of git://linuxtv.org/mchehab/experimental · 5e7b9212
      Linus Torvalds authored
      Pull documentation fixes from Mauro Carvalho Chehab:
       "This solves a series of broken links for files under Documentation,
        and improves a script meant to detect such broken links (see
        scripts/documentation-file-ref-check).
      
        The changes on this series are:
      
         - can.rst: fix a footnote reference;
      
         - crypto_engine.rst: Fix two parsing warnings;
      
         - Fix a lot of broken references to Documentation/*;
      
         - improve the scripts/documentation-file-ref-check script, in order
           to help detecting/fixing broken references, preventing
           false-positives.
      
        After this patch series, only 33 broken references to doc files are
        detected by scripts/documentation-file-ref-check"
      
      * tag 'docs-broken-links' of git://linuxtv.org/mchehab/experimental: (26 commits)
        fix a series of Documentation/ broken file name references
        Documentation: rstFlatTable.py: fix a broken reference
        ABI: sysfs-devices-system-cpu: remove a broken reference
        devicetree: fix a series of wrong file references
        devicetree: fix name of pinctrl-bindings.txt
        devicetree: fix some bindings file names
        MAINTAINERS: fix location of DT npcm files
        MAINTAINERS: fix location of some display DT bindings
        kernel-parameters.txt: fix pointers to sound parameters
        bindings: nvmem/zii: Fix location of nvmem.txt
        docs: Fix more broken references
        scripts/documentation-file-ref-check: check tools/*/Documentation
        scripts/documentation-file-ref-check: get rid of false-positives
        scripts/documentation-file-ref-check: hint: dash or underline
        scripts/documentation-file-ref-check: add a fix logic for DT
        scripts/documentation-file-ref-check: accept more wildcards at filenames
        scripts/documentation-file-ref-check: fix help message
        media: max2175: fix location of driver's companion documentation
        media: v4l: fix broken video4linux docs locations
        media: dvb: point to the location of the old README.dvb-usb file
        ...
      5e7b9212
    • Linus Torvalds's avatar
      Merge tag 'fsnotify_for_v4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · dbb2816f
      Linus Torvalds authored
      Pull fsnotify updates from Jan Kara:
       "fsnotify cleanups unifying handling of different watch types.
      
        This is the shortened fsnotify series from Amir with the last five
        patches pulled out. Amir has modified those patches to not change
        struct inode but obviously it's too late for those to go into this
        merge window"
      
      * tag 'fsnotify_for_v4.18-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        fsnotify: add fsnotify_add_inode_mark() wrappers
        fanotify: generalize fanotify_should_send_event()
        fsnotify: generalize send_to_group()
        fsnotify: generalize iteration of marks by object type
        fsnotify: introduce marks iteration helpers
        fsnotify: remove redundant arguments to handle_event()
        fsnotify: use type id to identify connector object type
      dbb2816f
    • Linus Torvalds's avatar
      Merge tag 'fbdev-v4.18' of git://github.com/bzolnier/linux · 644f2639
      Linus Torvalds authored
      Pull fbdev updates from Bartlomiej Zolnierkiewicz:
       "There is nothing really major here, few small fixes, some cleanups and
        dead drivers removal:
      
         - mark omapfb drivers as orphans in MAINTAINERS file (Tomi Valkeinen)
      
         - add missing module license tags to omap/omapfb driver (Arnd
           Bergmann)
      
         - add missing GPIOLIB dependendy to omap2/omapfb driver (Arnd
           Bergmann)
      
         - convert savagefb, aty128fb & radeonfb drivers to use msleep & co.
           (Jia-Ju Bai)
      
         - allow COMPILE_TEST build for viafb driver (media part was reviewed
           by media subsystem Maintainer)
      
         - remove unused MERAM support from sh_mobile_lcdcfb and shmob-drm
           drivers (drm parts were acked by shmob-drm driver Maintainer)
      
         - remove unused auo_k190xfb drivers
      
         - misc cleanups (Souptick Joarder, Wolfram Sang, Markus Elfring, Andy
           Shevchenko, Colin Ian King)"
      
      * tag 'fbdev-v4.18' of git://github.com/bzolnier/linux: (26 commits)
        fb_omap2: add gpiolib dependency
        video/omap: add module license tags
        MAINTAINERS: make omapfb orphan
        video: fbdev: pxafb: match_string() conversion fixup
        video: fbdev: nvidia: fix spelling mistake: "scaleing" -> "scaling"
        video: fbdev: fix spelling mistake: "frambuffer" -> "framebuffer"
        video: fbdev: pxafb: Convert to use match_string() helper
        video: fbdev: via: allow COMPILE_TEST build
        video: fbdev: remove unused sh_mobile_meram driver
        drm: shmobile: remove unused MERAM support
        video: fbdev: sh_mobile_lcdcfb: remove unused MERAM support
        video: fbdev: remove unused auo_k190xfb drivers
        video: omap: Improve a size determination in omapfb_do_probe()
        video: sm501fb: Improve a size determination in sm501fb_probe()
        video: fbdev-MMP: Improve a size determination in path_init()
        video: fbdev-MMP: Delete an error message for a failed memory allocation in two functions
        video: auo_k190x: Delete an error message for a failed memory allocation in auok190x_common_probe()
        video: sh_mobile_lcdcfb: Delete an error message for a failed memory allocation in two functions
        video: sh_mobile_meram: Delete an error message for a failed memory allocation in sh_mobile_meram_probe()
        video: fbdev: sh_mobile_meram: Drop SUPERH platform dependency
        ...
      644f2639
  7. Jun 16, 2018