17 Aug, 2020

1 commit


24 Jun, 2020

1 commit

  • The Maxxter KB-BT-001 Bluetooth keyboard, which looks somewhat like the
    Apple Wireless Keyboard, is using the vendor and product IDs (05AC:0239)
    of the Apple Wireless Keyboard (2009 ANSI version) .

    But its F1 - F10 keys are marked as sending F1 - F10, not the special
    functions hid-apple.c maps them too; and since its descriptors do not
    contain the HID_UP_CUSTOM | 0x0003 usage apple-hid looks for for the
    Fn-key, apple_setup_input() never gets called, so F1 - F6 are mapped
    to key-codes which have not been set in the keybit array causing them
    to not send any events at all.

    The lack of a usage code matching the Fn key in the clone is actually
    useful as this allows solving this problem in a generic way.

    This commits adds a fn_found flag and it adds a input_configured
    callback which checks if this flag is set once all usages have been
    mapped. If it is not set, then assume this is a clone and clear the
    quirks bitmap so that the hid-apple code does not add any special
    handling to this keyboard.

    This fixes F1 - F6 not sending anything at all and F7 - F12 sending
    the wrong codes on the Maxxter KB-BT-001 Bluetooth keyboard and on
    similar clones.

    Cc: Joao Moreno
    Signed-off-by: Hans de Goede
    Signed-off-by: Jiri Kosina

    Hans de Goede
     

15 May, 2020

1 commit


12 Feb, 2020

1 commit


04 Sep, 2019

1 commit

  • This fixes an issue in which key down events for function keys would be
    repeatedly emitted even after the user has raised the physical key. For
    example, the driver fails to emit the F5 key up event when going through
    the following steps:
    - fnmode=1: hold FN, hold F5, release FN, release F5
    - fnmode=2: hold F5, hold FN, release F5, release FN

    The repeated F5 key down events can be easily verified using xev.

    Signed-off-by: Joao Moreno
    Co-developed-by: Benjamin Tissoires
    Signed-off-by: Benjamin Tissoires

    Joao Moreno
     

31 May, 2019

1 commit

  • 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 as published by
    the free software foundation either version 2 of the license or at
    your option any later version

    extracted by the scancode license scanner the SPDX license identifier

    GPL-2.0-or-later

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

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

    Thomas Gleixner
     

28 Aug, 2018

1 commit

  • USB device
    Vendor 05ac (Apple)
    Device 026c (Magic Keyboard with Numeric Keypad)

    Bluetooth devices
    Vendor 004c (Apple)
    Device 0267 (Magic Keyboard)
    Device 026c (Magic Keyboard with Numeric Keypad)

    Support already exists for the Magic Keyboard over USB connection.
    Add support for the Magic Keyboard over Bluetooth connection, and for
    the Magic Keyboard with Numeric Keypad over Bluetooth and USB
    connection.

    Signed-off-by: Sean O'Brien
    Reviewed-by: Benjamin Tissoires
    Signed-off-by: Jiri Kosina

    Sean O'Brien
     

08 Jun, 2017

1 commit

  • At least on newer laptops, Apple uses the same USB ID for both ISO and
    ANSI keyboards. However, they have been good about filling in the
    bCountryCode field in the HID descriptor on all of their keyboards. A
    value of 13 indicates an ISO layout and other values indicate various
    country-specific ANSI layouts.

    With this patch, users of Apple US keyboards will no longer have to run
    `echo 0 > /sys/module/hid_apple/parameters/iso_layout` to get a working
    tilde key.

    Please test this patch and send feedback if you have a Macbook or an
    Apple keyboard.

    Signed-off-by: Alex Henrie
    Reviewed-by: Benjamin Tissoires
    Signed-off-by: Jiri Kosina

    Alex Henrie
     

11 Jul, 2016

1 commit


28 Jul, 2015

1 commit

  • This patch adds keyboard support for MacbookPro12,1 as WELLSPRING9
    (0x0272, 0x0273, 0x0274). The touchpad is handled in a separate
    bcm5974 patch, as usual.

    Tested-by: John Horan
    Tested-by: Jochen Radmacher
    Tested-by: Yang Hongyang
    Tested-by: Yen-Chin, Lee
    Tested-by: George Hilios
    Tested-by: Janez Urevc
    Signed-off-by: Henrik Rydberg
    Acked-by: Jiri Kosina
    Signed-off-by: Dmitry Torokhov

    Henrik Rydberg
     

06 Feb, 2014

1 commit


14 Oct, 2013

2 commits


06 Sep, 2013

1 commit


31 Jul, 2013

1 commit

  • It is safe to use devres allocation within the hid subsystem:
    - the devres release is called _after_ the call to .remove(), meaning
    that no freed pointers will exists while removing the device
    - if a .probe() fails, devres releases all the allocated ressources
    before going to the next driver: there will not be ghost ressources
    attached to a hid device if several drivers are probed.

    Given that, we can clean up a little some of the HID drivers. These ones
    are trivial:
    - there is only one kzalloc in the driver
    - the .remove() callback contains only one kfree on top of hid_hw_stop()
    - the error path in the probe is easy enough to be manually checked

    Signed-off-by: Benjamin Tissoires
    Reviewed-by: Andy Shevchenko
    Signed-off-by: Jiri Kosina

    Benjamin Tissoires
     

03 Jul, 2013

1 commit

  • This patch adds keyboard support for MacbookAir6,2 as WELLSPRING8
    (0x0291, 0x0292, 0x0293). The touchpad is handled in a separate
    bcm5974 patch, as usual.

    Cc: stable@vger.kernel.org
    Reported-and-tested-by: Brad Ford
    Signed-off-by: Henrik Rydberg
    Signed-off-by: Jiri Kosina
    Signed-off-by: Dmitry Torokhov

    Dmitry Torokhov
     

30 Apr, 2013

1 commit


19 Apr, 2013

1 commit

  • This driver was originally written by James McKenzie, updated by
    Greg Kroah-Hartman, further updated by Bastien Nocera, with suspend
    support added.
    I ported it to the HID subsystem, in order to simplify it a litle
    and allow lirc to use it through hiddev.

    More recent versions of the IR receiver are also supported through
    a patch by Alex Karpenko. The patch also adds support for the 2nd
    and 5th generation of the controller, and the menu key on newer
    brushed metal remotes.

    Tested-by: Fabien André
    Signed-off-by: Benjamin Tissoires
    Signed-off-by: Jiri Kosina

    Benjamin Tissoires
     

25 Feb, 2013

1 commit


03 Jan, 2013

1 commit

  • Use the new module_hid_driver macro in all HID drivers that have
    a simple register/unregister init/exit.

    This also converts the hid drivers that test for a failure of
    hid_register_driver() and report the failure. Using module_hid_driver
    in those drivers removes the failure message.

    Signed-off-by: H Hartley Sweeten
    Signed-off-by: Jiri Kosina

    H Hartley Sweeten
     

13 Dec, 2012

1 commit


04 Nov, 2012

1 commit


31 Oct, 2012

1 commit


05 Sep, 2012

1 commit

  • Paul Walmsley has implemented dynamic quirk handling back in 2007 through
    commits:

    2eb5dc30eb ("USB HID: encapsulate quirk handling into hid-quirks.c")
    8222fbe67c ("USB HID: clarify static quirk handling as squirks")
    8cef908235 ("USB HID: add support for dynamically-created quirks")
    876b9276b9 ("USB HID: add 'quirks' module parameter")

    and as such, his copyright rightly belongs to
    drivers/hid/usbhid/hid-quirks.c file.

    However when generic HID code has been converted to bus and individual
    quirks separated out to individual drivers on the bus, the copyright has
    been blindly transfered into all the tiny drivers, which actually don't
    contain any of Pauls' copyrighted code.

    Remove the copyright from those sub-drivers.

    Signed-off-by: Jiri Kosina
    Acked-by: Paul Walmsley

    Jiri Kosina
     

14 Jul, 2012

1 commit

  • Pull input layer fixes from Dmitry Torokhov:
    "The changes are limited to adding new VID/PID combinations to drivers
    to enable support for new versions of hardware, most notably hardware
    found in new MacBook Pro Retina boxes."

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
    Input: xpad - add Andamiro Pump It Up pad
    Input: xpad - add signature for Razer Onza Tournament Edition
    Input: xpad - handle all variations of Mad Catz Beat Pad
    Input: bcm5974 - Add support for 2012 MacBook Pro Retina
    HID: add support for 2012 MacBook Pro Retina

    Linus Torvalds
     

11 Jul, 2012

1 commit

  • Add support for the 15'' MacBook Pro Retina. The keyboard is
    the same as recent models.

    The patch needs to be synchronized with the bcm5974 patch for
    the trackpad - as usual.

    Patch originally written by clipcarl (forums.opensuse.org).

    [rydberg@euromail.se: Amended mouse ignore lines]
    Signed-off-by: Ryan Bourgeois
    Signed-off-by: Henrik Rydberg
    Acked-by: Jiri Kosina
    Signed-off-by: Dmitry Torokhov

    Ryan Bourgeois
     

22 May, 2012

1 commit


24 Apr, 2012

1 commit


18 Apr, 2012

1 commit


07 Nov, 2011

1 commit

  • This removes the use of the special "macbookair_fn_keys" keyboard
    translation table for the MacBookAir4,x models (ie the 2011 refresh).
    They use the standard apple_fn_keys[] translation. Apparently only the
    old MacBook Air's need a different translation table.

    This mirrors the change that commit da617c7cb915 ("HID: consolidate
    MacbookAir 4,1 mappings") did for the WELLSPRING6A ones, but does it for
    the WELLSPRING6 model used on the MacBookAir4,2.

    Reported-and-tested-by: Dirk Hohndel
    Cc: Jiri Kosina
    Cc: Joshua V Dillon
    Cc: Chase Douglas
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     

29 Oct, 2011

1 commit


28 Oct, 2011

1 commit

  • This patch adds keyboard support for Macbook Pro 8 models which has
    WELLSPRING5A model name and 0x0252, 0x0253 and 0x0254 USB IDs. Trackpad
    support for those models are added to bcm5974 in
    c331eb580a0a7906c0cdb8dbae3cfe99e3c0e555 ("Input: bcm5974 - Add
    support for newer MacBookPro8,2).

    Signed-off-by: Gökçen Eraslan
    Acked-by: Henrik Rydberg
    Signed-off-by: Jiri Kosina

    Gökçen Eraslan
     

25 Oct, 2011

1 commit


05 Oct, 2011

1 commit


03 Oct, 2011

1 commit


10 Aug, 2011

1 commit

  • Added USB device IDs for MacBookAir4,2 keyboard. Device constants were
    copied from the MacBookAir3,2 constants. The 4,2 device specification is
    reportedly unchanged from the 3,2 predecessor and seems to work well.

    Signed-off-by: Joshua V Dillon
    Signed-off-by: Chase Douglas
    Signed-off-by: Jiri Kosina

    Joshua V. Dillon
     

02 Aug, 2011

1 commit


13 Mar, 2011

1 commit


10 Dec, 2010

1 commit

  • Neaten current uses of dev_ by adding and using
    hid specific hid_ macros.

    Convert existing uses of dev_ uses to hid_.
    Convert hid-pidff printk uses to hid_.

    Remove err_hid and use hid_err instead.

    Add missing newlines to logging messages where necessary.
    Coalesce format strings.

    Add and use pr_fmt(fmt) KBUILD_MODNAME ": " fmt

    Other miscellaneous changes:

    Add const struct hid_device * argument to hid-core functions
    extract() and implement() so hid_ can be used by them.
    Fix bad indentation in hid-core hid_input_field function
    that calls extract() function above.

    Signed-off-by: Joe Perches
    Signed-off-by: Jiri Kosina

    Joe Perches
     

03 Nov, 2010

1 commit