summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* ARM: dts: rockchip: add emmc nodes for rk3066 and rk3188Heiko Stuebner2014-09-133-0/+56
| | | | | | | | Add the controller node, pinctrl settings for the customizable pins and sort the controllers like on rk3288 as emmc, sdmmc, sdio for handling convenience. Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: dts: rockchip: add Cortex-A9 SPI controller nodesHeiko Stuebner2014-09-133-0/+118
| | | | | | | This adds basic spi nodes and pinctrl settings to the rk3066 and rk3188 devicetree files. Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: dts: rockchip: enable usb ports on Radxa RockHeiko Stuebner2014-09-131-0/+43
| | | | | | | | This enables both the otg and host port and adds the vbus regulators on the Radxa Rock board. As we don't have phy support yet, the vbus regulators are added in always-on mode. Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: dts: rockchip: add dwc2 controllers for rk3066 and rk3188Heiko Stuebner2014-09-131-0/+18
| | | | | | Add the two dwc2 controllers providing an otg and a designated host port. Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: dts: rockchip: remove rockchip,bus-index from rk3xxx i2c0Heiko Stuebner2014-09-131-1/+0
| | | | | | | This is a remnant from the first i2c driver iteration that seems to have been forgotten and thus made its way into the dtsi. Remove it. Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: dts: Switch i2c0 to 400kHz on rk3288-evb-rk808Doug Anderson2014-09-111-0/+1
| | | | | | | | | | | | | | | We should be able to talk to the PMIC at 400kHz. No need to talk at the slow 100kHz. As measured by ftrace (with a bunch of extra patches, since cpufreq for rk808 hasn't landed yet): before this change: cpu0_set_target() => ~500us after this change: cpu0_set_target() => ~300us Signed-off-by: Doug Anderson <dianders@chromium.org> Reviewed-by Addy Ke <addy.ke@rock-chips.com> Tested-by Addy Ke <addy.ke@rock-chips.com> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: dts: Add rk808 PMIC to rk3288-evb-rk808Doug Anderson2014-09-091-0/+131
| | | | | | | | | This adds initial support. For now, regulators are always on and we don't specify the input supply for all of the regulators. Signed-off-by: huang lin <hl@rock-chips.com> Signed-off-by: Doug Anderson <dianders@chromium.org> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: dts: Add mshc aliases for rk3288Doug Anderson2014-09-091-0/+4
| | | | | | | | | | | It's convenient (and less confusing to people reading logs) if the eMMC port on rk3288 is consistenly marked with mmc0 and the sdmmc port on rk3288 is consistently marked with mmc1. Add the appropriate aliases. Signed-off-by: Doug Anderson <dianders@chromium.org> Reviewed-by: Sonny Rao <sonnyrao@chromium.org> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: dts: Add SPI nodes to rk3288huang lin2014-09-091-0/+92
| | | | | | | | | | | | | | | | | | | This adds basic SPI nodes to the base rk3288 device tree file. A few notes: * It's assumed that most users of the SPI ports are using chip select 0. Thus the default pinctrl for the ports enables chip select 0 (but not chip select 1 on ports that have it). If a board wants to use chip select 1 or wants a GPIO chip select the board should override the pinctrl (just like boards can override UART pinctrl if they have hardware flow control). * Since SPI DMA support appears broken and the SPI works fine without DMA we don't include the DMA references. That can come in a later change. Signed-off-by: huang lin <hl@rock-chips.com> Signed-off-by: Doug Anderson <dianders@chromium.org> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: dts: Enable USB host1(dwc) on rk3288-evbKever Yang2014-09-091-0/+4
| | | | | | | USB host1 port is the host A port nearby the otg port. Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: dts: add rk3288 dwc2 controller supportKever Yang2014-09-091-0/+20
| | | | | | | | | | | | rk3288 has two kind of usb controller, this add the dwc2 controller for otg and host1. Controller can works with usb PHY default setting and Vbus on. Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Reviewed-by: Doug Anderson <dianders@chromium.org> Tested-by: Doug Anderson <dianders@chromium.org> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: dts: Add sdio0 and sdio1 to the rk3288Addy Ke2014-09-041-0/+102
| | | | | | | | | This patch requires that <https://patchwork.kernel.org/patch/4701721/> land in order to compile. Reviewed-by: Doug Anderson <dianders@chromium.org> Signed-off-by: Addy Ke <addy.ke@rock-chips.com> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: dts: rockchip: add saradc nodesHeiko Stübner2014-08-272-0/+20
| | | | | | | Add the core device nodes for the SARADC found on both the Cortex-A9 series (rk3066 and rk3188) as well as the newer rk3288. Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: dts: rockchip: add hym8563 rtc to Radxa Rock boardHeiko Stübner2014-08-271-0/+17
| | | | | | | The Radxa Rock uses a hym8563 as rtc. Add the i2c device and necessary pinconfig for the interrupt pin - labeled rtc_int in the schematics. Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: dts: Enable PWM backlight on rk3288-evbDoug Anderson2014-08-271-0/+53
| | | | | | | PWM0 is the PWM associated with the LCD backlight. Enable it. Signed-off-by: Doug Anderson <dianders@chromium.org> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: dts: Add main PWM info to rk3288Doug Anderson2014-08-271-0/+68
| | | | | | | | | This adds the PWM info (other than the VOP PWM) to the main rk3288 dtsi file. Signed-off-by: Caesar Wang <caesar.wang@rock-chips.com> Signed-off-by: Doug Anderson <dianders@chromium.org> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: dts: Move the PMIC interrupt pinctrl line to rk3288-evb commonDoug Anderson2014-08-162-9/+7
| | | | | | | | | | | | | | | | | The PMIC interrupt pinctrl line was added to the rk3288-evb-act8846, but it's the same line on both the ACT8846 version and the RK808 version. This makes a lot of sense since they share the same SoC daugherboard. Move the pinctrl definition to the common file so we can use it for the RK808 version. NOTE: The PMIC interrupt doesn't _actually_ go to the PMIC on the ACT8846 version of the board (it does on the RK808), but our convention is to label things as they're labelled on the schematics. In the very least you can argue that this is the interrupt from the PMIC daughtercard even if it doesn't actually go to the PMIC chip. Signed-off-by: Doug Anderson <dianders@chromium.org> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: dts: Enable emmc and sdmmc on the rk3288-evb boardsDoug Anderson2014-08-161-0/+24
| | | | | | | | | | | | | | | | | | This enables basic SD and eMMC support. Things are not yet running at the fastest speed and we don't have the regulators specified, but we can at least use the eMMC and SD cards now. A note: * Though MMC DDR50 mode is partially supported in the dw_mmc rk3288-specific code in Addy's patch, Addy's patch doesn't add tuning support. That means DDR50 mode is not reliable. From the 3288 TRM: "Tuning is required for other speed modes-such as DDR50-even though the output delay from the card is less than one cycle." Thus, we don't enable MMC DDR50 mode in this patch. Signed-off-by: Doug Anderson <dianders@chromium.org> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: dts: Add emmc and sdmmc to the rk3288 device treeDoug Anderson2014-08-161-0/+20
| | | | | | | | This adds support for the sdmmc and emmc ports on the rk3288. Signed-off-by: Doug Anderson <dianders@chromium.org> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: dts: rockchip: unuse the slot-node and deprecate the supports-highspeed ↵Jaehoon Chung2014-08-162-16/+6
| | | | | | | | | | | | | | | | | for dw-mmc dw-mmc controller can support multiple slots. But, there are no use-cases anywhere. So we don't need to support the slot-node for dw-mmc controller. And "supports-highspeed" property in dw-mmc is deprecated. "supports-highspeed" property can be replaced with "cap-sd/mmc-highspeed". Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com> Reviewed-by: Tushar Behera <trblinux@gmail.com> Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org> Reviewed-by: Heiko Stuebner <heiko@sntech.de> Acked-by: Seungwon Jeon <tgih.jun@samsung.com> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* Linux 3.17-rc1v3.17-rc1Linus Torvalds2014-08-161-2/+2
|
* Merge branch 'for_linus' of git://cavan.codon.org.uk/platform-drivers-x86Linus Torvalds2014-08-1624-108/+608
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pull x86 platform driver updates from Matthew Garrett: "A moderate number of changes, but nothing awfully significant. A lot of const cleanups, some reworking and additions to the rfkill quirks in the asus driver, a new driver for generating falling laptop events on Toshibas and some misc fixes. Maybe vendors have stopped inventing things" * 'for_linus' of git://cavan.codon.org.uk/platform-drivers-x86: (41 commits) platform/x86: Enable build support for toshiba_haps Documentation: Add file about toshiba_haps module platform/x86: Toshiba HDD Active Protection Sensor asus-nb-wmi: Add wapf4 quirk for the U32U alienware-wmi: make hdmi_mux enabled on case-by-case basis ideapad-laptop: Constify DMI table and other r/o variables asus-nb-wmi.c: Rename x401u quirk to wapf4 compal-laptop: correct invalid hwmon name toshiba_acpi: Add Qosmio X75-A to the alt keymap dmi list toshiba_acpi: Add extra check to backlight code Fix log message about future removal of interface ideapad-laptop: Disable touchpad interface on Yoga models asus-nb-wmi: Add wapf4 quirk for the X550CC intel_ips: Make ips_mcp_limits variables static thinkpad_acpi: Mark volume_alsa_control_{vol,mute} as __initdata fujitsu-laptop: Mark fujitsu_dmi_table[] DMI table as __initconst hp-wmi: Add missing __init annotations to initialization code hp_accel: Constify ACPI and DMI tables fujitsu-tablet: Mark DMI callbacks as __init code dell-laptop: Mark dell_quirks[] DMI table as __initconst ...
| * platform/x86: Enable build support for toshiba_hapsAzael Avalos2014-08-162-0/+20
| | | | | | | | | | | | | | | | Makefile and Kconfig build support patch for the newly introduced kernel module toshiba_haps. Signed-off-by: Azael Avalos <coproscefalo@gmail.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * Documentation: Add file about toshiba_haps moduleAzael Avalos2014-08-162-0/+78
| | | | | | | | | | | | | | | | This patch provides information about the Toshiba HDD Active Protection Sensor driver module toshiba_haps. Signed-off-by: Azael Avalos <coproscefalo@gmail.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * platform/x86: Toshiba HDD Active Protection SensorAzael Avalos2014-08-161-0/+265
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This driver adds support for the built-in accelereometer found on recent Toshiba laptops with HID TOS620A. This driver receives ACPI notify events 0x80 when the sensor detects a sudden move or a harsh vibration, as well as an ACPI notify event 0x81 whenever the movement or vibration has been stabilized. Also provides sysfs entries to get/set the desired protection level and reseting the HDD protection interface. Signed-off-by: Azael Avalos <coproscefalo@gmail.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * asus-nb-wmi: Add wapf4 quirk for the U32UHans de Goede2014-08-161-0/+14
| | | | | | | | | | | | | | | | As reported here: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1173681 the U32U needs wapf=4 too. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * alienware-wmi: make hdmi_mux enabled on case-by-case basisMario Limonciello2014-08-161-2/+20
| | | | | | | | | | | | | | | | Not all HW supporting WMAX method will support the HDMI mux feature. Explicitly quirk the HW that does support it. Signed-off-by: Mario Limonciello <mario_limonciello@dell.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * ideapad-laptop: Constify DMI table and other r/o variablesMathias Krause2014-08-161-2/+2
| | | | | | | | | | | | | | | | | | | | Constify the rfkill_blacklist[] DMI table, the ideapad_rfk_data[] table and the ideapad_attribute_group attribute group. There's no need to have them writeable during runtime. Signed-off-by: Mathias Krause <minipli@googlemail.com> Cc: Ike Panhc <ike.pan@canonical.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * asus-nb-wmi.c: Rename x401u quirk to wapf4Hans de Goede2014-08-161-13/+13
| | | | | | | | | | | | | | | | | | The actual x401u does not use the so named x401u quirk but the x55u quirk. All that the x401u quirk does it setting wapf to 4, so rename it to wapf4 to stop the confusion. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * compal-laptop: correct invalid hwmon nameRoald Frederickx2014-08-161-1/+1
| | | | | | | | | | | | | | | | | | Change the name of the hwmon interface from "compal-laptop" to "compal". A dash is an invalid character for a hwmon name and caused the call to hwmon_device_register_with_groups() to fail. Signed-off-by: Roald Frederickx <roald.frederickx@gmail.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * toshiba_acpi: Add Qosmio X75-A to the alt keymap dmi listAzael Avalos2014-08-161-0/+7
| | | | | | | | | | | | | | | | | | | | | | The Toshiba Qosmio X75-A series models also come with the new keymap layout. This patch adds this model to the alt_keymap_dmi list, along with an extra key found on these models. Signed-off-by: Azael Avalos <coproscefalo@gmail.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * toshiba_acpi: Add extra check to backlight codeAzael Avalos2014-08-161-4/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some Toshiba models (most notably Qosmios) come with an incomplete backlight method where the AML code doesn't check for write or read commands and always returns HCI_SUCCESS and the actual brightness (and in some cases the max brightness), thus allowing the backlight interface to be registered without write support. This patch changes the set_lcd_brightness function, checking the returned values for values greater than zero to avoid registering a broken backlight interface. Signed-off-by: Azael Avalos <coproscefalo@gmail.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * Fix log message about future removal of interfaceMartin Kepplinger2014-08-161-3/+3
| | | | | | | | | | | | | | If this is going away, it won't be in 2012. Signed-off-by: Martin Kepplinger <martink@posteo.de> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * ideapad-laptop: Disable touchpad interface on Yoga modelsHans de Goede2014-08-161-0/+27
| | | | | | | | | | | | | | | | Yoga models don't offer touchpad ctrl through the ideapad interface, causing ideapad_sync_touchpad_state to send wrong touchpad enable/disable events. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * asus-nb-wmi: Add wapf4 quirk for the X550CCHans de Goede2014-08-161-0/+9
| | | | | | | | | | | | | | | | As reported here: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1173681 the X550CC needs wapf=4 too. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * intel_ips: Make ips_mcp_limits variables staticMathias Krause2014-08-161-3/+3
| | | | | | | | | | | | | | | | These variables don't need to be visible outside of this compilation unit, make them static. Signed-off-by: Mathias Krause <minipli@googlemail.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * thinkpad_acpi: Mark volume_alsa_control_{vol,mute} as __initdataMathias Krause2014-08-161-2/+2
| | | | | | | | | | | | | | | | | | | | Mark volume_alsa_control_vol and volume_alsa_control_mute as __initdata, as snd_ctl_new1() will copy the relevant parts, so there is no need to keep the master copies around after initialization. Signed-off-by: Mathias Krause <minipli@googlemail.com> Cc: Henrique de Moraes Holschuh <ibm-acpi@hmh.eng.br> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * fujitsu-laptop: Mark fujitsu_dmi_table[] DMI table as __initconstMathias Krause2014-08-161-5/+5
| | | | | | | | | | | | | | | | | | | | The DMI table is only ever used during initialization. Mark it as __initconst so its memory can be released afterwards -- roughly 1.5 kB. In turn, the callback functions can be marked with __init, too. Signed-off-by: Mathias Krause <minipli@googlemail.com> Cc: Jonathan Woithe <jwoithe@just42.net> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * hp-wmi: Add missing __init annotations to initialization codeMathias Krause2014-08-161-3/+3
| | | | | | | | | | | | | | | | These functions are only called from other initialization routines, so can be marked __init, too. Signed-off-by: Mathias Krause <minipli@googlemail.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * hp_accel: Constify ACPI and DMI tablesMathias Krause2014-08-161-2/+2
| | | | | | | | | | | | | | | | | | Constify the lis3lv02d_device_ids[] ACPI and the lis3lv02d_dmi_ids[] DMI tables. There's no need to have them writeable during runtime. Signed-off-by: Mathias Krause <minipli@googlemail.com> Cc: Eric Piel <eric.piel@tremplin-utc.net> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * fujitsu-tablet: Mark DMI callbacks as __init codeMathias Krause2014-08-161-3/+3
| | | | | | | | | | | | | | | | | | The DMI table is already marked as __initconst, so can be the callback functions as they're only used in that context. Signed-off-by: Mathias Krause <minipli@googlemail.com> Cc: Robert Gerlach <khnz@gmx.de> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * dell-laptop: Mark dell_quirks[] DMI table as __initconstMathias Krause2014-08-161-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | The dell_quirks[] DMI table is only ever used during initialization. Mark it as __initconst so its memory can be released afterwards -- roughly 5.7 kB. In turn, the callback function can be marked with __init, too. Also the touchpad_led_init() function can be marked __init as it's only referenced from dell_init() -- an __init function. Signed-off-by: Mathias Krause <minipli@googlemail.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * eeepc-wmi: Constify asus_quirks[] DMI tableMathias Krause2014-08-161-1/+1
| | | | | | | | | | | | | | | | | | Constify the asus_quirks[] DMI table. There's no need to have it writeable during runtime. Signed-off-by: Mathias Krause <minipli@googlemail.com> Cc: Corentin Chary <corentin.chary@gmail.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * acer-wmi: Mark init data and code as suchMathias Krause2014-08-161-20/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | Quite a lot of code and data of acer-wmi.c is only ever used during initialization. Mark those accordingly -- and constify, where appropriate -- so the memory can be released afterwards. All in all those changes move ~10 kB of code and data to the .init sections, marking them for release after initialization has finished. Signed-off-by: Mathias Krause <minipli@googlemail.com> Cc: "Lee, Chun-Yi" <jlee@suse.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * asus-nb-wmi: Constify asus_quirks[] DMI tableMathias Krause2014-08-161-1/+1
| | | | | | | | | | | | | | | | | | Constify the asus_quirks[] DMI table. There's no need to have it writeable during runtime. Signed-off-by: Mathias Krause <minipli@googlemail.com> Cc: Corentin Chary <corentin.chary@gmail.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * alienware-wmi: Mark DMI table as __initconstMathias Krause2014-08-161-2/+2
| | | | | | | | | | | | | | | | | | The DMI table is only ever used during initialization. Mark it as __initconst so its memory can be released appropriately. In turn, the callback function can be marked with __init, too. Signed-off-by: Mathias Krause <minipli@googlemail.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * acer-wmi: Hide acer_{suspend,resume} for !CONFIG_PM_SLEEPMathias Krause2014-08-161-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | Encapsulate acer_suspend() and acer_resume with #ifdef CONFIG_PM_SLEEP to get rid of the following warnings: ../acer-wmi.c:2046:12: warning: ‘acer_suspend’ defined but not used [-Wunused-function] ../acer-wmi.c:2068:12: warning: ‘acer_resume’ defined but not used [-Wunused-function] Signed-off-by: Mathias Krause <minipli@googlemail.com> Cc: "Lee, Chun-Yi" <jlee@suse.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * acer-wmi: Mark acer_wmi_keymap[] as __initconstMathias Krause2014-08-161-1/+1
| | | | | | | | | | | | | | | | | | sparse_keymap_setup() will make a copy of the keymap, so we can release the master copy after initialization. Signed-off-by: Mathias Krause <minipli@googlemail.com> Cc: "Lee, Chun-Yi" <jlee@suse.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * MAINTAINERS: Update git URL for x86 platform driversMathias Krause2014-08-161-1/+1
| | | | | | | | | | | | | | | | The repo on kernel.org is no longer available but has a replacement at cavan.codon.org.uk. Signed-off-by: Mathias Krause <minipli@googlemail.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
| * WMI: Remove unnecessary null testHimangi Saraogi2014-08-161-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch removes the null test on block. block is initialized at the beginning of the function to &wblock->gblock. Since wblock is dereferenced prior to the null test, wblock must be a valid pointer, and &wblock->gblock cannot be null. The following Coccinelle script is used for detecting the change: @r@ expression e,f; identifier g,y; statement S1,S2; @@ *e = &f->g <+... f->y ...+> *if (e != NULL || ...) S1 else S2 Signed-off-by: Himangi Saraogi <himangi774@gmail.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>