ce23139c6c2ee92d5eace20f6f10d716cf295a5b |
|
29-Sep-2014 |
Alexander Usyskin <alexander.usyskin@intel.com> |
mei: fix kernel-doc warnings Add missed parameters descriptions and return values descriptions Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
a8605ea2c20c2b97a54d7746c16ebef5ba29632a |
|
29-Sep-2014 |
Alexander Usyskin <alexander.usyskin@intel.com> |
mei: fix KDoc documentation formatting Fix Kdoc documentation formatting warnings genertaed by ./scripts/kernel-doc Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
d08b8fc0dbdbe9bf7edeb46f7a856f993630664f |
|
29-Sep-2014 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: remove the reference to pdev from mei_device For purpose of adding testing HW we would like to get rid of pci dependency in generic mei code. Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
2bf94cabb199f73402a5ddefa4a7bf1a82aaeda5 |
|
29-Sep-2014 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: get rid of most of the pci dependencies in mei For purpose of adding testing HW we would like to get rid of pci dependency in generic mei code This patch provides only straight forward changes FW status and prob quirks need to be handled separately Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
7efceb559579f11a05160ff92c12fc4c59a531d8 |
|
16-Sep-2014 |
Geert Uytterhoeven <geert+renesas@glider.be> |
mei: fix comments Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Acked-by: "Winkler, Tomas" <tomas.winkler@intel.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
|
d5d83f8abea13d0b50ee762276c6c900d1946264 |
|
17-Jul-2014 |
Alexander Usyskin <alexander.usyskin@intel.com> |
mei: don't schedule suspend in pm idle Calling pm_schedule_suspend from the runtime pm idle callback may reschedule existing timer, thus in case of frequent runtime rpm idle call the suspend maybe starved. Instead we call pm_runtime_autosuspend which is checking if the timer is already charged. An example is monitoring device pci config space. Pci config sysfs handlers calls pci_config_pm_runtime_put/get helpers which in turns calls to device idle callback Cc: stable@vger.kernel.org # 3.15+ Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
d238a0ec8b850e81185f1b176c1f436684ce476b |
|
23-Jun-2014 |
Alexander Usyskin <alexander.usyskin@intel.com> |
mei: add WPT second mei interface Add WPT second mei interface. Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
f3d8e8788b4efbd13b6e888e85af51385d87d306 |
|
23-Jun-2014 |
Alexander Usyskin <alexander.usyskin@intel.com> |
mei: move from misc to char device We need to support more then one mei interface hence the simple misc devices is not longer an option In order not break the user space a device with pci function 0 need to be linked to /dev/mei Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
c919951d940f28b3b9eb208e289faa27f4bc4678 |
|
13-May-2014 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: me: move probe quirk to cfg structure Move quirk FW type detector to cfg structure Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
8d929d4862fdfc4a524fd4c799b8dfa3b187fe8c |
|
13-May-2014 |
Alexander Usyskin <alexander.usyskin@intel.com> |
mei: add per device configuration Add mei_cfg structure that holds per device configuration data and hooks, as the first step we add firmware status register offsets Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
e13fa90ce42d8e7ee501426ea414c8ae4a5366ef |
|
18-Mar-2014 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: me: use runtime PG pm domain for non wakeable devices For non wakeable devices we can't use pci runtime framework as we are not able to wakeup from D3 states. Instead we create new pg runtime domain that only drives ME power gating protocol to reduce the power consumption. Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
180ea05bcedbd67bb22a426bb8d831075727e34a |
|
18-Mar-2014 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: me: add runtime pm framework Add runtime pm framework for ME devices. The runtime pm handlers are used to run me power gating isolation protocol Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
5e6533a6f52f1a8283b2f818f5828be99a417dd6 |
|
25-Mar-2014 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: me: do not load the driver if the FW doesn't support MEI interface NM and SPS FW types that may run on ME device on server platforms do not have valid MEI/HECI interface and driver should not be bound to it as this might lead to system hung. In practice not all BIOSes effectively hide such devices from the OS and in some cases it is not possible. We determine FW type by examining Host FW status registers in order to unbind the driver. In this patch we are adding check for ME on Cougar Point, Lynx Point Devices Cc: stable <stable@vger.kernel.org> # 3.10+ Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Tested-by: Nikola Ciprich <nikola.ciprich@linuxbox.cz> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
a05f8f86e49749f239c49257db1d3ac6f474f0dd |
|
16-Mar-2014 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: don't use deprecated DEFINE_PCI_DEVICE_TABLE macro Using struct pci_device_id is preferred over deprecated DEFINE_PCI_DEVICE_TABLE macro Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
80260f2360d34912cd8cb18aca6eda20e9db2ef0 |
|
11-Mar-2014 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: drop pr_fmt macros we are using dev_ logging facility so we don't need pr_fmt macros Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Reviewed-by: Alexander Usyskin <alexander.usyskin@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
6e4cd27a35622cddbe6c0d6fbeb9da8c232029d1 |
|
11-Mar-2014 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: make me hw headers private to me hw. Remove includes of me-hw.h and me-hw-regs.h headers from the mei generic code. The mei layer should not depend on hw specific headers Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
16833257a1ee9f7b2c997f0a26f91b1d9055642c |
|
18-Feb-2014 |
Alexander Usyskin <alexander.usyskin@intel.com> |
mei: me: put pm callbacks under PM_SLEEP ifdef This will eliminate compilation warning: drivers/misc/mei/pci-me.c:303:12: warning: mei_me_pci_suspend defined but not used [-Wunused-function] static int mei_me_pci_suspend(struct device *device) drivers/misc/mei/pci-me.c:323:12: warning: mei_me_pci_resume defined but not used [-Wunused-function] static int mei_me_pci_resume(struct device *device) Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
e2527ec3690bc820e5b4288577f79945f4a22d77 |
|
21-Jan-2014 |
Paul Gortmaker <paul.gortmaker@windriver.com> |
drivers/misc: delete non-required instances of include <linux/init.h> None of these files are actually using any __init type directives and hence don't need to include <linux/init.h>. Most are just a left over from __devinit and __cpuinit removal, or simply due to code getting copied from one driver to the next. Cc: Arnd Bergmann <arnd@arndb.de> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
33ec0826314734fc4f3c9bf37d12e98063339b31 |
|
11-Jan-2014 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: revamp mei reset state machine 1. MEI_DEV_RESETTING device state spans only hardware reset flow while starting dev state is saved into a local variable for further reference, this let us to reduce big if statements in case we are trying to avoid nested resets 2. During initializations if the reset ended in MEI_DEV_DISABLED device state we bail out with -ENODEV 3. Remove redundant interrupts_enabled parameter as this can be deduced from the starting dev_state 4. mei_reset propagates error code to the caller 5. Add mei_restart function to wrap the pci resume Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
3ecfb168a51ddf0226abe245065516bc2ebfdef5 |
|
17-Dec-2013 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: me: set dma mask using DMA mapping API ME device is 64bit DMA capable We assume both coherent and consistent memory to match Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
76a9635979e543f04a5885198e68ff28e3311b67 |
|
05-Dec-2013 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: add 9 series PCH mei device ids And Lynx Point H Refresh and Wildcat Point LP device ids. Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Cc: stable <stable@vger.kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
dc844b0d99b8533d6174e5b9a369f7c2cdacfe66 |
|
11-Nov-2013 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: remove flash_work_queue Cancel each work properly and remove flash_work_queue. Quoting documentation: In most situations flushing the entire workqueue is overkill; you merely need to know that a particular work item isn't queued and isn't running. In such cases you should use cancel_delayed_work_sync() or cancel_work_sync() instead. Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
c4e87b525936da188add18d53a0fe681c3c977ce |
|
21-Oct-2013 |
Alexander Usyskin <alexander.usyskin@intel.com> |
mei: replace stray pr_debug with dev_dbg Driver better use dev_dbg, not pr_debug. Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
ed6f7ac1dcae0b95ef2946067beb4ffaba415119 |
|
17-Oct-2013 |
Paul Bolle <pebolle@tiscali.nl> |
mei: me: downgrade two errors to debug level The mei_me driver prints "suspend" at error level at each suspend. It also prints "stop" at error level at driver unload. Downgrade these uninteresting messages to debug level. Cc: Adam Jackson <ajax@redhat.com> Cc: Joe Perches <joe@perches.com> Signed-off-by: Paul Bolle <pebolle@tiscali.nl> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
838b3a6d62413b336f3dde15ecff161070358957 |
|
15-Oct-2013 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: me: add Lynx Point Wellsburg work station device id add missing device id for LPT based work station Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
b9be2c60fce7a93723403488a2f5d508ff7d3d2f |
|
23-Sep-2013 |
Jingoo Han <jg1.han@samsung.com> |
misc: mei: remove unnecessary pci_set_drvdata() The driver core clears the driver data to NULL after device_release or on probe failure. Thus, it is not needed to manually clear the device driver data to NULL. Signed-off-by: Jingoo Han <jg1.han@samsung.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
42f132febff3b7b42c6c9dbfc151f29233be3132 |
|
05-Jun-2013 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: me: clear interrupts on the resume path We need to clear pending interrupts on the resume path. This brings the device into defined state before starting the reset flow This should solve suspend/resume issues: mei_me : wait hw ready failed. status = 0x0 mei_me : version message write failed Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
c6148f8f8ceb18fd6ae3b637c56e8327b73873eb |
|
29-May-2013 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: me: remove artificial singleton requirement There is only one device on the platform drop mei_pdev and the mutex Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
30e53bb8ffb1f3270ad89196d9799057008d9537 |
|
05-Apr-2013 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: add debugfs hooks debugfs exposes device state and list of me clients and their properties Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
393b148f9d0e70cfcb0096985bb0f0742802929e |
|
04-Apr-2013 |
Masanari Iida <standby24x7@gmail.com> |
mei: Fix comments in drivers/misc/mei Correct typos and fix stray comments. Signed-off-by: Masanari Iida <standby24x7@gmail.com> Acked-by: Winkler, Tomas <tomas.winkler@intel.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
|
cf3baefba04073237decb1b8a8c114b0b45bfc80 |
|
27-Mar-2013 |
Samuel Ortiz <sameo@linux.intel.com> |
mei: bus: Call bus routines from the core code Register the MEI bus type against the kernel core bus APIs and call the bus Rx handler from interrupt.c Signed-off-by: Samuel Ortiz <sameo@linux.intel.com> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
b68301e9acd30f7fd63533a145f5e003e25ac9bd |
|
27-Mar-2013 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: prefix me hardware specific functions with mei_me_ Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
c4d589be4405d475f7b529134debdf37f1ada957 |
|
27-Mar-2013 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: rename function mei_hw_init to mei_start The hw initialization is now done as part of hw specific code this makes the name mei_hw_init little misleading. We rename it to mei_start in spirit of already existing functions mei_stop and mei_reset. Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
2e64712450e30a445b5650d1205e1aaca811f084 |
|
27-Mar-2013 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: unregister watchdog from mei_stop function we need to unregister watchdog device both in suspend and remove as the registration is recreated on reset Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
7cb035d9e619a8d20f5d3b9791f8cb5160d19e70 |
|
10-Mar-2013 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: add mei_stop function to stop mei device mei_stop calls mei_reset with disabling the interrupts. It will have the same effect as the open code it replaces in the mei_remove. The reset sequence on remove is required for the Lynx Point LP devices to clean the reset state. mei_stop is called from mei_pci_suspend and mei_remove functions Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
06ecd6459800962155c485e27d9dd30268b579bf |
|
06-Feb-2013 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: move interrupt handlers to be me hw specific interrupt handler are platform specifics so we move them to hw-mei.c. For sake of that we need to export write, read, and complete handlers from the interrupt.c Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
52c34561415b420301f1580413a9d1891d079494 |
|
06-Feb-2013 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: initial extract of ME hw specifics from mei_device This is initial step of move the ME hw specifics out of mei_device structure into mei_me_hw Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
2703d4b2e673cc240ad06d79d131fd1d0f77d65d |
|
06-Feb-2013 |
Tomas Winkler <tomas.winkler@intel.com> |
mei: sperate interface and pci code into two files leave misc file operations in the main and move PCI related code into pci-me Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|