1. 30 Jul, 2019 10 commits
  2. 26 Jul, 2019 6 commits
    • Vincenzo Frascino's avatar
      mips: vdso: Fix flip/flop vdso building bug · cdab7e2c
      Vincenzo Frascino authored
      Running "make" on an already compiled kernel tree will rebuild the
      vdso library even if this has not been modified.
      
      $ make
        GEN     Makefile
        Using linux as source for kernel
        CALL   linux/scripts/atomic/check-atomics.sh
        CALL   linux/scripts/checksyscalls.sh
      <stdin>:1511:2: warning: #warning syscall clone3 not implemented [-Wcpp]
        CHK     include/generated/compile.h
        VDSO    arch/mips/vdso/vdso.so.dbg.raw
        OBJCOPY arch/mips/vdso/vdso.so.raw
        GENVDSO arch/mips/vdso/vdso-image.c
        CC      arch/mips/vdso/vdso-image.o
        AR      arch/mips/vdso/built-in.a
        AR      arch/mips/built-in.a
        CHK     include/generated/autoksyms.h
        GEN     .version
        CHK     include/generated/compile.h
        UPD     include/generated/compile.h
        CC      init/version.o
        AR      init/built-in.a
        LD      vmlinux.o
        MODPOST vmlinux.o
        MODINFO modules.builtin.modinfo
        KSYM    .tmp_kallsyms1.o
        KSYM    .tmp_kallsyms2.o
        LD      vmlinux
        SORTEX  vmlinux
        SYSMAP  System.map
        Building modules, stage 2.
        ITS     arch/mips/boot/vmlinux.gz.its
        OBJCOPY arch/mips/boot/vmlinux.bin
        MODPOST 7 modules
        GZIP    arch/mips/boot/vmlinux.bin.gz
        ITB     arch/mips/boot/vmlinux.gz.itb
      
      The issue is generated by the fact that "if_changed" is called twice
      in a single target.
      
      Fix the build bug merging the two commands into a single function.
      Signed-off-by: default avatarVincenzo Frascino <vincenzo.frascino@arm.com>
      Signed-off-by: default avatarPaul Burton <paul.burton@mips.com>
      cdab7e2c
    • Vincenzo Frascino's avatar
      mips: vdso: Fix source path · b4c0f7fa
      Vincenzo Frascino authored
      The vdso library for o32 and n32 does not compile compile correctly when
      building outside of the source tree due to a wrong inclusion path for
      config-n32-o32-env.c resulting in the error below:
      
      cc1: fatal error: arch/mips/vdso/config-n32-o32-env.c:
      No such file or dnirectory
      compilation terminated.
      arch/mips/vdso/Makefile:153: recipe for target
      'arch/mips/vdso/vgettimeofday-o32.o' failed
      make[3]: *** [arch/mips/vdso/vgettimeofday-o32.o] Error 1
      scripts/Makefile.build:490: recipe for target 'arch/mips/vdso' failed
      
      Fix the config-n32-o32-env.c inclusion path prepending the $(srctree)
      variable.
      Signed-off-by: default avatarVincenzo Frascino <vincenzo.frascino@arm.com>
      [paul.burton@mips.com: Note that this occurs specifically when building
                             outside of the source tree.]
      Signed-off-by: default avatarPaul Burton <paul.burton@mips.com>
      b4c0f7fa
    • Edward Matijević's avatar
      MIPS: BCM47XX: Add support for Netgear R6200 V1 · 42374b94
      Edward Matijević authored
      The Netgear R6200 v1 uses a BCM4718A1 SOC and a BCM4352/BCM4360 for 5GHz
      wireless. This patch adds support for detecting this model board and
      registers the 3 buttons.
      
      I have tested that the device can boot kernels 4.14 and 4.19 under
      OpenWRT.
      
      There is one issue that the LEDs on the device are controlled by a
      74HC164 that uses bit-banging instead of SPI so it isn't accessible to
      the kernel without adding a workaround. Without any workaround the
      device on boot will flash all LEDs once then the power LED will remain
      amber as all other LEDs stay off.
      Signed-off-by: default avatarEdward Matijevic <motolav@gmail.com>
      Acked-by: default avatarHauke Mehrtens <hauke@hauke-m.de>
      [paul.burton@mips.com:
        - Sort bcm47xx_board_list_board_id alphabetically by board type.
        - Fix whitespace.
        - Wrap commit message & drop OpenWRT-based justification for
          bcm47xx_board_list_board_id being mis-sorted.]
      Signed-off-by: default avatarPaul Burton <paul.burton@mips.com>
      42374b94
    • Vincenzo Frascino's avatar
      mips: Add clock_gettime64 entry point · 1f66c45d
      Vincenzo Frascino authored
      With the release of Linux 5.1 has been added a new syscall,
      clock_gettime64, that provided a 64 bit time value for a specified
      clock_ID to make the kernel Y2038 safe on 32 bit architectures.
      
      Update the mips32 specific vDSO library accordingly with what it has
      been done for the kernel syscall exposing the clock_gettime64 entry
      point.
      
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: Paul Burton <paul.burton@mips.com>
      Signed-off-by: default avatarVincenzo Frascino <vincenzo.frascino@arm.com>
      Signed-off-by: default avatarPaul Burton <paul.burton@mips.com>
      1f66c45d
    • Vincenzo Frascino's avatar
      mips: Add clock_getres entry point · abed3d82
      Vincenzo Frascino authored
      The generic vDSO library provides an implementation of clock_getres()
      that can be leveraged by each architecture.
      
      Add clock_getres() entry point on mips.
      
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: Paul Burton <paul.burton@mips.com>
      Signed-off-by: default avatarVincenzo Frascino <vincenzo.frascino@arm.com>
      Signed-off-by: default avatarPaul Burton <paul.burton@mips.com>
      abed3d82
    • Vincenzo Frascino's avatar
      mips: Add support for generic vDSO · 24640f23
      Vincenzo Frascino authored
      The mips vDSO library requires some adaptations to take advantage of the
      newly introduced generic vDSO library.
      
      Introduce the following changes:
       - Modification of vdso.c to be compliant with the common vdso datapage
       - Use of lib/vdso for gettimeofday
      
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: Paul Burton <paul.burton@mips.com>
      Signed-off-by: default avatarVincenzo Frascino <vincenzo.frascino@arm.com>
      [paul.burton@mips.com: Prepend $(src) to config-n32-o32-env.c path.]
      Signed-off-by: default avatarPaul Burton <paul.burton@mips.com>
      24640f23
  3. 23 Jul, 2019 4 commits
  4. 22 Jul, 2019 1 commit
  5. 21 Jul, 2019 19 commits
    • Dmitry Korotin's avatar
      MIPS: pte_special()/pte_mkspecial() support · 61cbfff4
      Dmitry Korotin authored
      Add support for pte_special() & pte_mkspecial(), replacing our previous
      stubs with functional implementations.
      Signed-off-by: default avatarDmitry Korotin <dkorotin@wavecomp.com>
      [paul.burton@mips.com:
        - Fix for CONFIG_PHYS_ADDR_T_64BIT && CONFIG_CPU_MIPS32.
        - Rewrite commit message.]
      Signed-off-by: default avatarPaul Burton <paul.burton@mips.com>
      Cc: linux-mips@vger.kernel.org
      61cbfff4
    • Jonas Gorski's avatar
      MIPS: BMIPS: add clock controller nodes · a23c4134
      Jonas Gorski authored
      Now that we have a driver for the clock controller, add nodes to allow
      devices to make use of it.
      Signed-off-by: default avatarJonas Gorski <jonas.gorski@gmail.com>
      Reviewed-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
      Reviewed-by: default avatarPhilippe Mathieu-Daudé <f4bug@amsat.org>
      Signed-off-by: default avatarPaul Burton <paul.burton@mips.com>
      Cc: linux-clk@vger.kernel.org
      Cc: devicetree@vger.kernel.org
      Cc: linux-mips@vger.kernel.org
      Cc: Michael Turquette <mturquette@baylibre.com>
      Cc: Stephen Boyd <sboyd@kernel.org>
      Cc: Rob Herring <robh+dt@kernel.org>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: bcm-kernel-feedback-list@broadcom.com
      Cc: Kevin Cernekee <cernekee@gmail.com>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: James Hogan <jhogan@kernel.org>
      a23c4134
    • Paul Cercueil's avatar
      MIPS: DTS: jz4740: Add node for the MMC driver · 5dad549d
      Paul Cercueil authored
      Add a devicetree node for the jz4740-mmc driver.
      Signed-off-by: default avatarPaul Cercueil <paul@crapouillou.net>
      Signed-off-by: default avatarPaul Burton <paul.burton@mips.com>
      Cc: Rob Herring <robh+dt@kernel.org>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: James Hogan <jhogan@kernel.org>
      Cc: Ulf Hansson <ulf.hansson@linaro.org>
      Cc: Linus Walleij <linus.walleij@linaro.org>
      Cc: devicetree@vger.kernel.org
      Cc: linux-mips@vger.kernel.org
      Cc: linux-kernel@vger.kernel.org
      Cc: linux-mmc@vger.kernel.org
      5dad549d
    • Paul Cercueil's avatar
      MIPS: Decode config3 register on Ingenic SoCs · 368fb26c
      Paul Cercueil authored
      XBurst misses a config2 register, so config3 decode was skipped in
      decode_configs().
      Signed-off-by: default avatarPaul Cercueil <paul@crapouillou.net>
      Signed-off-by: default avatarPaul Burton <paul.burton@mips.com>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: James Hogan <jhogan@kernel.org>
      Cc: od@zcrc.me
      Cc: linux-mips@vger.kernel.org
      Cc: linux-kernel@vger.kernel.org
      368fb26c
    • Paul Cercueil's avatar
      MIPS: Rename JZRISC to XBURST · 3b25b763
      Paul Cercueil authored
      The real name of the CPU present in the JZ line of SoCs from Ingenic is
      XBurst, not JZRISC.
      Signed-off-by: default avatarPaul Cercueil <paul@crapouillou.net>
      [paul.burton@mips.com: Leave /proc/cpuinfo string as-is.]
      Signed-off-by: default avatarPaul Burton <paul.burton@mips.com>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: James Hogan <jhogan@kernel.org>
      Cc: od@zcrc.me
      Cc: linux-mips@vger.kernel.org
      Cc: linux-kernel@vger.kernel.org
      3b25b763
    • Daniel Silsby's avatar
      MIPS: Undefine PMD_ORDER for 32-bit builds · 7176b6ac
      Daniel Silsby authored
      During an update long ago to conform to 4-level page code, PMD_ORDER was
      changed from 0 to 1, despite the fact that a PMD table is not used at
      all in a 32-bit MIPS build. PMD_ORDER does not seem to be used in these
      builds. Now, it matches PUD_ORDER, a nonsense #define to give a build
      failure with informative error.
      
      The older commit that had redefined PMD_ORDER was
      commit c6e8b587 ("Update MIPS to use the 4-level pagetable code
      thereby getting rid of the compacrapability headers.")
      Signed-off-by: default avatarDaniel Silsby <dansilsby@gmail.com>
      Signed-off-by: default avatarPaul Cercueil <paul@crapouillou.net>
      Signed-off-by: default avatarPaul Burton <paul.burton@mips.com>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: James Hogan <jhogan@kernel.org>
      Cc: od@zcrc.me
      Cc: linux-mips@vger.kernel.org
      Cc: linux-kernel@vger.kernel.org
      7176b6ac
    • Daniel Silsby's avatar
      MIPS: ingenic: Add support for huge pages · b35d2653
      Daniel Silsby authored
      The Ingenic jz47xx SoC series of 32-bit MIPS CPUs support huge pages.
      Signed-off-by: default avatarDaniel Silsby <dansilsby@gmail.com>
      Signed-off-by: default avatarPaul Cercueil <paul@crapouillou.net>
      Signed-off-by: default avatarPaul Burton <paul.burton@mips.com>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: James Hogan <jhogan@kernel.org>
      Cc: od@zcrc.me
      Cc: linux-mips@vger.kernel.org
      Cc: linux-kernel@vger.kernel.org
      b35d2653
    • Daniel Silsby's avatar
      MIPS: Decouple CPU_SUPPORTS_HUGEPAGES from 64BIT · 45e03e62
      Daniel Silsby authored
      We now have partial 32-bit MIPS huge page support, so there's no need
      to restrict these config options only to 64-bit systems.
      Signed-off-by: default avatarDaniel Silsby <dansilsby@gmail.com>
      Signed-off-by: default avatarPaul Cercueil <paul@crapouillou.net>
      Signed-off-by: default avatarPaul Burton <paul.burton@mips.com>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: James Hogan <jhogan@kernel.org>
      Cc: od@zcrc.me
      Cc: linux-mips@vger.kernel.org
      Cc: linux-kernel@vger.kernel.org
      45e03e62
    • Daniel Silsby's avatar
      MIPS: Add partial 32-bit huge page support · 35476311
      Daniel Silsby authored
       This adds initial support for huge pages to 32-bit MIPS systems.
      Systems with extended addressing enabled (EVA,XPA,Alchemy/Netlogic)
      are not yet supported.
       With huge pages enabled, this implementation will increase page table
      memory overhead to match that of a 64-bit MIPS system. However, the
      cache-friendliness of page table walks is not affected significantly.
      Signed-off-by: default avatarDaniel Silsby <dansilsby@gmail.com>
      Signed-off-by: default avatarPaul Cercueil <paul@crapouillou.net>
      Signed-off-by: default avatarPaul Burton <paul.burton@mips.com>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: James Hogan <jhogan@kernel.org>
      Cc: od@zcrc.me
      Cc: linux-mips@vger.kernel.org
      Cc: linux-kernel@vger.kernel.org
      35476311
    • Daniel Silsby's avatar
      MIPS: Disallow CPU_SUPPORTS_HUGEPAGES for XPA,EVA · 171543e7
      Daniel Silsby authored
      In preparation for 32-bit MIPS huge page support.
      
      EVA,XPA are extended-addressing modes for 32-bit MIPS systems. Because
      huge pages aren't currently supported in 32-bit MIPS, this doesn't take
      any features away from EVA,XPA-enabled systems. However, the soon-to-
      come 32-bit MIPS huge page support doesn't yet support them.
      
      This also disables CPU_SUPPORTS_HUGEPAGES for the small number of 32-bit
      MIPS CPUs from Alchemy/Netlogic that support a custom 36-bit extended
      addressing. It's unknown if they even support huge pages in hardware.
      Signed-off-by: default avatarDaniel Silsby <dansilsby@gmail.com>
      Signed-off-by: default avatarPaul Cercueil <paul@crapouillou.net>
      Signed-off-by: default avatarPaul Burton <paul.burton@mips.com>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: James Hogan <jhogan@kernel.org>
      Cc: od@zcrc.me
      Cc: linux-mips@vger.kernel.org
      Cc: linux-kernel@vger.kernel.org
      171543e7
    • Linus Torvalds's avatar
      Linus 5.3-rc1 · 5f9e832c
      Linus Torvalds authored
      5f9e832c
    • Linus Torvalds's avatar
      Merge tag 'devicetree-fixes-for-5.3' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux · c7bf0a0f
      Linus Torvalds authored
      Pull Devicetree fixes from Rob Herring:
       "Fix several warnings/errors in validation of binding schemas"
      
      * tag 'devicetree-fixes-for-5.3' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux:
        dt-bindings: pinctrl: stm32: Fix missing 'clocks' property in examples
        dt-bindings: iio: ad7124: Fix dtc warnings in example
        dt-bindings: iio: avia-hx711: Fix avdd-supply typo in example
        dt-bindings: pinctrl: aspeed: Fix AST2500 example errors
        dt-bindings: pinctrl: aspeed: Fix 'compatible' schema errors
        dt-bindings: riscv: Limit cpus schema to only check RiscV 'cpu' nodes
        dt-bindings: Ensure child nodes are of type 'object'
      c7bf0a0f
    • Linus Torvalds's avatar
      Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · d6788eb7
      Linus Torvalds authored
      Pull vfs documentation typo fix from Al Viro.
      
      * 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        typo fix: it's d_make_root, not d_make_inode...
      d6788eb7
    • Linus Torvalds's avatar
      Merge tag '5.3-smb3-fixes' of git://git.samba.org/sfrench/cifs-2.6 · 91962d0f
      Linus Torvalds authored
      Pull cifs fixes from Steve French:
       "Two fixes for stable, one that had dependency on earlier patch in this
        merge window and can now go in, and a perf improvement in SMB3 open"
      
      * tag '5.3-smb3-fixes' of git://git.samba.org/sfrench/cifs-2.6:
        cifs: update internal module number
        cifs: flush before set-info if we have writeable handles
        smb3: optimize open to not send query file internal info
        cifs: copy_file_range needs to strip setuid bits and update timestamps
        CIFS: fix deadlock in cached root handling
      91962d0f
    • Qian Cai's avatar
      iommu/amd: fix a crash in iova_magazine_free_pfns · 8cf66504
      Qian Cai authored
      The commit b3aa14f0 ("iommu: remove the mapping_error dma_map_ops
      method") incorrectly changed the checking from dma_ops_alloc_iova() in
      map_sg() causes a crash under memory pressure as dma_ops_alloc_iova()
      never return DMA_MAPPING_ERROR on failure but 0, so the error handling
      is all wrong.
      
         kernel BUG at drivers/iommu/iova.c:801!
          Workqueue: kblockd blk_mq_run_work_fn
          RIP: 0010:iova_magazine_free_pfns+0x7d/0xc0
          Call Trace:
           free_cpu_cached_iovas+0xbd/0x150
           alloc_iova_fast+0x8c/0xba
           dma_ops_alloc_iova.isra.6+0x65/0xa0
           map_sg+0x8c/0x2a0
           scsi_dma_map+0xc6/0x160
           pqi_aio_submit_io+0x1f6/0x440 [smartpqi]
           pqi_scsi_queue_command+0x90c/0xdd0 [smartpqi]
           scsi_queue_rq+0x79c/0x1200
           blk_mq_dispatch_rq_list+0x4dc/0xb70
           blk_mq_sched_dispatch_requests+0x249/0x310
           __blk_mq_run_hw_queue+0x128/0x200
           blk_mq_run_work_fn+0x27/0x30
           process_one_work+0x522/0xa10
           worker_thread+0x63/0x5b0
           kthread+0x1d2/0x1f0
           ret_from_fork+0x22/0x40
      
      Fixes: b3aa14f0 ("iommu: remove the mapping_error dma_map_ops method")
      Signed-off-by: default avatarQian Cai <cai@lca.pw>
      Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      8cf66504
    • Mike Rapoport's avatar
      hexagon: switch to generic version of pte allocation · 618381f0
      Mike Rapoport authored
      The hexagon implementation pte_alloc_one(), pte_alloc_one_kernel(),
      pte_free_kernel() and pte_free() is identical to the generic except of
      lack of __GFP_ACCOUNT for the user PTEs allocation.
      
      Switch hexagon to use generic version of these functions.
      Signed-off-by: default avatarMike Rapoport <rppt@linux.ibm.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      618381f0
    • Linus Torvalds's avatar
      Merge tag 'ntb-5.3' of git://github.com/jonmason/ntb · bec5545e
      Linus Torvalds authored
      Pull NTB updates from Jon Mason:
       "New feature to add support for NTB virtual MSI interrupts, the ability
        to test and use this feature in the NTB transport layer.
      
        Also, bug fixes for the AMD and Switchtec drivers, as well as some
        general patches"
      
      * tag 'ntb-5.3' of git://github.com/jonmason/ntb: (22 commits)
        NTB: Describe the ntb_msi_test client in the documentation.
        NTB: Add MSI interrupt support to ntb_transport
        NTB: Add ntb_msi_test support to ntb_test
        NTB: Introduce NTB MSI Test Client
        NTB: Introduce MSI library
        NTB: Rename ntb.c to support multiple source files in the module
        NTB: Introduce functions to calculate multi-port resource index
        NTB: Introduce helper functions to calculate logical port number
        PCI/switchtec: Add module parameter to request more interrupts
        PCI/MSI: Support allocating virtual MSI interrupts
        ntb_hw_switchtec: Fix setup MW with failure bug
        ntb_hw_switchtec: Skip unnecessary re-setup of shared memory window for crosslink case
        ntb_hw_switchtec: Remove redundant steps of switchtec_ntb_reinit_peer() function
        NTB: correct ntb_dev_ops and ntb_dev comment typos
        NTB: amd: Silence shift wrapping warning in amd_ntb_db_vector_mask()
        ntb_hw_switchtec: potential shift wrapping bug in switchtec_ntb_init_sndev()
        NTB: ntb_transport: Ensure qp->tx_mw_dma_addr is initaliazed
        NTB: ntb_hw_amd: set peer limit register
        NTB: ntb_perf: Clear stale values in doorbell and command SPAD register
        NTB: ntb_perf: Disable NTB link after clearing peer XLAT registers
        ...
      bec5545e
    • Al Viro's avatar
      typo fix: it's d_make_root, not d_make_inode... · 1b03bc5c
      Al Viro authored
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      1b03bc5c
    • Rob Herring's avatar
      dt-bindings: pinctrl: stm32: Fix missing 'clocks' property in examples · e2297f7c
      Rob Herring authored
      Now that examples are validated against the DT schema, an error with
      required 'clocks' property missing is exposed:
      
      Documentation/devicetree/bindings/pinctrl/st,stm32-pinctrl.example.dt.yaml: \
      pinctrl@40020000: gpio@0: 'clocks' is a required property
      Documentation/devicetree/bindings/pinctrl/st,stm32-pinctrl.example.dt.yaml: \
      pinctrl@50020000: gpio@1000: 'clocks' is a required property
      Documentation/devicetree/bindings/pinctrl/st,stm32-pinctrl.example.dt.yaml: \
      pinctrl@50020000: gpio@2000: 'clocks' is a required property
      
      Add the missing 'clocks' properties to the examples to fix the errors.
      
      Fixes: 2c9239c1 ("dt-bindings: pinctrl: Convert stm32 pinctrl bindings to json-schema")
      Cc: Linus Walleij <linus.walleij@linaro.org>
      Cc: Maxime Coquelin <mcoquelin.stm32@gmail.com>
      Cc: linux-gpio@vger.kernel.org
      Cc: linux-stm32@st-md-mailman.stormreply.com
      Acked-by: default avatarAlexandre TORGUE <alexandre.torgue@st.com>
      Signed-off-by: default avatarRob Herring <robh@kernel.org>
      e2297f7c