aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* orion: Add uboot-envtools in the default package listFlorian Fainelli2016-12-041-1/+2
| | | | | | Makes sense since most, if not all orion platforms use this bootloader. Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
* kernel: Add missing kernel config symbolFlorian Fainelli2016-12-041-0/+1
| | | | | | Add CONFIG_DW_DMAC_PCI Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
* orion: Set appropriate DEVICE_TYPE for harddisk targetFlorian Fainelli2016-12-041-0/+1
| | | | | | | The harddisk target is for NAS boxes, so set the DEVICE_TYPE accordingly so we get a sensible default package selection. Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
* orion: Switch to kernel 4.4Florian Fainelli2016-12-041-1/+1
| | | | Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
* orion: Advertise support for RTCFlorian Fainelli2016-12-041-1/+1
| | | | | | | Otherwise, we can't select RTC_SUPPORT and the corresponding kmod-rtc-* packages. Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
* orion: Make sub-targets augment FEATURES, not re-define itFlorian Fainelli2016-12-042-2/+2
| | | | Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
* kernel: add kernel package for the rs5c372a rtc moduleFlorian Fainelli2016-12-041-0/+16
| | | | | | This RTC is used on the Buffalo Terastation Pro II/Live devices. Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
* orion: Build images for Buffalo Terastation Pro II/LiveFlorian Fainelli2016-12-042-1/+12
| | | | | | | Enable support for this machine in the kernel and also produce valid image files with the correct machine id. Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
* orion: Add support for 4.4 kernelFlorian Fainelli2016-12-045-0/+1124
| | | | | | Patches and configuration apply just fine on the Marvell Orion target. Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
* orion: Fold DT2 setup files into patchFlorian Fainelli2016-12-043-536/+553
| | | | Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
* include/kernel: Switch to git download methodFlorian Fainelli2016-12-042-10/+20
| | | | | | | | | Utilize the existing git download logic from include/download.mk and migrate the kernel download over to it. This avoids repeatedly cloning kernel sources after a make target/linux/clean for instance. Signed-off-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: Felix Fietkau <nbd@nbd.name> [fix build error]
* include/download.mk: Allow specify DownloadMethod specific optionsFlorian Fainelli2016-12-041-1/+2
| | | | | | | | This is going to be used to migrate the hand rolled git clone for the kernel into using the git download method. The kernel uses custom options that we may have to pass down. Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
* kernel: Add check to of_scan_flat_dt() before accessing initial_boot_paramsFelix Fietkau2016-12-041-0/+30
| | | | | | | Fixes a bug that affects rt288x Signed-off-by: Tobias Wolf <dev-NTEO@vplace.de> Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: Fix alloc_node_mem_map with ARCH_PFN_OFFSETFelix Fietkau2016-12-041-0/+86
| | | | | | | Fixes a bug that affects rt288x Signed-off-by: Tobias Wolf <github-NTEO@vplace.de> Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ar71xx: set GPIO reset line for Ubiquiti NanoStation Loco XWFelix Fietkau2016-12-041-0/+17
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ar71xx: add support for configuring at803x PHY GPIO reset via platform dataFelix Fietkau2016-12-041-0/+68
| | | | | | | Needed to work around ethernet hang issues on Ubiquiti NanoStation Loco XW, because ar71xx is not converted to device tree yet. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: add support for the AT8032 PHYFelix Fietkau2016-12-041-0/+65
| | | | | | This PHY is used on the Ubiquiti Networks NanoStation Loco XW Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kernel: backport some upstream at803x fixesFelix Fietkau2016-12-043-0/+162
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ramips: prevent packet forwarding on mt7620 between switch ports during init ↵Felix Fietkau2016-12-042-5/+7
| | | | | | | | | | | | | | | | (FS#103) By default, forwarding between all ports is allowed on init. This is problematic in cases where some ports are supposed to be isolated from each other, most commonly LAN/WAN separation. REG_ESW_PORT_PCR(port) has a destination mask for a particular port, controlling what other ports it is allowed to send packets to. Instead of initializing all to 0xff (all ports), allow each physical port to send to the CPU port, and the CPU port to send to all other ports. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* base-files: add a hint in sysupgrade that shows what to do when the image ↵Felix Fietkau2016-12-041-0/+3
| | | | | | metadata check fails Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ramips: fix LAN port order of WeVO W2914NS v2Yong-hyu, Ban2016-12-041-1/+4
| | | | Signed-off-by: Yong-hyu, Ban <perillamint@gentoo.moe>
* ramips: fix PBR-D1 button definitionBangLang Huang2016-12-041-2/+2
| | | | | | | Due to the product specification, the button on PBR-D1 should be reset, not wps. Signed-off-by: BangLang Huang <banglang.huang@foxmail.com>
* ramips: add support for PCI based OHCI/EHCI support for F5D8235 V1Tobias Wolf2016-12-042-1/+10
| | | | | | This router uses an PCI attached NEC EHCI controller to support the single USB port. Signed-off-by: Tobias Wolf <github-NTEO@vplace.de>
* ramips: introduce CONFIG_PCI and CONFIG_OF_*PCI for rt288xTobias Wolf2016-12-044-5/+17
| | | | | | This is a prerequisite for F5D8235 V1 to use PCI based OHCI/EHCI. Signed-off-by: Tobias Wolf <github-NTEO@vplace.de>
* ramips: improve F5D8235 V1 supportTobias Wolf2016-12-044-18/+78
| | | | | | | | | | | | | | | | | | | This fixes the partition name for the firmware splitter, the cfi address and adds the mtd-eeprom address for wmac. It adds additional LEDs and make use of them in diag.sh and 01_leds. Please note that the ":blue:wired" LED is used because the ":blue:router" behaviour is unpredictable for failsafe indication. The issue with the router LED is that you have two states only. "off" is steady on and "on" blinks. Therefore the wired LED is more suitable. Furthermore it reuses the correct switch configuration definition to reflect the device ports and numbering. Additionally fixes the issue that the default configuration is not applied as no port 6 exists on this device. Signed-off-by: Tobias Wolf <github-NTEO@vplace.de>
* mvebu: fix sysupgrade for Linksys WRT3200ACMVignesh Balasubramaniam2016-12-041-1/+1
| | | | | | | | | | | | | | | sysupgrade command fails due to missing U-Boot environment-processing binaries on sysupgrade ramdisk. The missing binaries result in the following output: Switching to ramdisk... Performing system upgrade... ash: /usr/sbin/fw_printenv: not found ash: fw_setenv: not found ash: touch: not found cannot find target partition Signed-off-by: Vignesh Balasubramaniam <vigneshb.hp@gmail.com>
* mvebu: fix image validation errorMathias Kresin2016-12-041-2/+2
| | | | | | | | The name from the Device define will be used in the metadata. Due to typo/different spelling, this name might not match the one exported in /lib/mvebu.sh. Signed-off-by: Mathias Kresin <dev@kresin.me>
* lantiq: fix image validation errorsMathias Kresin2016-12-0415-15/+20
| | | | | | | The boards did not have the name set that is expected during metadata validation on sysupgrade. Signed-off-by: Mathias Kresin <dev@kresin.me>
* cyassl: update to wolfssl version 3.9.10Hauke Mehrtens2016-12-031-2/+2
| | | | | | | | | | This fixes the following security problems: CVE-2016-7440: Software AES table lookups do not properly consider cache-bank access times CVE-2016-7439: Software RSA does not properly consider cache-bank monitoring CVE-2016-7438: Software ECC does not properly consider cache-bank monitoring SWEET32 Attack Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* valgrind: update to 3.12.0Hauke Mehrtens2016-12-035-101/+8
| | | | | | | | | | Support for MIPS toolchains without FPU support was added upstream, so remove our patch. patches/310-mips-link-tool.patch was a backport form this version of valgrind src/abort.c is not referenced anywhere Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* curl: update to version 7.51.0Hauke Mehrtens2016-12-033-6/+6
| | | | | | | | | | | | | | | | | This fixes the following security problems: CVE-2016-8615: cookie injection for other servers CVE-2016-8616: case insensitive password comparison CVE-2016-8617: OOB write via unchecked multiplication CVE-2016-8618: double-free in curl_maprintf CVE-2016-8619: double-free in krb5 code CVE-2016-8620: glob parser write/read out of bounds CVE-2016-8621: curl_getdate read out of bounds CVE-2016-8622: URL unescape heap overflow via integer truncation CVE-2016-8623: Use-after-free via shared cookies CVE-2016-8624: invalid URL parsing with '#' CVE-2016-8625: IDNA 2003 makes curl use wrong host Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mbedtls: update to version 2.4.0Hauke Mehrtens2016-12-033-46/+25
| | | | | | This fixes two minor security problems. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* polarssl: update to version 1.3.18Hauke Mehrtens2016-12-032-17/+17
| | | | | | This fixes two minor security problems. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* scripts: getver.sh: append Git short hash to revisionJo-Philipp Wich2016-12-021-1/+1
| | | | | | | | | | | Change getver.sh to append a short Git commit hash to the end of the artifical revision number. This way we still have order- and comparable commit numbers but also a direct relation to the Git commit. The new output format will look like "r2400+2-882472e" for dirty trees or like "r2402-882472e" for clean ones. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* build: adjust version number handlingJo-Philipp Wich2016-12-026-18/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move the revision info to the VERSION_CODE variable and default VERSION_NUMBER to CURRENT for master branch builds. Also introduce a new menuconfig option CONFIG_VERSION_CODE which allows users to override the revision value put into VERSION_CODE and adjust the template files used by the base-files package to accomodate for the changed semantics. While we're at it, also adjust the various URLs to match the current web site. After this commit, the relevent files will look like the examples given below: # cat /etc/openwrt_version r2398+1 # cat /etc/openwrt_release DISTRIB_ID='LEDE' DISTRIB_RELEASE='CURRENT' DISTRIB_REVISION='r2398+1' DISTRIB_CODENAME='reboot' DISTRIB_TARGET='x86/64' DISTRIB_DESCRIPTION='LEDE Reboot CURRENT r2398+1' DISTRIB_TAINTS='no-all override' # cat /usr/lib/os-release NAME="LEDE" VERSION="CURRENT, Reboot" ID="lede" ID_LIKE="lede openwrt" PRETTY_NAME="LEDE Reboot CURRENT" VERSION_ID="current" HOME_URL="http://lede-project.org/" BUG_URL="http://bugs.lede-project.org/" SUPPORT_URL="http://forum.lede-project.org/" BUILD_ID="r2398+1" LEDE_BOARD="x86/64" LEDE_TAINTS="no-all override" LEDE_DEVICE_MANUFACTURER="LEDE" LEDE_DEVICE_MANUFACTURER_URL="http://lede-project.org/" LEDE_DEVICE_PRODUCT="Generic" LEDE_DEVICE_REVISION="v0" LEDE_RELEASE="LEDE Reboot CURRENT r2398+1" On a release branch, those files would look like: # cat /etc/openwrt_version r2399 # cat /etc/openwrt_release DISTRIB_ID='LEDE' DISTRIB_RELEASE='16.12-CURRENT' DISTRIB_REVISION='r2399' DISTRIB_CODENAME='test_release' DISTRIB_TARGET='x86/64' DISTRIB_DESCRIPTION='LEDE Test Release 16.12-CURRENT r2399' DISTRIB_TAINTS='no-all override' # cat /usr/lib/os-release NAME="LEDE" VERSION="16.12-CURRENT, Test Release" ID="lede" ID_LIKE="lede openwrt" PRETTY_NAME="LEDE Test Release 16.12-CURRENT" VERSION_ID="16.12-current" HOME_URL="http://lede-project.org/" BUG_URL="http://bugs.lede-project.org/" SUPPORT_URL="http://forum.lede-project.org/" BUILD_ID="r2399" LEDE_BOARD="x86/64" LEDE_TAINTS="no-all override" LEDE_DEVICE_MANUFACTURER="LEDE" LEDE_DEVICE_MANUFACTURER_URL="http://lede-project.org/" LEDE_DEVICE_PRODUCT="Generic" LEDE_DEVICE_REVISION="v0" LEDE_RELEASE="LEDE Test Release 16.12-CURRENT r2399" On a release tag, those files would look like: # cat /etc/openwrt_version r2500 # cat /etc/openwrt_release DISTRIB_ID='LEDE' DISTRIB_RELEASE='17.02.1' DISTRIB_REVISION='r2500' DISTRIB_CODENAME='mighty_unicorn' DISTRIB_TARGET='x86/64' DISTRIB_DESCRIPTION='LEDE Mighty Unicorn 17.02.1 r2500' DISTRIB_TAINTS='no-all override' # cat /usr/lib/os-release NAME="LEDE" VERSION="17.02.1, Mighty Unicorn" ID="lede" ID_LIKE="lede openwrt" PRETTY_NAME="LEDE Mighty Unicorn 17.02.1" VERSION_ID="17.02.1" HOME_URL="http://lede-project.org/" BUG_URL="http://bugs.lede-project.org/" SUPPORT_URL="http://forum.lede-project.org/" BUILD_ID="r2500" LEDE_BOARD="x86/64" LEDE_TAINTS="no-all override" LEDE_DEVICE_MANUFACTURER="LEDE" LEDE_DEVICE_MANUFACTURER_URL="http://lede-project.org/" LEDE_DEVICE_PRODUCT="Generic" LEDE_DEVICE_REVISION="v0" LEDE_RELEASE="LEDE Mighty Unicorn 17.02.1 r2500" Signed-off-by: Jo-Philipp Wich <jo@mein.io> Acked-by: Felix Fietkau <nbd@nbd.name>
* procd: update to the latest version, fixes killing jailed processesFelix Fietkau2016-12-021-3/+3
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* libubox: update to the latest versionFelix Fietkau2016-12-011-3/+3
| | | | | | | - Improves C++ compatibility - Adds static initializers for the kvlist API Signed-off-by: Felix Fietkau <nbd@nbd.name>
* ramips: fix sdhci support on mt7621John Crispin2016-12-012-24/+10
| | | | | | the IRQ level was wrong. refresh the patch while at it. Signed-off-by: John Crispin <john@phrozen.org>
* tools: cmake: fix compatibility with LibreSSL as wellJo-Philipp Wich2016-12-011-0/+22
| | | | | | | | Sadly, LibreSSL claims to be OpenSSL v2.0.0 while not providing the new interfaces introduced with OpenSSL v1.1.x, so extend the pre-OpenSSL 1.1.x compat checks to consider LibreSSL as well. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* ramips: RB750Gr3: Add pwr LED and buzzer to DTSAndrew Yong2016-12-012-2/+13
| | | | | | | | | use pwr LED in diag.sh Expose unused pinmux pins as GPIOs export power LED and buzzer pins Use rb750gr3:blue:pwr LED in diag.sh for boot status instead of rb750gr3:green:usr Signed-off-by: Andrew Yong <me@ndoo.sg>
* ipq806x: add thermal sensor driverdissent12016-12-0116-13/+2293
| | | | | | | | Allows to check cpu temperature. Huge thanks to @hnyman for valuable assistance! Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
* ipq806x: increase coherent dma pool sizePavel Kubelun2016-12-011-0/+52
| | | | | | | Cherry-picked and rebased from https://source.codeaurora.org/quic/qsdk/system/openwrt/tree/?h=korg/linux-3.4.y/release/arugula_bb_cs Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
* ipq806x: add enable reg and masks for PRNGPavel Kubelun2016-12-011-0/+25
| | | | | | Cherry-picked from https://source.codeaurora.org/quic/qsdk/system/openwrt/tree/?h=korg/linux-3.4.y/release/arugula_bb_cs Signed-off-by: Pavel Kubelun <be.dissent@gmail.com>
* net: ar8327: modify some configuration of switchPavel Kubelun2016-12-012-4/+13
| | | | | | | | | | | | | | | | Imported from https://source.codeaurora.org/quic/qsdk/system/openwrt/commit/?h=korg/linux-3.4.y/release/arugula_bb_cs&id=2be4f8a8b205ae1a37db44839864451ebe893e6e Signed-off-by: Pavel Kubelun <be.dissent@gmail.com> Enable flow control of LAN and WAN ports to get better performance. Setup pvid as 0 for all ports during initialisation to avoid confusion during system or switch INIT. Disable PORT MAC before config MAC to avoid it work abnormal. This change is for IR-054144, IR-057315. Change-Id: I345f3dffa59ad3f97150e09692723da12a7b1067 Signed-off-by: Zou Shunxiang <shunxian@codeaurora.org> Signed-off-by: xiaofeis <xiaofeis@codeaurora.org>
* net: ar8216: address security vulnerabilities in swconfig & ar8216Pavel Kubelun2016-12-013-13/+32
| | | | | | | | | | | | | | | | | | | | | | | Imported from https://chromium.googlesource.com/chromiumos/third_party/kernel/+/e1aaf7ec008a97311867f0a7d0418e4693fecfd4%5E%21/#F0 Signed-off-by: Pavel Kubelun <be.dissent@gmail.com> CHROMIUM: net: ar8216: address security vulnerabilities in swconfig & ar8216 This patch does the following changes: *address the security vulnerabilities in both swconfig framework and in ar8216 driver (many bound check additions, and turned swconfig structure signed element into unsigned when applicable) *address a couple of whitespaces and indendation issues BUG=chrome-os-partner:33096 TEST=none Change-Id: I94ea78fcce8c1932cc584d1508c6e3b5dfb93ce9 Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org> Reviewed-on: https://chromium-review.googlesource.com/236490 Reviewed-by: Toshi Kikuchi <toshik@chromium.org> Commit-Queue: Toshi Kikuchi <toshik@chromium.org> Tested-by: Toshi Kikuchi <toshik@chromium.org>
* net: ar8216: prevent device duplication in ar8xxx_dev_listPavel Kubelun2016-12-011-2/+2
| | | | | | | | | | | | | | | | | | | | | | Import from https://chromium.googlesource.com/chromiumos/third_party/kernel/+/fd7b89dd464a4afffa04ff2e17c771dfe95668cf%5E%21/#F0 Signed-off-by: Pavel Kubelun <be.dissent@gmail.com> CHROMIUM: drivers: ar8216: prevent device duplication in ar8xxx_dev_list If probe is called twice, once for PHY0 and a second time for PHY4, the same switch device will be added twice to ar8xxx_dev_list, while supposedly this list should have one element per hardware switch present in the system. While no negative impact have been observed, it does happen if a platform instanciates these two PHYs from device-tree, as an example. Change-Id: Iddcbdf7d4adacb0af01975b73f8e56b4582e894e Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org> Reviewed-on: https://chromium-review.googlesource.com/234790 Reviewed-by: Matthias Kaehlcke <mka@chromium.org> Reviewed-by: Toshi Kikuchi <toshik@chromium.org> Tested-by: Toshi Kikuchi <toshik@chromium.org>
* net: ar8216: hold ar8xxx_dev_list_lock during use_count--Pavel Kubelun2016-12-011-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | Import from https://chromium.googlesource.com/chromiumos/third_party/kernel/+/c3fd96a7b87da23979d8569ce45447f8419ca303%5E%21/#F0 Signed-off-by: Pavel Kubelun <be.dissent@gmail.com> CHROMIUM: drivers: ar8216: hold ar8xxx_dev_list_lock during use_count-- It is possible for the remove() callback to run twice in parallel, which could result into --use_count returning only 1 in both cases and the rest of the unregistration path to never be reached. This case has never been observed in practice, but we will fix preventively to make the code more robust. BUG=chrome-os-partner:33096 TEST=none Change-Id: If09abe27fdb2037f514f8674418bafaab3cbdef6 Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org> Reviewed-on: https://chromium-review.googlesource.com/232870 Reviewed-by: Matthias Kaehlcke <mka@chromium.org> Reviewed-by: Toshi Kikuchi <toshik@chromium.org> Tested-by: Toshi Kikuchi <toshik@chromium.org>
* net: ar8327: replace sprintf() by scnprintf()Pavel Kubelun2016-12-011-2/+1
| | | | | | | | | | | | | | | | | Import from https://chromium.googlesource.com/chromiumos/third_party/kernel/+/fd0c41c7b9327ce003f44df38ce42556fb177b17%5E%21/#F0 Signed-off-by: Pavel Kubelun <be.dissent@gmail.com> CHROMIUM: drivers: ar8216: replace sprintf() by scnprintf() BUG=chrome-os-partner:33096 TEST=none Change-Id: Ib82035c9f2769a86d3e90f9573a09e5700ff5676 Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org> Reviewed-on: https://chromium-review.googlesource.com/232829 Reviewed-by: Matthias Kaehlcke <mka@chromium.org> Tested-by: Toshi Kikuchi <toshik@chromium.org> Reviewed-by: Toshi Kikuchi <toshik@chromium.org>
* net: ar8327: remove unnecessary spinlocksPavel Kubelun2016-12-011-4/+0
| | | | | | | | | | | | | | | | | Import from https://chromium.googlesource.com/chromiumos/third_party/kernel/+/541c15f8dd02ddce07e0a462a0c2572d8398bccc%5E%21/#F0 Signed-off-by: Pavel Kubelun <be.dissent@gmail.com> CHROMIUM: drivers: ar8216: remove unnecessary spinlocks BUG=chrome-os-partner:33096 TEST=none Change-Id: Ia1b51258504501863fd3298717cc923a1baf34ca Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org> Reviewed-on: https://chromium-review.googlesource.com/232828 Reviewed-by: Matthias Kaehlcke <mka@chromium.org> Reviewed-by: Toshi Kikuchi <toshik@chromium.org> Tested-by: Toshi Kikuchi <toshik@chromium.org>
* net: ar8216: sync mib_work cancellationPavel Kubelun2016-12-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | Import from https://chromium.googlesource.com/chromiumos/third_party/kernel/+/c05af20272059e149e2da2e1fa1fbd90c03ec979 Signed-off-by: Pavel Kubelun <be.dissent@gmail.com> CHROMIUM: drivers: ar8216: sync mib_work cancellation ar8xxx_mib_stop() is called from ar8xxx_phy_remove(), so we want to make sure the work doesn't run after priv is freed / the device ceases to exist. BUG=chrome-os-partner:33096 TEST=none Change-Id: Iafb44ce93a87433adc4576e5fea5fda58d1f43a9 Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org> Reviewed-on: https://chromium-review.googlesource.com/232827 Reviewed-by: Matthias Kaehlcke <mka@chromium.org> Reviewed-by: Toshi Kikuchi <toshik@chromium.org> Reviewed-by: Grant Grundler <grundler@chromium.org> Tested-by: Toshi Kikuchi <toshik@chromium.org>