25 Aug, 2023

1 commit

  • Rename _PFN_SHIFT to PFN_PTE_SHIFT. Convert a few places
    to call set_pte() instead of set_pte_at(). Add set_ptes(),
    update_mmu_cache_range(), flush_icache_pages() and flush_dcache_folio().
    Change the PG_arch_1 (aka PG_dcache_dirty) flag from being per-page
    to per-folio.

    Link: https://lkml.kernel.org/r/20230802151406.3735276-18-willy@infradead.org
    Signed-off-by: Matthew Wilcox (Oracle)
    Acked-by: Mike Rapoport (IBM)
    Cc: Thomas Bogendoerfer
    Signed-off-by: Andrew Morton

    Matthew Wilcox (Oracle)
     

15 Mar, 2023

1 commit


09 Feb, 2023

1 commit


19 Sep, 2022

1 commit

  • Clang is especially sensitive about argument type matching when using
    __overloaded functions (like memcmp(), etc). Help it see that function
    pointers are just "void *". Avoids this error:

    arch/mips/bcm47xx/prom.c:89:8: error: no matching function for call to 'memcmp'
    if (!memcmp(prom_init, prom_init + mem, 32))
    ^~~~~~
    include/linux/string.h:156:12: note: candidate function not viable: no known conversion from 'void (void)' to 'const void *' for 1st argument extern int memcmp(const void *,const void *,__kernel_size_t);

    Cc: Hauke Mehrtens
    Cc: "Rafał Miłecki"
    Cc: Thomas Bogendoerfer
    Cc: linux-mips@vger.kernel.org
    Cc: Nathan Chancellor
    Cc: Nick Desaulniers
    Cc: llvm@lists.linux.dev
    Reported-by: kernel test robot
    Link: https://lore.kernel.org/lkml/202209080652.sz2d68e5-lkp@intel.com
    Signed-off-by: Kees Cook
    Signed-off-by: Thomas Bogendoerfer

    Kees Cook
     

30 Jul, 2022

1 commit


15 Jul, 2022

1 commit


09 Jan, 2022

5 commits


02 Jan, 2022

1 commit

  • If this option is not 0x0, it will be used for zboot load address.
    Otherwise, the result of calc_vmlinuz_load_addr will be used.

    The zload-y value for generic are also removed then, as the current
    value breaks booting on qemu -M boston.
    The result of calc_vmlinuz_load_addr works well for most of cases.

    The default value of bcm47xx keeps as it currently.

    Signed-off-by: YunQiang Su
    Signed-off-by: Thomas Bogendoerfer

    YunQiang Su
     

16 Dec, 2021

1 commit

  • The strlcpy should not be used because it doesn't limit the source
    length. As linus says, it's a completely useless function if you
    can't implicitly trust the source string - but that is almost always
    why people think they should use it! All in all the BSD function
    will lead some potential bugs.

    But the strscpy doesn't require reading memory from the src string
    beyond the specified "count" bytes, and since the return value is
    easier to error-check than strlcpy()'s. In addition, the implementation
    is robust to the string changing out from underneath it, unlike the
    current strlcpy() implementation.

    Thus, We prefer using strscpy instead of strlcpy.

    Signed-off-by: Jason Wang
    Signed-off-by: Thomas Bogendoerfer

    Jason Wang
     

08 Jan, 2021

1 commit


13 Nov, 2020

2 commits

  • When BCM47XX_BCMA is enabled and BCMA_DRIVER_PCI is disabled, it results
    in the following Kbuild warning:

    WARNING: unmet direct dependencies detected for BCMA_DRIVER_PCI_HOSTMODE
    Depends on [n]: MIPS [=y] && BCMA_DRIVER_PCI [=n] && PCI_DRIVERS_LEGACY [=y] && BCMA [=y]=y
    Selected by [y]:
    - BCM47XX_BCMA [=y] && BCM47XX [=y] && PCI [=y]

    The reason is that BCM47XX_BCMA selects BCMA_DRIVER_PCI_HOSTMODE without
    depending on or selecting BCMA_DRIVER_PCI while BCMA_DRIVER_PCI_HOSTMODE
    depends on BCMA_DRIVER_PCI. This can also fail building the kernel.

    Honor the kconfig dependency to remove unmet direct dependency warnings
    and avoid any potential build failures.

    Fixes: c1d1c5d4213e ("bcm47xx: add support for bcma bus")
    Link: https://bugzilla.kernel.org/show_bug.cgi?id=209879
    Signed-off-by: Necip Fazil Yildiran
    Signed-off-by: Thomas Bogendoerfer

    Necip Fazil Yildiran
     
  • When BCM47XX_SSB is enabled and SSB_PCIHOST is disabled, it results in the
    following Kbuild warning:

    WARNING: unmet direct dependencies detected for SSB_B43_PCI_BRIDGE
    Depends on [n]: SSB [=y] && SSB_PCIHOST [=n]
    Selected by [y]:
    - BCM47XX_SSB [=y] && BCM47XX [=y] && PCI [=y]

    The reason is that BCM47XX_SSB selects SSB_B43_PCI_BRIDGE without
    depending on or selecting SSB_PCIHOST while SSB_B43_PCI_BRIDGE depends on
    SSB_PCIHOST. This can also fail building the kernel as demonstrated in a
    bug report.

    Honor the kconfig dependency to remove unmet direct dependency warnings
    and avoid any potential build failures.

    Link: https://bugzilla.kernel.org/show_bug.cgi?id=210051
    Signed-off-by: Necip Fazil Yildiran
    Signed-off-by: Thomas Bogendoerfer

    Necip Fazil Yildiran
     

17 Oct, 2020

1 commit

  • Pull MIPS updates from Thomas Bogendoerfer:

    - removed support for PNX833x alias NXT_STB22x

    - included Ingenic SoC support into generic MIPS kernels

    - added support for new Ingenic SoCs

    - converted workaround selection to use Kconfig

    - replaced old boot mem functions by memblock_*

    - enabled COP2 usage in kernel for Loongson64 to make use
    of 16byte load/stores possible

    - cleanups and fixes

    * tag 'mips_5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux: (92 commits)
    MIPS: DEC: Restore bootmem reservation for firmware working memory area
    MIPS: dec: fix section mismatch
    bcm963xx_tag.h: fix duplicated word
    mips: ralink: enable zboot support
    MIPS: ingenic: Remove CPU_SUPPORTS_HUGEPAGES
    MIPS: cpu-probe: remove MIPS_CPU_BP_GHIST option bit
    MIPS: cpu-probe: introduce exclusive R3k CPU probe
    MIPS: cpu-probe: move fpu probing/handling into its own file
    MIPS: replace add_memory_region with memblock
    MIPS: Loongson64: Clean up numa.c
    MIPS: Loongson64: Select SMP in Kconfig to avoid build error
    mips: octeon: Add Ubiquiti E200 and E220 boards
    MIPS: SGI-IP28: disable use of ll/sc in kernel
    MIPS: tx49xx: move tx4939_add_memory_regions into only user
    MIPS: pgtable: Remove used PAGE_USERIO define
    MIPS: alchemy: Share prom_init implementation
    MIPS: alchemy: Fix build breakage, if TOUCHSCREEN_WM97XX is disabled
    MIPS: process: include exec.h header in process.c
    MIPS: process: Add prototype for function arch_dup_task_struct
    MIPS: idle: Add prototype for function check_wait
    ...

    Linus Torvalds
     

12 Oct, 2020

1 commit


23 Sep, 2020

1 commit

  • As there is no known soc powered by mips 1074K in bcm47xx series,
    the check with 1074K is needless. So just remove it.

    Link: https://wireless.wiki.kernel.org/en/users/Drivers/b43/soc
    Fixes: 442e14a2c55e ("MIPS: Add 1074K CPU support explicitly.")
    Signed-off-by: Wei Li
    Acked-by: Rafał Miłecki
    Signed-off-by: Thomas Bogendoerfer

    Wei Li
     

13 May, 2020

1 commit


26 Jul, 2019

1 commit

  • 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: Edward Matijevic
    Acked-by: Hauke Mehrtens
    [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: Paul Burton

    Edward Matijević
     

21 May, 2019

1 commit


10 Apr, 2019

1 commit

  • A small batch of MIPS fixes for 5.1:

    - An interrupt masking fix for Loongson-based Lemote 2F systems (fixing
    a regression from v3.19).

    - A relocation fix for configurations in which the devicetree is stored
    in an ELF section (fixing a regression from v4.7).

    - Fix jump labels for MIPSr6 kernels where they previously could
    inadvertently place a control transfer instruction in a forbidden slot
    & take unexpected exceptions (fixing MIPSr6 support added in v4.0).

    - Extend an existing USB power workaround for the Netgear WNDR3400 to v2
    boards in addition to the v3 ones that already used it.

    - Remove the custom MIPS32 definition of __kernel_fsid_t to make it
    consistent with MIPS64 & every other architecture, in particular
    resolving issues for code which tries to print the val field whose
    type previously differed (though had identical memory layout).

    Merged into mips-next to gain the MIPSr6 jump label fix before enabling
    jump labels by default for generic kernel builds.

    Signed-off-by: Paul Burton

    Paul Burton
     

20 Mar, 2019

1 commit

  • Formatting of Kconfig files doesn't look so pretty, so let the
    Great White Handkerchief come around and clean it up.

    Signed-off-by: Enrico Weigelt, metux IT consult
    Signed-off-by: Paul Burton
    Cc: linux-kernel@vger.kernel.org
    Cc: hauke@hauke-m.de
    Cc: zajec5@gmail.com
    Cc: f.fainelli@gmail.com
    Cc: bcm-kernel-feedback-list@broadcom.com
    Cc: linux-mips@vger.kernel.org

    Enrico Weigelt, metux IT consult
     

12 Mar, 2019

1 commit

  • Eric has reported on OpenWrt's bug tracking system[1], that he's not
    able to use USB devices on his WNDR3400v2 device after the boot, until
    he turns on GPIO #21 manually through sysfs.

    1. https://bugs.openwrt.org/index.php?do=details&task_id=2170

    Cc: Rafał Miłecki
    Cc: Hauke Mehrtens
    Reported-by: Eric Bohlman
    Tested-by: Eric Bohlman
    Signed-off-by: Petr Štetiar
    Signed-off-by: Paul Burton

    Petr Štetiar
     

06 Mar, 2019

1 commit

  • Pull MIPS updates from Paul Burton:

    - Support for the MIPSr6 MemoryMapID register & Global INValidate TLB
    (GINVT) instructions, allowing for more efficient TLB maintenance
    when running on a CPU such as the I6500 that supports these.

    - Enable huge page support for MIPS64r6.

    - Optimize post-DMA cache sync by removing that code entirely for
    kernel configurations in which we know it won't be needed.

    - The number of pages allocated for interrupt stacks is now calculated
    correctly, where before we would wastefully allocate too much memory
    in some configurations.

    - The ath79 platform migrates to devicetree.

    - The bcm47xx platform sees fixes for the Buffalo WHR-G54S board.

    - The ingenic/jz4740 platform gains support for appended devicetrees.

    - The cavium_octeon, lantiq, loongson32 & sgi-ip27 platforms all see
    cleanups as do various pieces of core architecture code.

    * tag 'mips_5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux: (66 commits)
    MIPS: lantiq: Remove separate GPHY Firmware loader
    MIPS: ingenic: Add support for appended devicetree
    MIPS: SGI-IP27: rework HUB interrupts
    MIPS: SGI-IP27: do boot CPU init later
    MIPS: SGI-IP27: do xtalk scanning later
    MIPS: SGI-IP27: use pr_info/pr_emerg and pr_cont to fix output
    MIPS: SGI-IP27: clean up bridge access and header files
    MIPS: SGI-IP27: get rid of volatile and hubreg_t
    MIPS: irq: Allocate accurate order pages for irq stack
    MIPS: dma-noncoherent: Remove bogus condition in dma_sync_phys()
    MIPS: eBPF: Remove REG_32BIT_ZERO_EX
    MIPS: eBPF: Always return sign extended 32b values
    MIPS: CM: Fix indentation
    MIPS: BCM47XX: Fix/improve Buffalo WHR-G54S support
    MIPS: OCTEON: program rx/tx-delay always from DT
    MIPS: OCTEON: delete board-specific link status
    MIPS: OCTEON: don't lie about interface type of CN3005 board
    MIPS: OCTEON: warn if deprecated link status is being used
    MIPS: OCTEON: add fixed-link nodes to in-kernel device tree
    MIPS: Delete unused flush_cache_sigtramp()
    ...

    Linus Torvalds
     

12 Feb, 2019

1 commit


05 Feb, 2019

1 commit

  • All users of the fixed_phy_add() pass -1 as GPIO number
    to the fixed phy driver, and all users of fixed_phy_register()
    pass -1 as GPIO number as well, except for the device
    tree MDIO bus.

    Any new users should create a proper device and pass the
    GPIO as a descriptor associated with the device so delete
    the GPIO argument from the calls and drop the code looking
    requesting a GPIO in fixed_phy_add().

    In fixed phy_register(), investigate the "fixed-link"
    node and pick the GPIO descriptor from "link-gpios" if
    this property exists. Move the corresponding code out
    of of_mdio.c as the fixed phy code anyways requires
    OF to be in use.

    Tested-by: Andrew Lunn
    Signed-off-by: Linus Walleij
    Signed-off-by: David S. Miller

    Linus Walleij
     

10 Jan, 2019

1 commit

  • So far we never had any device registered for the SoC. This resulted in
    some small issues that we kept ignoring like:
    1) Not working GPIOLIB_IRQCHIP (gpiochip_irqchip_add_key() failing)
    2) Lack of proper tree in the /sys/devices/
    3) mips_dma_alloc_coherent() silently handling empty coherent_dma_mask

    Kernel 4.19 came with a lot of DMA changes and caused a regression on
    bcm47xx. Starting with the commit f8c55dc6e828 ("MIPS: use generic dma
    noncoherent ops for simple noncoherent platforms") DMA coherent
    allocations just fail. Example:
    [ 1.114914] bgmac_bcma bcma0:2: Allocation of TX ring 0x200 failed
    [ 1.121215] bgmac_bcma bcma0:2: Unable to alloc memory for DMA
    [ 1.127626] bgmac_bcma: probe of bcma0:2 failed with error -12
    [ 1.133838] bgmac_bcma: Broadcom 47xx GBit MAC driver loaded

    The bgmac driver also triggers a WARNING:
    [ 0.959486] ------------[ cut here ]------------
    [ 0.964387] WARNING: CPU: 0 PID: 1 at ./include/linux/dma-mapping.h:516 bgmac_enet_probe+0x1b4/0x5c4
    [ 0.973751] Modules linked in:
    [ 0.976913] CPU: 0 PID: 1 Comm: swapper Not tainted 4.19.9 #0
    [ 0.982750] Stack : 804a0000 804597c4 00000000 00000000 80458fd8 8381bc2c 838282d4 80481a47
    [ 0.991367] 8042e3ec 00000001 804d38f0 00000204 83980000 00000065 8381bbe0 6f55b24f
    [ 0.999975] 00000000 00000000 80520000 00002018 00000000 00000075 00000007 00000000
    [ 1.008583] 00000000 80480000 000ee811 00000000 00000000 00000000 80432c00 80248db8
    [ 1.017196] 00000009 00000204 83980000 803ad7b0 00000000 801feeec 00000000 804d0000
    [ 1.025804] ...
    [ 1.028325] Call Trace:
    [ 1.030875] [] show_stack+0x58/0x100
    [ 1.035513] [] __warn+0xe4/0x118
    [ 1.039708] [] warn_slowpath_null+0x48/0x64
    [ 1.044935] [] bgmac_enet_probe+0x1b4/0x5c4
    [ 1.050101] [] bgmac_probe+0x558/0x590
    [ 1.054906] [] bcma_device_probe+0x38/0x70
    [ 1.060017] [] really_probe+0x170/0x2e8
    [ 1.064891] [] __driver_attach+0xa4/0xec
    [ 1.069784] [] bus_for_each_dev+0x58/0xb0
    [ 1.074833] [] bus_add_driver+0xf8/0x218
    [ 1.079731] [] driver_register+0xcc/0x11c
    [ 1.084804] [] bgmac_init+0x1c/0x44
    [ 1.089258] [] do_one_initcall+0x7c/0x1a0
    [ 1.094343] [] kernel_init_freeable+0x150/0x218
    [ 1.099886] [] kernel_init+0x10/0x104
    [ 1.104583] [] ret_from_kernel_thread+0x14/0x1c
    [ 1.110107] ---[ end trace f441c0d873d1fb5b ]---

    This patch setups a "struct device" (and passes it to the bcma) which
    allows fixing all the mentioned problems. It'll also require a tiny bcma
    patch which will follow through the wireless tree & its maintainer.

    Fixes: f8c55dc6e828 ("MIPS: use generic dma noncoherent ops for simple noncoherent platforms")
    Signed-off-by: Rafał Miłecki
    Signed-off-by: Paul Burton
    Acked-by: Hauke Mehrtens
    Cc: Christoph Hellwig
    Cc: Linus Walleij
    Cc: linux-wireless@vger.kernel.org
    Cc: Ralf Baechle
    Cc: James Hogan
    Cc: linux-mips@linux-mips.org
    Cc: linux-kernel@vger.kernel.org
    Cc: stable@vger.kernel.org # v4.19+

    Rafał Miłecki
     

30 Aug, 2018

1 commit

  • Setting GPIO 21 high seems to be required to enable power to USB ports
    on the WNDR3400v3. As there is already similar code for WNR3500L,
    make the existing USB power GPIO code generic and use that.

    Signed-off-by: Tuomas Tynkkynen
    Acked-by: Hauke Mehrtens
    Signed-off-by: Paul Burton
    Patchwork: https://patchwork.linux-mips.org/patch/20259/
    Cc: Rafał Miłecki
    Cc: linux-mips@linux-mips.org
    Cc: linux-kernel@vger.kernel.org

    Tuomas Tynkkynen
     

28 Jul, 2018

1 commit

  • This reverts commit 2a027b47dba6 ("MIPS: BCM47XX: Enable 74K Core
    ExternalSync for PCIe erratum").

    Enabling ExternalSync caused a regression for BCM4718A1 (used e.g. in
    Netgear E3000 and ASUS RT-N16): it simply hangs during PCIe
    initialization. It's likely that BCM4717A1 is also affected.

    I didn't notice that earlier as the only BCM47XX devices with PCIe I
    own are:
    1) BCM4706 with 2 x 14e4:4331
    2) BCM4706 with 14e4:4360 and 14e4:4331
    it appears that BCM4706 is unaffected.

    While BCM5300X-ES300-RDS.pdf seems to document that erratum and its
    workarounds (according to quotes provided by Tokunori) it seems not even
    Broadcom follows them.

    According to the provided info Broadcom should define CONF7_ES in their
    SDK's mipsinc.h and implement workaround in the si_mips_init(). Checking
    both didn't reveal such code. It *could* mean Broadcom also had some
    problems with the given workaround.

    Signed-off-by: Rafał Miłecki
    Signed-off-by: Paul Burton
    Reported-by: Michael Marley
    Patchwork: https://patchwork.linux-mips.org/patch/20032/
    URL: https://bugs.openwrt.org/index.php?do=details&task_id=1688
    Cc: Tokunori Ikegami
    Cc: Hauke Mehrtens
    Cc: Chris Packham
    Cc: James Hogan
    Cc: Ralf Baechle
    Cc: linux-mips@linux-mips.org

    Rafał Miłecki
     

19 Jun, 2018

1 commit

  • The erratum and workaround are described by BCM5300X-ES300-RDS.pdf as
    below.

    R10: PCIe Transactions Periodically Fail

    Description: The BCM5300X PCIe does not maintain transaction ordering.
    This may cause PCIe transaction failure.
    Fix Comment: Add a dummy PCIe configuration read after a PCIe
    configuration write to ensure PCIe configuration access
    ordering. Set ES bit of CP0 configu7 register to enable
    sync function so that the sync instruction is functional.
    Resolution: hndpci.c: extpci_write_config()
    hndmips.c: si_mips_init()
    mipsinc.h CONF7_ES

    This is fixed by the CFE MIPS bcmsi chipset driver also for BCM47XX.
    Also the dummy PCIe configuration read is already implemented in the
    Linux BCMA driver.

    Enable ExternalSync in Config7 when CONFIG_BCMA_DRIVER_PCI_HOSTMODE=y
    too so that the sync instruction is externalised.

    Signed-off-by: Tokunori Ikegami
    Reviewed-by: Paul Burton
    Acked-by: Hauke Mehrtens
    Cc: Chris Packham
    Cc: Rafał Miłecki
    Cc: linux-mips@linux-mips.org
    Cc: stable@vger.kernel.org
    Patchwork: https://patchwork.linux-mips.org/patch/19461/
    Signed-off-by: James Hogan

    Tokunori Ikegami
     

23 Apr, 2018

2 commits

  • This struct variable is used during init only. It gets passed to the
    gpio_led_register_device() which creates its own data copy. That allows
    using __initdata and saving some minimal amount of memory.

    Signed-off-by: Rafał Miłecki
    Reviewed-by: Aaro Koskinen
    Cc: Ralf Baechle
    Cc: Hauke Mehrtens
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/18928/
    Signed-off-by: James Hogan

    Rafał Miłecki
     
  • This adds support for detecting this model board and registers some LEDs
    and buttons.

    There are two uncommon things regarding this device:
    1) It can use two different "board_id" ID values.
    Unit I have uses "U12H139T00_NETGEAR" value. This magic is also used
    in firmware file header. There are two reports (one from an OpenWrt
    user) of a different "U12H139T50_NETGEAR" magic though.
    2) Power LEDs share GPIOs with buttons.
    Amber one seems to share GPIO 2 with WPS button and green one seems
    to share GPIO 3 with reset button. It remains unknown how to support
    them and handle buttons at the same time. For that reason they aren't
    added to the list of supported LEDs.

    Signed-off-by: Rafał Miłecki
    Cc: Ralf Baechle
    Cc: Hauke Mehrtens
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/19004/
    Signed-off-by: James Hogan

    Rafał Miłecki
     

07 Apr, 2018

1 commit

  • The original patch submitted for support of the Luxul XWR-1750 used a
    non-standard button handler for the reset button. This patch will allow
    using the standard KEY_RESTART

    Signed-off-by: Dan Haab
    Cc: Ralf Baechle
    Cc: Hauke Mehrtens
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/18981/
    Signed-off-by: James Hogan

    Dan Haab
     

28 Mar, 2018

1 commit

  • Some Luxul devices use PCIe connected GPIO LEDs that are not available
    until the PCI subsytem and its drivers load. Using the same array for
    these LEDs would block registering any LEDs until all GPIOs become
    available. This may be undesired behavior as some LEDs should be
    available as early as possible (e.g. system status LED). This patch will
    allow registering available LEDs while deferring these PCIe GPIO
    connected 'extra' LEDs until they become available.

    Signed-off-by: Dan Haab
    Cc: Ralf Baechle
    Cc: Hauke Mehrtens
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/18952/
    Signed-off-by: James Hogan

    Dan Haab
     

24 Jan, 2018

1 commit

  • Enable ZBOOT support. The WRT54GL router's bootloader limits kernel
    size to 3 MB with the normal load address, which is a bit challenging
    vmlinux size with modern Linux. A compressed kernel allows booting
    much bigger kernels.

    Signed-off-by: Aaro Koskinen
    Cc: Ralf Baechle
    Cc: Hauke Mehrtens
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/18492/
    Signed-off-by: James Hogan

    Aaro Koskinen
     

16 Nov, 2017

1 commit

  • Pull MIPS updates from James Hogan:
    "These are the main MIPS changes for 4.15.

    Fixes:
    - ralink: Fix MT7620 PCI build issues (4.5)
    - Disable cmpxchg64() and HAVE_VIRT_CPU_ACCOUNTING_GEN for 32-bit SMP
    (4.1)
    - Fix MIPS64 FP save/restore on 32-bit kernels (4.0)
    - ptrace: Pick up ptrace/seccomp changed syscall numbers (3.19)
    - ralink: Fix MT7628 pinmux (3.19)
    - BCM47XX: Fix LED inversion on WRT54GSv1 (3.17)
    - Fix n32 core dumping as o32 since regset support (3.13)
    - ralink: Drop obsolete USB_ARCH_HAS_HCD select

    Build system:
    - Default to "generic" (multiplatform) system type instead of IP22
    - Use generic little endian MIPS32 r2 configuration as default
    defconfig instead of ip22_defconfig

    FPU emulation:
    - Fix exception generation for certain R6 FPU instructions

    SMP:
    - Allow __cpu_number_map to be larger than NR_CPUS for sparse CPU id
    spaces

    Miscellaneous:
    - Add iomem resource for kernel bss section for kexec/kdump
    - Atomics: Nudge writes on bit unlock
    - DT files: Standardise "ok" -> "okay"

    Minor cleanups:
    - Define virt_to_pfn()
    - Make thread_saved_pc static
    - Simplify 32-bit sign extension in __read_64bit_c0_split()
    - DMA: Use vma_pages() helper
    - FPU emulation: Replace unsigned with unsigned int
    - MM: Removed unused lastpfn
    - Alchemy: Make clk_ops const
    - Lasat: Use setup_timer() helper
    - ralink: Use BIT() in MT7620 PCI driver

    Platform support:

    BMIPS:
    - Enable HARDIRQS_SW_RESEND

    Broadcom BCM63XX:
    - Add clkdev lookup support
    - Update clk driver, UART driver, DTs to handle named refclk from DTs
    - Split apart various clocks to more closely match hardware
    - Add ethernet clocks

    Cavium Octeon:
    - Remove usage of cvmx_wait() in favour of __delay()

    ImgTec Pistachio:
    - DT: Drop deprecated dwmmc num-slots property

    Ingenic JZ4780:
    - Add NFS root to Ci20 defconfig
    - Add watchdog to Ci20 DT & defconfig, and allow building of watchdog
    driver with this SoC

    Generic (multiplatform):
    - Migrate xilfpga (MIPSfpga) platform to the generic platform

    Lantiq xway:
    - Fix ASC0/ASC1 clocks"

    * tag 'mips_4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/mips: (46 commits)
    MIPS: Add iomem resource for kernel bss section.
    MIPS: cmpxchg64() and HAVE_VIRT_CPU_ACCOUNTING_GEN don't work for 32-bit SMP
    MIPS: BMIPS: Enable HARDIRQS_SW_RESEND
    MIPS: pci: Make use of the BIT() macro inside the mt7620 driver
    MIPS: pci: Remove KERN_WARN instance inside the mt7620 driver
    MIPS: pci: Remove duplicate define in mt7620 driver
    MIPS: ralink: Fix typo in mt7628 pinmux function
    MIPS: ralink: Fix MT7628 pinmux
    MIPS: Fix odd fp register warnings with MIPS64r2
    watchdog: jz4780: Allow selection of jz4740-wdt driver
    MIPS/ptrace: Update syscall nr on register changes
    MIPS/ptrace: Pick up ptrace/seccomp changed syscalls
    MIPS: Fix an n32 core file generation regset support regression
    MIPS: Fix MIPS64 FP save/restore on 32-bit kernels
    MIPS: page.h: Define virt_to_pfn()
    MIPS: Xilfpga: Switch to using generic defconfigs
    MIPS: generic: Add support for MIPSfpga
    MIPS: Set defconfig target to a generic system for 32r2el
    MIPS: Kconfig: Set default MIPS system type as generic
    MIPS: DTS: Remove num-slots from Pistachio SoC
    ...

    Linus Torvalds
     

08 Nov, 2017

1 commit

  • The WLAN LED on the Linksys WRT54GSv1 is active low, but the software
    treats it as active high. Fix the inverted logic.

    Fixes: 7bb26b169116 ("MIPS: BCM47xx: Fix LEDs on WRT54GS V1.0")
    Signed-off-by: Mirko Parthey
    Looks-ok-by: Rafał Miłecki
    Cc: Hauke Mehrtens
    Cc: linux-mips@linux-mips.org
    Cc: # 3.17+
    Patchwork: https://patchwork.linux-mips.org/patch/16071/
    Signed-off-by: James Hogan

    Mirko Parthey
     

02 Nov, 2017

1 commit

  • Many source files in the tree are missing licensing information, which
    makes it harder for compliance tools to determine the correct license.

    By default all files without license information are under the default
    license of the kernel, which is GPL version 2.

    Update the files which contain no license information with the 'GPL-2.0'
    SPDX license identifier. The SPDX identifier is a legally binding
    shorthand, which can be used instead of the full boiler plate text.

    This patch is based on work done by Thomas Gleixner and Kate Stewart and
    Philippe Ombredanne.

    How this work was done:

    Patches were generated and checked against linux-4.14-rc6 for a subset of
    the use cases:
    - file had no licensing information it it.
    - file was a */uapi/* one with no licensing information in it,
    - file was a */uapi/* one with existing licensing information,

    Further patches will be generated in subsequent months to fix up cases
    where non-standard license headers were used, and references to license
    had to be inferred by heuristics based on keywords.

    The analysis to determine which SPDX License Identifier to be applied to
    a file was done in a spreadsheet of side by side results from of the
    output of two independent scanners (ScanCode & Windriver) producing SPDX
    tag:value files created by Philippe Ombredanne. Philippe prepared the
    base worksheet, and did an initial spot review of a few 1000 files.

    The 4.13 kernel was the starting point of the analysis with 60,537 files
    assessed. Kate Stewart did a file by file comparison of the scanner
    results in the spreadsheet to determine which SPDX license identifier(s)
    to be applied to the file. She confirmed any determination that was not
    immediately clear with lawyers working with the Linux Foundation.

    Criteria used to select files for SPDX license identifier tagging was:
    - Files considered eligible had to be source code files.
    - Make and config files were included as candidates if they contained >5
    lines of source
    - File already had some variant of a license header in it (even if
    Reviewed-by: Philippe Ombredanne
    Reviewed-by: Thomas Gleixner
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman