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
     

05 Jan, 2016

1 commit

  • I have a device (Nuvoton 6779D Super-IO IR RC with nuvoton-cir driver)
    which works after initial boot but not any longer if I unload and
    re-load the driver module.

    Digging into the issue I found that unloading the driver calls
    pnp_disable_dev although the driver has flag PNP_DRIVER_RES_DO_NOT_CHANGE
    set. IMHO this is not right.

    Let's have a look at the call chain when probing a device:
    pnp_device_probe
    1. attaches the device
    2. if it's not active and PNP_DRIVER_RES_DO_NOT_CHANGE is not set
    it gets activated
    3. probes driver

    I think pnp_device_remove should do it in reverse order and also
    respect PNP_DRIVER_RES_DO_NOT_CHANGE. Therefore:
    1. call drivers remove callback
    2. if device is active and PNP_DRIVER_RES_DO_NOT_CHANGE is not set
    disable it
    3. detach device

    The change works for me and sounds logical to me.
    However I don't know the pnp driver in detail so I might be wrong.

    Signed-off-by: Heiner Kallweit
    Signed-off-by: Rafael J. Wysocki

    Heiner Kallweit
     

19 Mar, 2015

1 commit


03 Feb, 2015

1 commit

  • If the serial console is an ACPI PNP device, the PNP bus always powers
    down the device at system suspend, even though the no_console_suspend
    command line parameter is specified (eg., when debugging suspend/resume).

    Add PNP_CONSOLE capability, which when set, prevents calling both the
    ->disable() and ->suspend() PNP protocol methods if console suspend
    is disabled.

    Signed-off-by: Peter Hurley
    Signed-off-by: Greg Kroah-Hartman

    Peter Hurley
     

05 Dec, 2013

1 commit


17 Oct, 2013

1 commit


12 Sep, 2013

1 commit

  • pnp_bus_suspend() and pnp_bus_resume() invoke legacy pm_ops from
    pnp_driver. Changed pnp_bus_suspend() and pnp_bus_resume() to check if
    pnp driver has dev_pm_ops and call. If dev_pm_ops don't exist, then call
    use legacy pm_ops. Without this change, pnp_driver dev_pm_ops will not
    get called.

    In addition to the pnp driver bus pm_ops change to invoke driver
    dev_pm_ops, this patch set contains changes to rtc-cmos, tpm_tis, and
    apple-gmux pnp drivers to convert from legacy pm_ops to dev_pm_ops.

    This patch (of 4):

    pnp_bus_suspend() and pnp_bus_resume() invoke legacy pm_ops from
    pnp_driver. Changed pnp_bus_suspend() and pnp_bus_resume() to check if
    pnp driver has dev_pm_ops and call. If dev_pm_ops don't exist, then call
    use legacy pm_ops. Without this change, pnp_driver dev_pm_ops will not
    get called.

    Signed-off-by: Shuah Khan
    Cc: Matthew Garrett
    Cc: Leonidas Da Silva Barbosa
    Cc: Ashley Lai
    Cc: Rajiv Andrade
    Cc: Marcel Selhorst
    Cc: Sirrix AG
    Cc: Alessandro Zummo
    Cc: "Rafael J. Wysocki"
    Cc: Bjorn Helgaas
    Cc: Grant Likely
    Cc: Rob Herring
    Cc: Peter Hüwe
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Shuah Khan
     

27 Jul, 2013

1 commit

  • Convert drivers/pnp/driver.c bus legacy pm_ops to dev_pm_ops using
    existing suspend and resume routines. Add freeze interface to
    handle PM_EVENT_FREEZE correctly with dev_pm_ops. pm_op() looks for
    freeze interface when the event is PM_EVENT_FREEZE.

    Signed-off-by: Shuah Khan
    Signed-off-by: Rafael J. Wysocki

    Shuah Khan
     

12 Jan, 2011

1 commit

  • The PNP ACPI driver squirrels the ACPI handles of PNP devices' ACPI
    companions, but this isn't correct, because those handles should be
    accessed using the DEVICE_ACPI_HANDLE() macro operating on struct
    device objects.

    Using DEVICE_ACPI_HANDLE() in the PNP ACPI driver instead of the
    driver's own copies of the ACPI handles allows us to avoid a problem
    with docking stations where a machine docked before suspend to RAM
    and undocked while suspended crashes during the subsequent resume (in
    that case the ACPI companion of the PNP device in question doesn't
    exist any more while the device is being resumed). It also allows us
    to avoid the problem where suspend to RAM fails when the machine was
    undocked while suspended before (again, the ACPI companion of the PNP
    device is not present any more while it is being suspended).

    This change doesn't fix all of the the PNP ACPI driver's problems
    with PNP devices in docking stations (generally speaking, the driver
    has no idea that devices can come and go and doesn't even attempt to
    handle such events), but at least it makes suspend work for the
    users of docking stations who don't use the PNP devices located in
    there.

    References: https://bugzilla.kernel.org/show_bug.cgi?id=15100

    Reported-and-tested-by: Toralf Förster
    Signed-off-by: Rafael J. Wysocki
    Acked-by: Bjorn Helgaas
    Signed-off-by: Len Brown

    Rafael J. Wysocki
     

02 Oct, 2010

1 commit


22 Sep, 2009

1 commit


23 Oct, 2008

1 commit


17 Oct, 2008

1 commit


11 Oct, 2008

1 commit

  • There are only a few remaining uses of pnp_info(), so I just
    converted them to printk and removed the pnp_err(), pnp_info(),
    pnp_warn(), and pnp_dbg() wrappers.

    I also removed a couple debug messages that don't seem useful any
    more ("driver registered", "driver unregistered", "driver attached").

    Signed-off-by: Bjorn Helgaas
    Signed-off-by: Andi Kleen
    Signed-off-by: Len Brown

    Bjorn Helgaas
     

29 Apr, 2008

1 commit


28 Apr, 2008

1 commit

  • Every PNP device should have a valid protocol pointer. If it doesn't,
    something's wrong and we should oops so we can find and fix the problem.

    Signed-off-by: Bjorn Helgaas
    Cc: Adam Belay
    Cc: Adrian Bunk
    Cc: Rene Herman
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Bjorn Helgaas
     

07 Feb, 2008

1 commit

  • The PNP_DRIVER_RES_DO_NOT_CHANGE flag is meant to signify that the PNP core
    should not change resources for the device -- not that it shouldn't
    disable/enable the device on suspend/resume.

    ALSA ISAPnP drivers set PNP_DRIVER_RES_DO_NOT_CHANAGE (0x0001) through
    setting PNP_DRIVER_RES_DISABLE (0x0003). The latter including the former
    may in itself be considered rather unexpected but doesn't change that
    suspend/resume wouldn't seem to have any business testing the flag.

    As reported by Ondrej Zary for snd-cs4236, ALSA driven ISAPnP cards don't
    survive swsusp hibernation with the resume skipping setting the resources
    due to testing the flag -- the same test in the suspend path isn't enough
    to keep hibernation from disabling the card it seems.

    These tests were added (in 2005) by Piere Ossman in commit
    68094e3251a664ee1389fcf179497237cbf78331, "alsa: Improved PnP suspend
    support" who doesn't remember why. This deletes them.

    Signed-off-by: Rene Herman
    Tested-by: Ondrej Zary
    Cc: Bjorn Helgaas
    Cc: Pierre Ossman
    Cc: Adam Belay
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Rene Herman
     

17 Oct, 2007

1 commit

  • If we have the struct pnp_dev available, we can use dev_info(), dev_err(),
    etc., to give a little more information and consistency.

    [akpm@linux-foundation.org: fix warning]
    Signed-off-by: Bjorn Helgaas
    Cc: Adam Belay
    Cc: Len Brown
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Bjorn Helgaas
     

24 Aug, 2007

2 commits


27 Jul, 2007

2 commits

  • These are manual fixups after running Lindent. No functional change.

    Signed-off-by: Bjorn Helgaas
    Cc: Len Brown
    Cc: Adam Belay
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Bjorn Helgaas
     
  • Run Lindent on all PNP source files.

    Produced by:

    $ quilt new pnp-lindent
    $ find drivers/pnp -name \*.[ch] | xargs quilt add
    $ quilt add include/linux/{pnp.h,pnpbios.h}
    $ scripts/Lindent drivers/pnp/*.c drivers/pnp/*/*.c include/linux/pnp*.h
    $ quilt refresh --sort

    Signed-off-by: Bjorn Helgaas
    Cc: Len Brown
    Cc: Adam Belay
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Bjorn Helgaas
     

22 Jul, 2007

1 commit


01 Jul, 2006

1 commit


28 Mar, 2006

1 commit

  • Remove the assumption that pnp_register_driver() returns the number of devices
    claimed. Returning the count is unreliable because devices may be hot-plugged
    in the future.

    This changes the convention to "zero for success, or a negative error value,"
    which matches pci_register_driver(), acpi_bus_register_driver(), and
    platform_driver_register().

    Signed-off-by: Bjorn Helgaas
    Cc: Adam Belay
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Bjorn Helgaas
     

14 Jan, 2006

1 commit


03 Jan, 2006

2 commits


07 Nov, 2005

1 commit

  • This patch contains the following possible cleanups:
    - make needlessly global code static
    - #if 0 the following unused global function:
    - core.c: pnp_remove_device
    - #if 0 the following unneeded EXPORT_SYMBOL's:
    - card.c: pnp_add_card
    - card.c: pnp_remove_card
    - card.c: pnp_add_card_device
    - card.c: pnp_remove_card_device
    - card.c: pnp_add_card_id
    - core.c: pnp_register_protocol
    - core.c: pnp_unregister_protocol
    - core.c: pnp_add_device
    - core.c: pnp_remove_device
    - pnpacpi/core.c: pnpacpi_protocol
    - driver.c: pnp_add_id
    - isapnp/core.c: isapnp_read_byte
    - manager.c: pnp_auto_config_dev
    - resource.c: pnp_register_dependent_option
    - resource.c: pnp_register_independent_option
    - resource.c: pnp_register_irq_resource
    - resource.c: pnp_register_dma_resource
    - resource.c: pnp_register_port_resource
    - resource.c: pnp_register_mem_resource

    Note that this patch #if 0's exactly one functions and removes no
    functions. Most it does is the #if 0 of EXPORT_SYMBOL's, so if any modular
    code will use any of them, re-adding will be trivial.

    Modular ISAPnP might be interesting in some cases, but this is more legacy
    code. If someone would work on it to sort all the issues out (starting
    with the point that most users of __ISAPNP__ will have to be fixed)
    re-enabling the required EXPORT_SYMBOL's won't be hard for him.

    Signed-off-by: Adrian Bunk
    Cc: Adam Belay
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Adrian Bunk
     

08 Sep, 2005

1 commit


21 Jun, 2005

1 commit


17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds