1. 06 Aug, 2019 2 commits
    • Zhou Yanjie's avatar
      MIPS: Ingenic: Disable broken BTB lookup optimization. · 053951dd
      Zhou Yanjie authored
      In order to further reduce power consumption, the XBurst core
      by default attempts to avoid branch target buffer lookups by
      detecting & special casing loops. This feature will cause
      BogoMIPS and lpj calculate in error. Set cp0 config7 bit 4 to
      disable this feature.
      Signed-off-by: default avatarZhou Yanjie <zhouyanjie@zoho.com>
      Signed-off-by: default avatarPaul Burton <paul.burton@mips.com>
      Cc: linux-mips@vger.kernel.org
      Cc: linux-kernel@vger.kernel.org
      Cc: ralf@linux-mips.org
      Cc: paul@crapouillou.net
      Cc: jhogan@kernel.org
      Cc: malat@debian.org
      Cc: gregkh@linuxfoundation.org
      Cc: tglx@linutronix.de
      Cc: allison@lohutok.net
      Cc: syq@debian.org
      Cc: chenhc@lemote.com
      Cc: jiaxun.yang@flygoat.com
      053951dd
    • Zhou Yanjie's avatar
      MIPS: Ingenic: Fix bugs when detecting X1000's L2 cache. · 579de8f8
      Zhou Yanjie authored
      1.fix bugs when detecting L2 cache sets value.
      2.fix bugs when detecting L2 cache ways value.
      Signed-off-by: default avatarZhou Yanjie <zhouyanjie@zoho.com>
      Signed-off-by: default avatarPaul Burton <paul.burton@mips.com>
      Cc: linux-mips@vger.kernel.org
      Cc: linux-kernel@vger.kernel.org
      Cc: ralf@linux-mips.org
      Cc: paul@crapouillou.net
      Cc: jhogan@kernel.org
      Cc: malat@debian.org
      Cc: gregkh@linuxfoundation.org
      Cc: tglx@linutronix.de
      Cc: allison@lohutok.net
      Cc: syq@debian.org
      Cc: chenhc@lemote.com
      Cc: jiaxun.yang@flygoat.com
      579de8f8
  2. 30 Jul, 2019 13 commits
  3. 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
  4. 23 Jul, 2019 4 commits
  5. 22 Jul, 2019 1 commit
  6. 21 Jul, 2019 14 commits