13 May, 2020

1 commit


05 Mar, 2020

1 commit

  • request_irq() is preferred over setup_irq(). Invocations of setup_irq()
    occur after memory allocators are ready.

    Per tglx[1], setup_irq() existed in olden days when allocators were not
    ready by the time early interrupts were initialized.

    Hence replace setup_irq() by request_irq().

    remove_irq() has been replaced by free_irq() as well.

    There were build error's during previous version, couple of which was
    reported by kbuild test robot of which one was reported
    by Thomas Bogendoerfer as well. There were a
    few more issues including build errors, those also have been fixed.

    [1] https://lkml.kernel.org/r/alpine.DEB.2.20.1710191609480.1971@nanos

    Signed-off-by: afzal mohammed
    Signed-off-by: Thomas Bogendoerfer

    afzal mohammed
     

14 Jan, 2020

1 commit


10 Oct, 2019

1 commit

  • EARLY_PRINTK uses ArcWrite (via prom_putchar) on IP22/28, which needs
    to not mess up PROMs data structures. ARC PROM gives out a list of
    memory chunks, which are used and which are free. This fixes the
    problem of not working early printk.

    By using XKPHYS spaces more than 256MB memory on Indigo2 R4k machines
    is working now, too.

    Signed-off-by: Thomas Bogendoerfer
    Signed-off-by: Paul Burton
    Cc: Ralf Baechle
    Cc: James Hogan
    Cc: linux-mips@vger.kernel.org
    Cc: linux-kernel@vger.kernel.org

    Thomas Bogendoerfer
     

23 Aug, 2019

1 commit

  • It can be replaced by page_is_ram.

    Signed-off-by: Jiaxun Yang
    Signed-off-by: Paul Burton
    Cc: linux-mips@vger.kernel.org
    Cc: yasha.che3@gmail.com
    Cc: aurelien@aurel32.net
    Cc: sfr@canb.auug.org.au
    Cc: fancer.lancer@gmail.com
    Cc: matt.redfearn@mips.com
    Cc: chenhc@lemote.com

    Jiaxun Yang
     

09 Jul, 2019

1 commit

  • …iederm/user-namespace

    Pull force_sig() argument change from Eric Biederman:
    "A source of error over the years has been that force_sig has taken a
    task parameter when it is only safe to use force_sig with the current
    task.

    The force_sig function is built for delivering synchronous signals
    such as SIGSEGV where the userspace application caused a synchronous
    fault (such as a page fault) and the kernel responded with a signal.

    Because the name force_sig does not make this clear, and because the
    force_sig takes a task parameter the function force_sig has been
    abused for sending other kinds of signals over the years. Slowly those
    have been fixed when the oopses have been tracked down.

    This set of changes fixes the remaining abusers of force_sig and
    carefully rips out the task parameter from force_sig and friends
    making this kind of error almost impossible in the future"

    * 'siginfo-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace: (27 commits)
    signal/x86: Move tsk inside of CONFIG_MEMORY_FAILURE in do_sigbus
    signal: Remove the signal number and task parameters from force_sig_info
    signal: Factor force_sig_info_to_task out of force_sig_info
    signal: Generate the siginfo in force_sig
    signal: Move the computation of force into send_signal and correct it.
    signal: Properly set TRACE_SIGNAL_LOSE_INFO in __send_signal
    signal: Remove the task parameter from force_sig_fault
    signal: Use force_sig_fault_to_task for the two calls that don't deliver to current
    signal: Explicitly call force_sig_fault on current
    signal/unicore32: Remove tsk parameter from __do_user_fault
    signal/arm: Remove tsk parameter from __do_user_fault
    signal/arm: Remove tsk parameter from ptrace_break
    signal/nds32: Remove tsk parameter from send_sigtrap
    signal/riscv: Remove tsk parameter from do_trap
    signal/sh: Remove tsk parameter from force_sig_info_fault
    signal/um: Remove task parameter from send_sigtrap
    signal/x86: Remove task parameter from send_sigtrap
    signal: Remove task parameter from force_sig_mceerr
    signal: Remove task parameter from force_sig
    signal: Remove task parameter from force_sigsegv
    ...

    Linus Torvalds
     

27 May, 2019

1 commit


21 May, 2019

1 commit

  • Add SPDX license identifiers to all files which:

    - Have no license information of any form

    - Have EXPORT_.*_SYMBOL_GPL inside which was used in the
    initial scan/conversion to ignore the file

    These files fall under the project license, GPL v2 only. The resulting SPDX
    license identifier is:

    GPL-2.0-only

    Signed-off-by: Thomas Gleixner
    Signed-off-by: Greg Kroah-Hartman

    Thomas Gleixner
     

14 May, 2019

1 commit


01 Sep, 2018

1 commit

  • Clean up instances of casts to the type that a value already has, since
    they are effectively no-ops and only serve to complicate the code.

    This is the result of the following semantic patch:

    @identitycast@
    type T;
    T *A;
    @@
    - (T *)(A)
    + A

    Signed-off-by: Paul Burton
    Patchwork: https://patchwork.linux-mips.org/patch/19599/

    Paul Burton
     

14 Nov, 2017

1 commit

  • Pull timer updates from Thomas Gleixner:
    "Yet another big pile of changes:

    - More year 2038 work from Arnd slowly reaching the point where we
    need to think about the syscalls themself.

    - A new timer function which allows to conditionally (re)arm a timer
    only when it's either not running or the new expiry time is sooner
    than the armed expiry time. This allows to use a single timer for
    multiple timeout requirements w/o caring about the first expiry
    time at the call site.

    - A new NMI safe accessor to clock real time for the printk timestamp
    work. Can be used by tracing, perf as well if required.

    - A large number of timer setup conversions from Kees which got
    collected here because either maintainers requested so or they
    simply got ignored. As Kees pointed out already there are a few
    trivial merge conflicts and some redundant commits which was
    unavoidable due to the size of this conversion effort.

    - Avoid a redundant iteration in the timer wheel softirq processing.

    - Provide a mechanism to treat RTC implementations depending on their
    hardware properties, i.e. don't inflict the write at the 0.5
    seconds boundary which originates from the PC CMOS RTC to all RTCs.
    No functional change as drivers need to be updated separately.

    - The usual small updates to core code clocksource drivers. Nothing
    really exciting"

    * 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (111 commits)
    timers: Add a function to start/reduce a timer
    pstore: Use ktime_get_real_fast_ns() instead of __getnstimeofday()
    timer: Prepare to change all DEFINE_TIMER() callbacks
    netfilter: ipvs: Convert timers to use timer_setup()
    scsi: qla2xxx: Convert timers to use timer_setup()
    block/aoe: discover_timer: Convert timers to use timer_setup()
    ide: Convert timers to use timer_setup()
    drbd: Convert timers to use timer_setup()
    mailbox: Convert timers to use timer_setup()
    crypto: Convert timers to use timer_setup()
    drivers/pcmcia: omap1: Fix error in automated timer conversion
    ARM: footbridge: Fix typo in timer conversion
    drivers/sgi-xp: Convert timers to use timer_setup()
    drivers/pcmcia: Convert timers to use timer_setup()
    drivers/memstick: Convert timers to use timer_setup()
    drivers/macintosh: Convert timers to use timer_setup()
    hwrng/xgene-rng: Convert timers to use timer_setup()
    auxdisplay: Convert timers to use timer_setup()
    sparc/led: Convert timers to use timer_setup()
    mips: ip22/32: Convert timers to use timer_setup()
    ...

    Linus Torvalds
     

03 Nov, 2017

1 commit

  • In preparation for unconditionally passing the struct timer_list pointer to
    all timer callbacks, switch to using the new timer_setup() and from_timer()
    to pass the timer pointer explicitly. Adds a static variable to hold timeout
    value.

    Cc: Ralf Baechle
    Cc: Paul Gortmaker
    Cc: Ingo Molnar
    Cc: James Hogan
    Cc: Arnd Bergmann
    Cc: linux-mips@linux-mips.org
    Signed-off-by: Kees Cook

    Kees Cook
     

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
     

09 Jun, 2017

1 commit


08 Mar, 2017

1 commit

  • After the split of linux/sched.h, several platforms in arch/mips stopped building.

    Add the respective additional #include statements to fix the problem I first
    tried adding these into asm/processor.h, but ran into circular header
    dependencies with that which I could not figure out.

    The commit I listed as causing the problem is the branch merge, as there is
    likely a combination of multiple patches in that branch.

    Signed-off-by: Arnd Bergmann
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: linux-mips@linux-mips.org
    Cc: ralf@linux-mips.org
    Fixes: 1827adb11ad2 ("Merge branch 'WIP.sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip")
    Link: http://lkml.kernel.org/r/20170308072931.3836696-1-arnd@arndb.de
    Signed-off-by: Ingo Molnar

    Arnd Bergmann
     

02 Mar, 2017

2 commits


14 Feb, 2017

1 commit

  • Historically a lot of these existed because we did not have
    a distinction between what was modular code and what was providing
    support to modules via EXPORT_SYMBOL and friends. That changed
    when we forked out support for the latter into the export.h file.

    This means we should be able to reduce the usage of module.h
    in code that is obj-y Makefile or bool Kconfig. In the case of
    some code where it is modular, we can extend that to also include
    files that are building basic support functionality but not related
    to loading or registering the final module; such files also have
    no need whatsoever for module.h

    The advantage in removing such instances is that module.h itself
    sources about 15 other headers; adding significantly to what we feed
    cpp, and it can obscure what headers we are effectively using.

    Since module.h might have been the implicit source for init.h
    (for __init) and for export.h (for EXPORT_SYMBOL) we consider each
    instance for the presence of either and replace/add as needed.

    Also note that MODULE_DEVICE_TABLE is a no-op for non-modular code.

    Build coverage of all the mips defconfigs revealed the module.h
    header was masking a couple of implicit include instances, so
    we add the appropriate headers there.

    Signed-off-by: Paul Gortmaker
    Cc: David Daney
    Cc: John Crispin
    Cc: Ralf Baechle
    Cc: "Steven J. Hill"
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/15131/
    [james.hogan@imgtec.com: Preserve sort order where it already exists]
    Signed-off-by: James Hogan

    Paul Gortmaker
     

25 Jan, 2017

1 commit

  • kernelci reports a failure of the ip28_defconfig build after upgrading its
    gcc version:

    arch/mips/sgi-ip22/Platform:29: *** gcc doesn't support needed option -mr10k-cache-barrier=store. Stop.

    The problem apparently is that the -mr10k-cache-barrier=store option is now
    rejected for CPUs other than r10k. Explicitly including the CPU in the
    check fixes this and is safe because both options were introduced in
    gcc-4.4.

    Signed-off-by: Arnd Bergmann
    Cc: linux-mips@linux-mips.org
    Cc: linux-kernel@vger.kernel.org
    Patchwork: https://patchwork.linux-mips.org/patch/15049/
    Signed-off-by: Ralf Baechle

    Arnd Bergmann
     

25 Dec, 2016

1 commit


08 Jul, 2016

1 commit


20 Feb, 2015

1 commit

  • There are currently no gio device drivers that implement suspend/resume
    and this patch removes the bus specific legacy suspend and resume callbacks.
    This will allow us to eventually remove struct bus_type legacy suspend and
    resume support altogether.

    gio device drivers wanting to implement suspend and resume can use dev PM
    ops which will work out of the box without further modifications necessary.

    Signed-off-by: Lars-Peter Clausen
    Acked-by: Thomas Bogendoerfer
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/8920/
    Signed-off-by: Ralf Baechle

    Lars-Peter Clausen
     

24 Nov, 2014

1 commit

  • Based on the spatch

    @@
    expression e;
    @@
    - return (e);
    + return e;

    with heavy hand editing because some of the changes are either whitespace
    or identation only or result in excessivly long lines.

    Signed-off-by: Ralf Baechle

    Ralf Baechle
     

30 Jul, 2014

1 commit

  • This is required so that we give up the last reference to the device.

    Also, create a gio_bus_release() that calls kfree on the device argument to
    properly kfree() the memory allocated for the device.

    [ralf@linux-mips.org: Reformat to Linux coding style and make
    gio_bus_release static.]

    Signed-off-by: Levente Kurusa
    Cc: LKML
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/6261/
    Signed-off-by: Ralf Baechle

    Levente Kurusa
     

05 Jun, 2014

1 commit

  • - added interrupt support for GIO devices
    - improved detection of GIO cards on Indigo2
    - added more known GIO cards

    Signed-off-by: Thomas Bogendoerfer
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/7055/
    Signed-off-by: Ralf Baechle

    Thomas Bogendoerfer
     

05 Mar, 2014

1 commit


01 Feb, 2013

1 commit

  • Having received another series of whitespace patches I decided to do this
    once and for all rather than dealing with this kind of patches trickling
    in forever.

    Signed-off-by: Ralf Baechle

    Ralf Baechle
     

14 Dec, 2012

1 commit

  • CC arch/mips/sgi-ip22/ip22-eisa.o
    /home/ralf/src/linux/linux-mips/arch/mips/sgi-ip22/ip22-eisa.c: In function ‘ip22_eisa_intr’:
    /home/ralf/src/linux/linux-mips/arch/mips/sgi-ip22/ip22-eisa.c:77:11: error: variable ‘dma2’ set but not used [-Werror=unused-but-set-variable]
    /home/ralf/src/linux/linux-mips/arch/mips/sgi-ip22/ip22-eisa.c:77:5: error: variable ‘dma1’ set but not used [-Werror=unused-but-set-variable]
    cc1: all warnings being treated as errors

    This warning exists in gcc 4.6.0 and newer. Kernels 2.6.40 and newer use
    -Wunused-but-set-variable to suppress it.

    Signed-off-by: Ralf Baechle

    Ralf Baechle
     

29 Mar, 2012

1 commit


08 Dec, 2011

2 commits

  • Since commit [e58aa3d2: genirq: Run irq handlers with interrupts disabled],
    We run all interrupt handlers with interrupts disabled and we even check
    and yell when an interrupt handler returns with interrupts enabled (see
    commit [b738a50a: genirq: Warn when handler enables interrupts]).

    So now this flag is a NOOP and can be removed.

    [ralf@linux-mips.org: Fixed up conflicts in
    arch/mips/alchemy/common/dbdma.c, arch/mips/cavium-octeon/smp.c and
    arch/mips/kernel/perf_event.c.]

    Signed-off-by: Yong Zhang
    To: linux-kernel@vger.kernel.org
    Cc: tglx@linutronix.de
    linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/2835/
    Signed-off-by: Ralf Baechle

    Yong Zhang
     
  • SGI IP22/IP28 machines have GIO busses for adding graphics and other
    extension cards. This patch adds support for GIO driver/device
    handling and converts the newport console driver to a GIO driver.

    [ralf@linux-mips.org: Fixed build error caused by the modules.h -> export.h
    changes.]

    Signed-off-by: Thomas Bogendoerfer
    Acked-by: Florian Tobias Schandinat
    To: linux-fbdev@vger.kernel.org
    Patchwork: https://patchwork.linux-mips.org/patch/2886/
    Signed-off-by: Ralf Baechle

    Thomas Bogendoerfer
     

21 Sep, 2011

1 commit


09 Jun, 2011

1 commit

  • Signed-off-by: Ralf Baechle
    Cc: linux-mips@linux-mips.org
    Link: http://lkml.kernel.org/r/20110601180610.054254048@duck.linux-mips.net
    Signed-off-by: Thomas Gleixner

    arch/arm/mach-footbridge/isa-timer.c | 2 +-
    arch/mips/cobalt/time.c | 2 +-
    arch/mips/jazz/irq.c | 2 +-
    arch/mips/kernel/i8253.c | 2 +-
    arch/mips/mti-malta/malta-time.c | 2 +-
    arch/mips/sgi-ip22/ip22-time.c | 2 +-
    arch/mips/sni/time.c | 2 +-
    arch/x86/kernel/apic/apic.c | 2 +-
    arch/x86/kernel/apm_32.c | 2 +-
    arch/x86/kernel/hpet.c | 2 +-
    arch/x86/kernel/i8253.c | 2 +-
    arch/x86/kernel/time.c | 2 +-
    drivers/block/hd.c | 2 +-
    drivers/clocksource/i8253.c | 2 +-
    drivers/input/gameport/gameport.c | 2 +-
    drivers/input/joystick/analog.c | 2 +-
    drivers/input/misc/pcspkr.c | 2 +-
    include/linux/i8253.h | 11 +++++++++++
    sound/drivers/pcsp/pcsp.h | 2 +-
    19 files changed, 29 insertions(+), 18 deletions(-)

    Ralf Baechle
     

24 May, 2011

1 commit

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (39 commits)
    b43: fix comment typo reqest -> request
    Haavard Skinnemoen has left Atmel
    cris: typo in mach-fs Makefile
    Kconfig: fix copy/paste-ism for dell-wmi-aio driver
    doc: timers-howto: fix a typo ("unsgined")
    perf: Only include annotate.h once in tools/perf/util/ui/browsers/annotate.c
    md, raid5: Fix spelling error in comment ('Ofcourse' --> 'Of course').
    treewide: fix a few typos in comments
    regulator: change debug statement be consistent with the style of the rest
    Revert "arm: mach-u300/gpio: Fix mem_region resource size miscalculations"
    audit: acquire creds selectively to reduce atomic op overhead
    rtlwifi: don't touch with treewide double semicolon removal
    treewide: cleanup continuations and remove logging message whitespace
    ath9k_hw: don't touch with treewide double semicolon removal
    include/linux/leds-regulator.h: fix syntax in example code
    tty: fix typo in descripton of tty_termios_encode_baud_rate
    xtensa: remove obsolete BKL kernel option from defconfig
    m68k: fix comment typo 'occcured'
    arch:Kconfig.locks Remove unused config option.
    treewide: remove extra semicolons
    ...

    Linus Torvalds
     

11 May, 2011

2 commits

  • CC arch/mips/sgi-ip22/ip22-platform.o
    arch/mips/sgi-ip22/ip22-platform.c: In function 'sgiseeq_devinit':
    arch/mips/sgi-ip22/ip22-platform.c:135:15: error: variable 'tmp' set but not used [-Werror=unused-but-set-variable]
    cc1: all warnings being treated as errors

    While at it rename the variable to pbdma for readability; there is a
    local variable tmp of different type being used in two nested blocks.

    Signed-off-by: Ralf Baechle

    Ralf Baechle
     
  • CC arch/mips/sgi-ip22/ip22-time.o
    arch/mips/sgi-ip22/ip22-time.c: In function 'dosample':
    arch/mips/sgi-ip22/ip22-time.c:35:10: error: variable 'lsb' set but not used [-Werror=unused-but-set-variable]
    cc1: all warnings being treated as errors

    Signed-off-by: Ralf Baechle

    Ralf Baechle
     

26 Apr, 2011

1 commit


06 Apr, 2011

1 commit


29 Mar, 2011

1 commit


26 Mar, 2011

1 commit