20 Jan, 2021

1 commit

  • [ Upstream commit c5e6ae563c802c4d828d42e134af64004db2e58c ]

    If you run 'make uImage uImage.gz' with the parallel option, uImage.gz
    will be created by two threads simultaneously.

    This is because arch/arc/Makefile does not specify the dependency
    between uImage and uImage.gz. Hence, GNU Make assumes they can be
    built in parallel. One thread descends into arch/arc/boot/ to create
    uImage, and another to create uImage.gz.

    Please notice the same log is displayed twice in the following steps:

    $ export CROSS_COMPILE=
    $ make -s ARCH=arc defconfig
    $ make -j$(nproc) ARCH=arc uImage uImage.gz
    [ snip ]
    LD vmlinux
    SORTTAB vmlinux
    SYSMAP System.map
    OBJCOPY arch/arc/boot/vmlinux.bin
    OBJCOPY arch/arc/boot/vmlinux.bin
    GZIP arch/arc/boot/vmlinux.bin.gz
    GZIP arch/arc/boot/vmlinux.bin.gz
    UIMAGE arch/arc/boot/uImage.gz
    UIMAGE arch/arc/boot/uImage.gz
    Image Name: Linux-5.10.0-rc4-00003-g62f23044
    Created: Sun Nov 22 02:52:26 2020
    Image Type: ARC Linux Kernel Image (gzip compressed)
    Data Size: 2109376 Bytes = 2059.94 KiB = 2.01 MiB
    Load Address: 80000000
    Entry Point: 80004000
    Image arch/arc/boot/uImage is ready
    Image Name: Linux-5.10.0-rc4-00003-g62f23044
    Created: Sun Nov 22 02:52:26 2020
    Image Type: ARC Linux Kernel Image (gzip compressed)
    Data Size: 2815455 Bytes = 2749.47 KiB = 2.69 MiB
    Load Address: 80000000
    Entry Point: 80004000

    This is a race between the two threads trying to write to the same file
    arch/arc/boot/uImage.gz. This is a potential problem that can generate
    a broken file.

    I fixed a similar problem for ARM by commit 3939f3345050 ("ARM: 8418/1:
    add boot image dependencies to not generate invalid images").

    I highly recommend to avoid such build rules that cause a race condition.

    Move the uImage rule to arch/arc/Makefile.

    Another strangeness is that arch/arc/boot/Makefile compares the
    timestamps between $(obj)/uImage and $(obj)/uImage.*:

    $(obj)/uImage: $(obj)/uImage.$(suffix-y)
    @ln -sf $(notdir $
    Signed-off-by: Vineet Gupta
    Signed-off-by: Sasha Levin

    Masahiro Yamada
     

06 Oct, 2020

2 commits

  • xxx/arc/boot/dts/axs101.dt.yaml: dw-apb-ictl@e0012000: $nodename:0: \
    'dw-apb-ictl@e0012000' does not match '^interrupt-controller(@[0-9a-f,]+)*$'
    From schema: xxx/interrupt-controller/snps,dw-apb-ictl.yaml

    The node name of the interrupt controller must start with
    "interrupt-controller" instead of "dw-apb-ictl".

    Signed-off-by: Zhen Lei
    Signed-off-by: Vineet Gupta

    Zhen Lei
     
  • NPS customers are no longer doing active development, as evident from
    rand config build failures reported in recent times, so drop support
    for NPS platform.

    Tested-by: kernel test robot
    Signed-off-by: Vineet Gupta

    Vineet Gupta
     

02 Sep, 2020

1 commit

  • HSDK board has Micrel KSZ9031, recent commit
    bcf3440c6dd ("net: phy: micrel: add phy-mode support for the KSZ9031 PHY")
    caused a breakdown of Ethernet.
    Using 'phy-mode = "rgmii"' is not correct because accodring RGMII
    specification it is necessary to have delay on RX (PHY to MAX)
    which is not generated in case of "rgmii".
    Using "rgmii-id" adds necessary delay and solves the issue.

    Also adding name of PHY placed on HSDK board.

    Signed-off-by: Evgeniy Didin
    Cc: Eugeniy Paltsev
    Cc: Alexey Brodkin
    Signed-off-by: Vineet Gupta

    Evgeniy Didin
     

17 Aug, 2020

1 commit

  • Newer version of HSDK aka HSDK-4xD (with dual issue HS48x4 CPU) wired up
    the perf interrupt, so enable that in DT.
    This is OK for old HSDK where this irq is ignored because pct irq is not
    wired up in hardware.

    Signed-off-by: Vineet Gupta

    Vineet Gupta
     

04 Apr, 2020

1 commit

  • Pull ARC updates from Vineet Gupta:

    - Support for DSP enabled userspace (save/restore regs)

    - Misc other platform fixes

    * tag 'arc-5.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc:
    ARC: allow userspace DSP applications to use AGU extensions
    ARC: add support for DSP-enabled userspace applications
    ARC: handle DSP presence in HW
    ARC: add helpers to sanitize config options
    ARC: [plat-axs10x]: PGU: remove unused encoder-slave property

    Linus Torvalds
     

25 Mar, 2020

1 commit


17 Mar, 2020

1 commit


15 Jan, 2020

1 commit


05 Dec, 2019

1 commit

  • Pull ARC updates from Vineet Gupta

    - Jump Label support for ARC

    - kmemleak enabled

    - arc mm backend TLB Miss / flush optimizations

    - nSIM platform switching to dwuart (vs. arcuart) and ensuing defconfig
    updates and cleanups

    - axs platform pll / video-mode updates

    * tag 'arc-5.5-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc:
    ARC: add kmemleak support
    ARC: [plat-axs10x]: remove hardcoded video mode from bootargs
    ARC: [plat-axs10x]: use pgu pll instead of fixed clock
    ARC: ARCv2: jump label: implement jump label patching
    ARC: mm: tlb flush optim: elide redundant uTLB invalidates for MMUv3
    ARC: mm: tlb flush optim: elide repeated uTLB invalidate in loop
    ARC: mm: tlb flush optim: Make TLBWriteNI fallback to TLBWrite if not available
    ARC: mm: TLB Miss optim: avoid re-reading ECR
    ARCv2: mm: TLB Miss optim: Use double world load/stores LDD/STD
    ARCv2: mm: TLB Miss optim: SMP builds can cache pgd pointer in mmu scratch reg
    ARC: nSIM_700: remove unused network options
    ARC: nSIM_700: switch to DW UART usage
    ARC: merge HAPS-HS with nSIM-HS configs
    ARC: HAPS: cleanup defconfigs from unused ETH drivers
    ARC: HAPS: add HIGHMEM memory zone to DTS
    ARC: HAPS: use same UART configuration everywhere
    ARC: HAPS: cleanup defconfigs from unused IO-related options
    ARC: regenerate nSIM and HAPS defconfigs

    Linus Torvalds
     

21 Nov, 2019

2 commits


29 Oct, 2019

5 commits

  • We have snps,arc-emac enabled in nSIM_700. It's obsolete and it's
    not used anymore so remove its device tree node and disable
    unused network options in defconfig.

    Signed-off-by: Eugeniy Paltsev
    Signed-off-by: Vineet Gupta

    Eugeniy Paltsev
     
  • Switch nsim_700_defconfig to dwuart for consistent uart settings
    for all nSIM configurations.

    Signed-off-by: Eugeniy Paltsev
    Signed-off-by: Vineet Gupta

    Eugeniy Paltsev
     
  • Starting from nSIM 2019.06 is possible to use DW UART
    instead of ARC UART. That allows us to merge
    "nsim_hs" with "haps_hs" and "nsim_hs_smp" with "haps_hs_smp"
    with minor changes which were done in previous commits.

    We eliminate nsim_hs_defconfig and nsim_hs_smp_defconfig
    and leave haps_hs_defconfig and haps_hs_smp_defconfig
    which can be used on HAPS / nSIM / ZEBU / QEMU platforms
    without additional changes in Linux kernel.

    For nSIM we should now use UART property values
    "-prop=nsim_mem-dev=uart0,kind=dwuart,base=0xf0000000"
    instead of previously used
    "-prop=nsim_mem-dev=uart0,base=0xc0fc1000"
    "use_connect" and "irq" values of UART property remains untouched.

    Signed-off-by: Eugeniy Paltsev
    Signed-off-by: Vineet Gupta

    Eugeniy Paltsev
     
  • This is required as a preparation of merging nSIM and HASP
    defonfig and device tree.

    As we have HIGHMEM disabled in both HAPS and nSIM defconfigs
    this doesn't lead to any functional change.

    Signed-off-by: Eugeniy Paltsev
    Signed-off-by: Vineet Gupta

    Eugeniy Paltsev
     
  • For some reason we use ns8250 UART compatible on UP HAPS
    configuration and ns16550a (which is ns8250 with FIFO support)
    on SMP HAPS configuration.
    Given that we have same UART IP with same IP configuration
    on both HAPS configuration use ns16550a compatible everywhere.

    Signed-off-by: Eugeniy Paltsev
    Signed-off-by: Vineet Gupta

    Eugeniy Paltsev
     

23 Oct, 2019

2 commits


05 Aug, 2019

1 commit

  • We want to use DW AXI DMAC on HSDK board in our automated verification
    to test cache & dma kernel code changes. This is perfect candidate
    as we don't depend on any external peripherals like MMC card / USB
    storage / etc.
    To increase test coverage we want to test both options:
    * DW AXI DMAC is connected through IOC port & dma direct ops used
    * DW AXI DMAC is connected to DDR port & dma noncoherent ops used

    Introduce 'arc_hsdk_axi_dmac_coherent' global variable which can be
    modified by debugger (same way as we patch 'ioc_enable') to switch
    between these options without recompiling the kernel.
    Depend on this value we tweak memory bridge configuration and
    "dma-coherent" DTS property of DW AXI DMAC.

    Signed-off-by: Eugeniy Paltsev
    Acked-by: Alexey Brodkin
    Signed-off-by: Vineet Gupta

    Eugeniy Paltsev
     

08 Jul, 2019

2 commits

  • HSDK SoC has DW SPI controller. Enable it in preparation of
    enabling on-board SPI peripherals.

    Acked-by: Alexey Brodkin
    Signed-off-by: Eugeniy Paltsev
    Signed-off-by: Vineet Gupta

    Eugeniy Paltsev
     
  • As a preparation for QEMU usage for ARC let's add basic Virtio-MMIO
    peripherals support for the platform we're going to use.

    For now we add 5 Virtio slots in .dts and enable block and network devices
    via Virtio-MMIO.

    Note even though typically Virtio register set fits in 0x200 bytes
    we "allocate" here 0x2000 so that it matches ARC's default 8KiB page size
    and so remapping of that area is done clearly.

    We also enable DEVTMPFS automount for more convenient use
    of external root file-stystem. Before that we used to use built-in
    Initramfs which didn't automount DEVTMPFS anyways so we didn't need
    that option, while now it starts making sense.

    Signed-off-by: Alexey Brodkin
    Cc: Rob Herring
    Signed-off-by: Vineet Gupta

    Alexey Brodkin
     

19 Jun, 2019

1 commit

  • Based on 2 normalized pattern(s):

    this program is free software you can redistribute it and or modify
    it under the terms of the gnu general public license version 2 as
    published by the free software foundation

    this program is free software you can redistribute it and or modify
    it under the terms of the gnu general public license version 2 as
    published by the free software foundation #

    extracted by the scancode license scanner the SPDX license identifier

    GPL-2.0-only

    has been chosen to replace the boilerplate/reference in 4122 file(s).

    Signed-off-by: Thomas Gleixner
    Reviewed-by: Enrico Weigelt
    Reviewed-by: Kate Stewart
    Reviewed-by: Allison Randal
    Cc: linux-spdx@vger.kernel.org
    Link: https://lkml.kernel.org/r/20190604081206.933168790@linutronix.de
    Signed-off-by: Greg Kroah-Hartman

    Thomas Gleixner
     

09 Jun, 2019

1 commit

  • Pull yet more SPDX updates from Greg KH:
    "Another round of SPDX header file fixes for 5.2-rc4

    These are all more "GPL-2.0-or-later" or "GPL-2.0-only" tags being
    added, based on the text in the files. We are slowly chipping away at
    the 700+ different ways people tried to write the license text. All of
    these were reviewed on the spdx mailing list by a number of different
    people.

    We now have over 60% of the kernel files covered with SPDX tags:
    $ ./scripts/spdxcheck.py -v 2>&1 | grep Files
    Files checked: 64533
    Files with SPDX: 40392
    Files with errors: 0

    I think the majority of the "easy" fixups are now done, it's now the
    start of the longer-tail of crazy variants to wade through"

    * tag 'spdx-5.2-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (159 commits)
    treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 450
    treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 449
    treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 448
    treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 446
    treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 445
    treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 444
    treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 443
    treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 442
    treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441
    treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 440
    treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 438
    treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 437
    treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 436
    treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 435
    treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 434
    treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 433
    treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 432
    treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 431
    treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 430
    treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 429
    ...

    Linus Torvalds
     

05 Jun, 2019

2 commits

  • Based on 1 normalized pattern(s):

    this program is free software you can redistribute it and or modify
    it under the terms of the gnu general public license version 2 as
    published by the free software foundation this program is
    distributed in the hope that it will be useful but without any
    warranty without even the implied warranty of merchantability or
    fitness for a particular purpose see the gnu general public license
    for more details you should have received a copy of the gnu general
    public license along with this program if not write to the free
    software foundation inc 59 temple place suite 330 boston ma 02111
    1307 usa

    extracted by the scancode license scanner the SPDX license identifier

    GPL-2.0-only

    has been chosen to replace the boilerplate/reference in 136 file(s).

    Signed-off-by: Thomas Gleixner
    Reviewed-by: Alexios Zavras
    Reviewed-by: Allison Randal
    Cc: linux-spdx@vger.kernel.org
    Link: https://lkml.kernel.org/r/20190530000436.384967451@linutronix.de
    Signed-off-by: Greg Kroah-Hartman

    Thomas Gleixner
     
  • Based on 2 normalized pattern(s):

    this program is free software you can redistribute it and or modify
    it under the terms and conditions of the gnu general public license
    version 2 as published by the free software foundation this program
    is distributed in the hope it will be useful but without any
    warranty without even the implied warranty of merchantability or
    fitness for a particular purpose see the gnu general public license
    for more details the full gnu general public license is included in
    this distribution in the file called copying

    this program is free software you can redistribute it and or modify
    it under the terms and conditions of the gnu general public license
    version 2 as published by the free software foundation this program
    is distributed in the hope [that] it will be useful but without any
    warranty without even the implied warranty of merchantability or
    fitness for a particular purpose see the gnu general public license
    for more details the full gnu general public license is included in
    this distribution in the file called copying

    extracted by the scancode license scanner the SPDX license identifier

    GPL-2.0-only

    has been chosen to replace the boilerplate/reference in 57 file(s).

    Signed-off-by: Thomas Gleixner
    Reviewed-by: Alexios Zavras
    Reviewed-by: Allison Randal
    Cc: linux-spdx@vger.kernel.org
    Link: https://lkml.kernel.org/r/20190529141901.515993066@linutronix.de
    Signed-off-by: Greg Kroah-Hartman

    Thomas Gleixner
     

29 May, 2019

3 commits

  • Initial bring-up of the platform was done on FPGA prototype
    where TI's DP83867 PHY was used. And so some specific PHY
    options were added.

    Just to confirm this is what we get on FPGA prototype in the bootlog:
    | TI DP83867 stmmac-0:00: attached PHY driver [TI DP83867] ...

    On real board though we have Micrel KZS9031 PHY and we even have
    CONFIG_MICREL_PHY=y set in hsdk_defconfig. That's what we see in the bootlog:
    | Micrel KSZ9031 Gigabit PHY stmmac-0:00: ...

    So essentially all TI-related bits have to go away.

    Cc: Rob Herring
    Acked-by: Trent Piepho
    Signed-off-by: Alexey Brodkin
    Signed-off-by: Vineet Gupta

    Alexey Brodkin
     
  • HSDK board has built-in Vivante GPU IP which works perfectly fine
    with Etnaviv driver, so let's use it.

    Signed-off-by: Eugeniy Paltsev
    Signed-off-by: Vineet Gupta

    Eugeniy Paltsev
     
  • HSDK SOC has CREG GPIO controller which can be used to control
    SPI chip select lines.
    Enable it in preparation of enabling SPI peripherals.

    Acked-by: Alexey Brodkin
    Signed-off-by: Eugeniy Paltsev
    Signed-off-by: Vineet Gupta

    Eugeniy Paltsev
     

21 May, 2019

2 commits


03 Apr, 2019

1 commit

  • 1. Bump top level address-cells/size-cells nodes to 2 (to ensure all
    down stream addresses are 64-bits, unless explicitly specified
    otherwise (in "soc" bus with all peripherals)

    2. "memory" also specified with address/size 2

    3. Add a commented reference for PAE40 region beyond 4GB physical
    address space

    Signed-off-by: Vineet Gupta

    Vineet Gupta
     

26 Feb, 2019

3 commits


13 Nov, 2018

1 commit


01 Sep, 2018

1 commit


28 Aug, 2018

1 commit

  • Otherwise kernel uses random MAC which is not very conveniet.
    With that change in place use might set desired MAC in U-Boot
    with "setenv ethaddr 11:22:33:44:55:66", save environment and
    then from boot to boot the same MAC will be used by the kernel.

    One other note for this to happen it's required to pass
    board's .dtb in U-Boot's "bootm" command like that:
    ------------------->8-----------------
    bootm 0x82000000 - 0x84000000
    ------------------->8-----------------

    Here 0x82000000 is location of uImage while
    0x80000000 is location of either axs10x.dtb or hsdk.dtb
    previously loaded from SD-card, USB storage or TFTP server.

    Signed-off-by: Alexey Brodkin
    Cc: Rob Herring
    Cc: stable@vger.kernel.org # 4.14
    Cc: devicetree@vger.kernel.org
    Signed-off-by: Vineet Gupta

    Alexey Brodkin
     

07 Apr, 2018

1 commit


07 Feb, 2018

1 commit