- 19 6月, 2015 2 次提交
-
-
由 Hans de Goede 提交于
Port the backlight selection logic to the new backlight interface selection API. This commit also removes various obsolete pr_xxx messages related to backlight interface selection. These are obsolete because they assume there is only a vendor or acpi backlight driver and no other choice. Also they are not necessary, if the user wants to know which backlight interfaces are registered a simple "ls /sys/class/backlight" suffices. Signed-off-by: NHans de Goede <hdegoede@redhat.com> Acked-by: NDarren Hart <dvhart@linux.intel.com> Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
-
由 Hans de Goede 提交于
acpi_video_unregister() not only unregisters the acpi-video backlight interface but also unregisters the acpi video bus event listener, causing e.g. brightness hotkey presses to no longer generate keypress events. The unregistering of the acpi video bus event listener usually is undesirable, which by itself is a good reason to switch to acpi_video_unregister_backlight(). Another problem with using acpi_video_unregister() rather then using acpi_video_unregister_backlight() is that on systems with an intel video opregion (most systems) and a broken_acpi_video quirk, whether or not the acpi video bus event listener actually gets unregistered depends on module load ordering: Scenario a: 1) acpi/video.ko gets loaded (*), does not do acpi_video_register as there is an intel opregion. 2) intel.ko gets loaded, calls acpi_video_register() which registers both the listener and the acpi backlight interface 3) samsung-laptop.ko gets loaded, calls acpi_video_unregister() causing both the listener and the acpi backlight interface to unregister Scenario b: 1) acpi/video.ko gets loaded (*), does not do acpi_video_register as there is an intel opregion. 2) samsung-laptop.ko gets loaded, calls acpi_video_dmi_promote_vendor(), calls acpi_video_unregister(), which is a nop since acpi_video_register has not yet been called 2) intel.ko gets loaded, calls acpi_video_register() which registers the listener, but does not register the acpi backlight interface due to the call to the preciding call to acpi_video_dmi_promote_vendor() *) acpi/video.ko always loads first as both other modules depend on it. So we end up with or without an acpi video bus event listener depending on module load ordering, not good. Switching to using acpi_video_unregister_backlight() means that independ of ordering we will always have an acpi video bus event listener fixing this. Note that this commit means that systems without an intel video opregion, and systems which were hitting scenario a wrt module load ordering, are now getting an acpi video bus event listener while before they were not! On some systems this may cause the brightness hotkeys to start generating keypresses while before they were not (good), while on other systems this may cause the brightness hotkeys to generate multiple keypress events for a single press (not so good). Since on most systems the acpi video bus is the canonical source for brightness events I believe that the latter case will needs to be handled on a case by case basis by filtering out the duplicate keypresses at the other source for them. Cc: Corentin Chary <corentin.chary@gmail.com> Signed-off-by: NHans de Goede <hdegoede@redhat.com> Acked-by: NDarren Hart <dvhart@linux.intel.com> Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
-
- 07 2月, 2015 3 次提交
-
-
由 Darren Hart 提交于
Replace existing usage of single variable sscanf with kstrtoint for consistency with checkpatch warnings against such usage. Signed-off-by: NDarren Hart <dvhart@linux.intel.com>
-
由 Lad, Prabhakar 提交于
Fix the following sparse warning: samsung-laptop.c:1365:52: warning: Using plain integer as NULL pointer Signed-off-by: NLad, Prabhakar <prabhakar.csengg@gmail.com> Signed-off-by: NDarren Hart <dvhart@linux.intel.com>
-
由 Julijonas Kikutis 提交于
Some Samsung laptops with SABI3 delay the sleep for 10 seconds after the lid is closed and do not wake up from sleep after the lid is opened. A SABI command is needed to enable the better behavior. Command = 0x6e, d0 = 0x81 enables this behavior. Returns d0 = 0x01. Command = 0x6e, d0 = 0x80 disables this behavior. Returns d0 = 0x00. Command = 0x6d and any d0 queries the state. This returns: d0 = 0x00000*01, d1 = 0x00, d2 = 0x00, d3 = 0x0* when it is enabled. d0 = 0x00000*00, d1 = 0x00, d2 = 0x00, d3 = 0x0* when it is disabled. Where * is 0 - laptop has never slept or hibernated after switch on, 1 - laptop has hibernated just before, 2 - laptop has slept just before. Patch addresses bug https://bugzilla.kernel.org/show_bug.cgi?id=75901 . It adds a sysfs attribute lid_handling with a description and also an addition to the quirks structure to enable the mode by default. A user with another laptop in the bug report says that "power button has to be pressed twice to wake the machine" when he or she enabled the mode manually using the SABI command. Therefore, it is enabled by default only for the single laptop that I have tested. Signed-off-by: NJulijonas Kikutis <julijonas.kikutis@gmail.com> Signed-off-by: NDarren Hart <dvhart@linux.intel.com>
-
- 24 1月, 2015 1 次提交
-
-
由 Hans de Goede 提交于
Since kernel 3.14 the backlight control has been broken on various Samsung Atom based netbooks. This has been bisected and this problem happens since commit b35684b8 ("drm/i915: do full backlight setup at enable time") This has been reported and discussed in detail here: http://lists.freedesktop.org/archives/intel-gfx/2014-July/049395.html Unfortunately no-one has been able to fix this. This only affects Samsung Atom netbooks, and the Linux kernel and the BIOS of those laptops have never worked well together. All affected laptops already have a quirk to avoid using the standard acpi-video interface and instead use the samsung specific SABI interface which samsung-laptop uses. It seems that recent fixes to the i915 driver have also broken backlight control through the SABI interface. The intel_backlight driver OTOH works fine, and also allows for finer grained backlight control. So add a new use_native_backlight quirk, and replace the broken_acpi_video quirk with this quirk for affected models. This new quirk disables acpi-video as before and also stops samsung-laptop from registering the SABI based samsung_laptop backlight interface, leaving only the working intel_backlight interface. This commit enables this new quirk for 3 models which are known to be affected, chances are that it needs to be used on other models too. BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1094948 # N145P BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1115713 # N250P Reported-by: Bertrik Sikken <bertrik@sikken.nl> # N150P Cc: stable@vger.kernel.org # 3.16 Signed-off-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NDarren Hart <dvhart@linux.intel.com>
-
- 28 10月, 2014 1 次提交
-
-
由 Hans de Goede 提交于
The acpi-video backlight interface on the NC210 does not work, blacklist it and use the samsung-laptop interface instead. BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=861573 Cc: stable@vger.kernel.org Signed-off-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NDarren Hart <dvhart@linux.intel.com>
-
- 10 6月, 2014 1 次提交
-
-
由 Scott Thrasher 提交于
These models have only 4 levels of keyboard backlight brightness and forget how to work the backlight after resuming from S3 sleep. I've added a quirk to set the appropriate number of backlight levels, and one to re-enable the keyboard backlight on resume. (Whitespace cleaned up by Matthew Garrett) Signed-off-by: NScott Thrasher <scott.thrasher@gmail.com> Signed-off-by: NMatthew Garrett <matthew.garrett@nebula.com>
-
- 31 1月, 2013 1 次提交
-
-
由 Matt Fleming 提交于
It has been reported that running this driver on some Samsung laptops with EFI can cause those machines to become bricked as detailed in the following report, https://bugs.launchpad.net/ubuntu-cdimage/+bug/1040557 There have also been reports of this driver causing Machine Check Exceptions on recent EFI-enabled Samsung laptops, https://bugzilla.kernel.org/show_bug.cgi?id=47121 So disable it if booting from EFI since this driver relies on grovelling around in the BIOS memory map which isn't going to work. Cc: Corentin Chary <corentincj@iksaif.net> Cc: Matthew Garrett <mjg59@srcf.ucam.org> Cc: Colin Ian King <colin.king@canonical.com> Cc: Steve Langasek <steve.langasek@canonical.com> Cc: <stable@vger.kernel.org> Signed-off-by: NMatt Fleming <matt.fleming@intel.com> Signed-off-by: NH. Peter Anvin <hpa@linux.intel.com>
-
- 08 1月, 2013 1 次提交
-
-
由 Seth Forshee 提交于
BugLink: http://bugs.launchpad.net/bugs/1086921 Cc: stable@vger.kernel.org # v3.4+ Signed-off-by: NSeth Forshee <seth.forshee@canonical.com> Signed-off-by: NMatthew Garrett <matthew.garrett@nebula.com>
-
- 14 9月, 2012 1 次提交
-
-
由 Corentin Chary 提交于
Signed-off-by: NCorentin Chary <corentin.chary@gmail.com> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
- 28 7月, 2012 3 次提交
-
-
由 Corentin Chary 提交于
> Chassis Information > Manufacturer: SAMSUNG ELECTRONICS CO., LTD. > Type: Other Type should be "Notebook", "Laptop", .. not "Other". Signed-off-by: NCorentin Chary <corentin.chary@gmail.com> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 Corentin Chary 提交于
Signed-off-by: NCorentin Chary <corentin.chary@gmail.com> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 Corentin Chary 提交于
Instead of using directly acpi_video_unregister(), use acpi_video_dmi_promote_vendor() (and make it call acpi_video_unregister() if needed) Signed-off-by: NCorentin Chary <corentin.chary@gmail.com> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
- 27 3月, 2012 4 次提交
-
-
由 Corentin Chary 提交于
On these laptops, the ACPI video is not functional, and very unlikely to be fixed by the vendor. Note that intel_backlight works for some of these laptops, and the backlight from samsung-laptop always work. The good news is that newer laptops have functional ACPI video device and won't end up growing this list. Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 Dan Carpenter 提交于
This function returns a umode_t (unsigned short) instead of mode_t which is an unsigned int on some architectures. Cleaning this up silences a compile warning: drivers/platform/x86/samsung-laptop.c:1108:2: warning: initialization from incompatible pointer type [enabled by default] Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com> Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 David Rientjes 提交于
linux/ctype.h is needed for isalnum() to avoid a build error: drivers/platform/x86/samsung-laptop.c: In function ‘samsung_sabi_diag’: drivers/platform/x86/samsung-laptop.c:1306: error: implicit declaration of function ‘isalnum’ Signed-off-by: NDavid Rientjes <rientjes@google.com> Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 David Rientjes 提交于
Fields d0, d1, d2, and d3 are members of an anonymous struct inside an anonymous union inside struct sabi_data. Initialization must be done by wrapping the anonymous union and structs with brackets to avoid a build error: drivers/platform/x86/samsung-laptop.c: In function ‘sabi_set_commandb’: drivers/platform/x86/samsung-laptop.c:433: error: unknown field ‘d0’ specified in initializer drivers/platform/x86/samsung-laptop.c:433: warning: missing braces around initializer drivers/platform/x86/samsung-laptop.c:433: warning: (near initialization for ‘in.<anonymous>’) ... Signed-off-by: NDavid Rientjes <rientjes@google.com> Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
- 21 3月, 2012 15 次提交
-
-
由 Corentin Chary 提交于
Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 Corentin Chary 提交于
- don't output error when probing features at load - print the SABI signature if samsung_sabi_init() succeed Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Acked-by: NGreg Kroah-Hartman <gregkh@suse.de> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 Corentin Chary 提交于
We still need to figure out exactly what each of different fields represent, but they contain at least model and version informations. Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Acked-by: NGreg Kroah-Hartman <gregkh@suse.de> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 Corentin Chary 提交于
This enable the driver for everything that look like a laptop and is from vendor "SAMSUNG ELECTRONICS CO., LTD.". Note that laptop supported by samsung-q10 seem to have a different vendor strict. Also remove every log output until we know that we have a SABI interface (except if the driver is forced to load, or debug is enabled). Keeping a whitelist of laptop with a model granularity is something that can't work without close vendor cooperation (and we don't have that). Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Acked-by: NGreg Kroah-Hartman <gregkh@suse.de> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 Corentin Chary 提交于
The wireless status get and get commands seems to use one byte per device. First byte is for wlan and third is for bluetooh, we will have to find what the other are for. Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Acked-by: NGreg Kroah-Hartman <gregkh@suse.de> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 Corentin Chary 提交于
Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Acked-by: NGreg Kroah-Hartman <gregkh@suse.de> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 Corentin Chary 提交于
Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Acked-by: NGreg Kroah-Hartman <gregkh@suse.de> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 Corentin Chary 提交于
Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Acked-by: NGreg Kroah-Hartman <gregkh@suse.de> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 Corentin Chary 提交于
We can now do the self test using debugfs, so remove the code and keep the debug flag to enable more traces. Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Acked-by: NGreg Kroah-Hartman <gregkh@suse.de> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 Corentin Chary 提交于
This allow to call arbitrary sabi commands wihout modifying the driver at all. For example, setting the keyboard backlight brightness to 5 using debugfs interface can be done like that: ; Set the command echo 0x78 > command ; Set the data echo 0x0582 > d0 ; Fill the rest with 0 echo 0 > d1 echo 0 > d2 echo 0 > d3 ; And issue the command cat call Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Acked-by: NGreg Kroah-Hartman <gregkh@suse.de> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 Corentin Chary 提交于
* SABI command are on 16 bits, not 8 * SABI can read/write up to 11 byte of data * There is not real difference between "get" and "set" commands, so refactorise the code of both functions Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Acked-by: NGreg Kroah-Hartman <gregkh@suse.de> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 Corentin Chary 提交于
Will be usefull later when we will have more platform sysfs files like battery_life_extender or usb_charge. Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Acked-by: NGreg Kroah-Hartman <gregkh@suse.de> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 Corentin Chary 提交于
samsung-laptop is not at all related to ACPI, but since this interface is not documented at all, and the driver has to use it at load to understand how it works on the laptop, I think it's a good idea to disable it if a better solution is available. Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 Corentin Chary 提交于
Create _init()/_exit() function for each subsystem, remove the local struct samsung_laptop * and only keep a struct platform_device * that can only be used in samsung_init() and samsung_exit(). Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Acked-by: NGreg Kroah-Hartman <gregkh@suse.de> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 Corentin Chary 提交于
Even if this driver can only be loaded once, it is still a good idea to create some kind of context structure. Signed-off-by: NCorentin Chary <corentincj@iksaif.net> Acked-by: NGreg Kroah-Hartman <gregkh@suse.de> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
- 13 1月, 2012 1 次提交
-
-
由 Rusty Russell 提交于
module_param(bool) used to counter-intuitively take an int. In fddd5201 (mid-2009) we allowed bool or int/unsigned int using a messy trick. It's time to remove the int/unsigned int option. For this version it'll simply give a warning, but it'll break next kernel version. Acked-by: NMauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
-
- 24 10月, 2011 6 次提交
-
-
由 Tommaso Massimi 提交于
my samsung laptop would be very happy if you add these lines to the file drivers/platform/x86/samsung-laptop.c Cc: stable <stable@kernel.org> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 Stefan Beller 提交于
My DMI model is this: >dmesg |grep DMI [ 0.000000] DMI present. [ 0.000000] DMI: SAMSUNG ELECTRONICS CO., LTD. SR700/SR700, BIOS 04SR 02/20/2008 adding dmi information of Samsung R700 laptops This adds the dmi information of Samsungs R700 laptops. Signed-off-by: NStefan Beller <stefanbeller@googlemail.com> Cc: stable <stable@kernel.org> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 John Serock 提交于
This patch depends on the "Platform: Brightness quirk for samsung laptop driver" patch from Jason Stubbs. This patch adds a check for an initial brightness level of 0; if the level is 0, this patch changes the brightness level to 1 before the driver attempts to detect the brightness quirk. The Samsung N150 netbook experiences the brightness quirk. Without Jason's patch, the only brightness levels available on the N150 are 0, 1, and 8. This patch ensures that, when the initial brightness level is 0, the samsang-laptop driver detects the brightness quirk on the N150, thereby making brightness levels 0 through 8 available. Signed-off-by: NJohn Serock <john.serock@gmail.com> Acked-by: NJason Stubbs <jasonbstubbs@gmail.com> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 Raul Gutierrez Segales 提交于
This is a follow-up for commit 78a7539b, which didn't cover the Samsung N220 laptop. With this backlight brightness works nicely on the N220 netbook. Signed-off-by: NRaul Gutierrez Segales <rgs@collabora.co.uk> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 Jason Stubbs 提交于
This patch just adds the DMI info for the samsung laptop driver to work with the NC210/NC110. It needs the brightness quirk patch for proper support. Signed-off-by: NJason Stubbs <jasonbstubbs@gmail.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-
由 Jason Stubbs 提交于
On some Samsung laptops the brightness regulation works slightly different. All SABI commands except for set_brightness work as expected. The behaviour of set_brightness is as follows: - Setting a new brightness will only step one level toward the new brightness level. For example, setting a level of 5 when the current level is 2 will result in a brightness level of 3. - A spurious KEY_BRIGHTNESS_UP or KEY_BRIGHTNESS_DOWN event is also generated along with the change in brightness. - Neither of the above two issues occur when changing from/to brightness level 0. This patch adds detection and a non-intrusive workaround for the above issues. Signed-off-by: NJason Stubbs <jasonbstubbs@gmail.com> Tested-by: NDavid Herrmann <dh.herrmann@googlemail.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de> Signed-off-by: NMatthew Garrett <mjg@redhat.com>
-