- 07 Sep, 2020 2 commits
-
-
Michael Straube authored
Clean up unnecessary whitespace in wpa_set_encryption() by removing extra spaces and replacing tabs with spaces. Clears a checkpatch error. ERROR: space prohibited before that close parenthesis ')' Signed-off-by: Michael Straube <straube.linux@gmail.com> Link: https://lore.kernel.org/r/20200905115358.10278-1-straube.linux@gmail.comSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
Ivan Safonov authored
staging: r8188eu: replace enum rtw_ieee80211_spectrum_mgmt_actioncode with ieee80211_spectrum_mgmt_actioncode Enum rtw_ieee80211_spectrum_mgmt_actioncode is a duplication of ieee80211_spectrum_mgmt_actioncode from include/linux/ieee80211.h. Signed-off-by: Ivan Safonov <insafonov@gmail.com> Link: https://lore.kernel.org/r/20200906133236.556427-1-insafonov@gmail.comSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 06 Sep, 2020 2 commits
-
-
Greg Kroah-Hartman authored
Merge tag 'iio-for-5.10a-take2' of https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-next Jonathan writes: First set of new device support, features and cleanup for IIO in 5.10 cycle, take 2 A few changes to how I write this cover letter. * Started to use manufacturer prefixes to group changes better. * Stop list minor formatting etc changes. * Whilst I appreciate those changes, we don't need to call them out here. New device support: * adi,adxrs290 - New driver for this gyroscope with dt bindings. One fix follows. * ams,as73211 - New driver for this colour sensor with dt bindings. Also includes docs for XYZ modifiers as used for the CIE colour space. Sysfs docs. * atlas,atlas-ezo-sensor - Support O_2 sensor, includes new modifier for concentration. - Support humidity sensor. * ti,hdc2010 - New driver support hdc2010 and hdc2080 humidity sensors. Includes dt bindings. Cleanup, minor fixes and features * core - Make the trigger related stub functions static inline, avoiding some build warnings. - buffer-dmaengine. Allow adjusting bytes_used with residue info. * dev_error_probe to replace open coded equivalent in many drivers. * docs and comment fixes - Fix some typos, doubled words, capitalisation and punctuation. * dt binding conversions to yaml - lltc,ltc2497 - lltc,ltc2632 - maxim,max11100 - maxim,max1118 - maxim,max9611 - microchip,mcp3201 - microchip,mcp342x (add to trivial devices) - ti,adc0832 - ti,adc108s102 - ti,adc128s052 - ti,adc161s626 - ti,ads8344 - ti,tlc4541 (includes adding an accidentally dropped original binding doc) * adi,adi-axi-adc - Use kobj_to_dev instead of open coding. * adi,ad5686 - Constify iio_chan_spec * adi,ad8366 - Add HMC1119 to kconfig help text as the driver supports it. * adi,ad9523 - Use devm for reset of probe and drop remove. * adi,adxl372 - Tidy up alignment - Add OF table - Add peak mode support with some docs. * bosch,bma220 (general tidy up) - Fix some return codes. - Use read_avail callback rather than open coding attrs. - Use dev_get_drvdata rather than dance via to_spi_device() - Mark PM functions as __maybe_unused rather than #ifdef fun. - Drop ACPI_PTR protections and ifdefs. - Tidy up header ordering. - BIT and GENMASK * broadcom,bcm_iproc - Drop of_match_ptr protection and switch to mod_devicetable.h Part of general move to get this anti-pattern out of IIO. * melexis,mlx90614 - Simplify some calculations. - Add some kernel_doc - Use regmap poll loop rather than open coding. - Add extended calibration option. * sensortec,sx9310, wide ranging set of fixes and cleanups. - Document dt-binding. - Rename some macros to align better with spec sheet - Fix some issues with irq handling. - Drop of_match_ptr and ACPI_PTR macros to avoid unused warnings etc. - Switch to probe_new - Fix memory alignment for iio_push_to_buffers_with_timestamp() - Use long for bitmaps to allow use of for_each_bit_set() - Use regmap_read_poll instead of opencoding. - Simplify error paths - Enabled regulators at probe. - Use trigger flags from firmware rather than forcing them in the driver. * ti,adc081c - Drop ACPI IDs that are not likely to be official ones and we don't believe anyone is using. * ti,adc108s102 - Drop CONFIG_OF and of_match_ptr protections. * ti,adc128s052 - Drop of_match_ptr protection and include mod_devicetable.h * ti,dac5571 - Support powerdown for mutlichannel usecases. * xpowers,axp20x - Convert from OF to generic fw / device properties. Unlikely anyone will use this with anything other than devicetree, but this is part of a general move across IIO. * tag 'iio-for-5.10a-take2' of https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio: (96 commits) drivers/iio/humidity/hdc2010.c:305:2-3: Unneeded semicolon iio: accel: bma220: Remove unneeded blank lines iio: accel: bma220: Use BIT() and GENMASK() macros iio: accel: bma220: Group IIO headers together iio: accel: bma220: Drop ACPI_PTR() and accompanying ifdeffery iio: accel: bma220: Mark PM functions as __maybe_unused iio: accel: bma220: Use dev_get_drvdata() directly iio: accel: bma220: Convert to use ->read_avail() iio: accel: bma220: Fix returned codes from bma220_init(), bma220_deinit() dt-bindings: iio: adc: microchip,mcp3201 yaml conversion. iio: buffer-dmaengine: adjust `bytes_used` with residue info dt-bindings: iio: adc: ti,tlc4541 binding conversion dt-bindings: iio: adc: tlc4541 - recover accidentally dropped binding doc dt-bindings: iio: adc: ti,ads8344 yaml conversion dt-bindings: iio: adc: ti,adc128s052 yaml conversion. dt-bindings: iio: adc: ti,adc0832 yaml conversion. dt-bindings: iio: adc: ti,adc161s626 yaml conversion. dt-bindings: iio: adc: lltc,ltc2497 yaml conversion. dt-bindings: iio: adc: ti,adc108s102 yaml conversion dt-bindings: trivial-devices: Add mcp342x ADCs and drop separate binding doc. ...
-
kernel test robot authored
Remove unneeded semicolon. Generated by: scripts/coccinelle/misc/semicolon.cocci Fixes: 0115a63c ("iio: humidity: Add TI HDC20x0 support") CC: Eugene Zaikonnikov <ez@norphonic.com> Signed-off-by: kernel test robot <lkp@intel.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-
- 05 Sep, 2020 1 commit
-
-
Marek Szyprowski authored
The Documentation/DMA-API-HOWTO.txt states that the dma_map_sg() function returns the number of the created entries in the DMA address space. However the subsequent calls to the dma_sync_sg_for_{device,cpu}() and dma_unmap_sg must be called with the original number of the entries passed to the dma_map_sg(). struct sg_table is a common structure used for describing a non-contiguous memory buffer, used commonly in the DRM and graphics subsystems. It consists of a scatterlist with memory pages and DMA addresses (sgl entry), as well as the number of scatterlist entries: CPU pages (orig_nents entry) and DMA mapped pages (nents entry). It turned out that it was a common mistake to misuse nents and orig_nents entries, calling DMA-mapping functions with a wrong number of entries or ignoring the number of mapped entries returned by the dma_map_sg() function. To avoid such issues, lets use a common dma-mapping wrappers operating directly on the struct sg_table objects and use scatterlist page iterators where possible. This, almost always, hides references to the nents and orig_nents entries, making the code robust, easier to follow and copy/paste safe. Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> Reviewed-by: Dmitry Osipenko <digetx@gmail.com> Link: https://lore.kernel.org/r/20200904131711.12950-27-m.szyprowski@samsung.comSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 04 Sep, 2020 2 commits
-
-
Bryan Brattlof authored
scripts/checkpatch.pl is warning about some lines exceeding 100 charecters. This will cleanup the warnings. Signed-off-by: Bryan Brattlof <hello@bryanbrattlof.com> Link: https://lore.kernel.org/r/87y2lsrnl8.fsf@bryanbrattlof.comSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
Ross Schmidt authored
Fixed a coding style issue by adding a blank line after declarations in sdio_intf.c to fix a checkpatch warning. Signed-off-by: Ross Schmidt <ross.schm.dev@gmail.com> Link: https://lore.kernel.org/r/20200902192044.19143-1-ross.schm.dev@gmail.comSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 03 Sep, 2020 33 commits
-
-
Andy Shevchenko authored
There are few blank lines that split structure definitions with their users. Remove them to increase readability. While here, update copyright year. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20200831090813.78841-8-andriy.shevchenko@linux.intel.comSigned-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-
Andy Shevchenko authored
Code is better to read when numbers of bit are explicitly used. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20200831090813.78841-7-andriy.shevchenko@linux.intel.comSigned-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-
Andy Shevchenko authored
Group IIO headers together and follow the common pattern of header inclusion, i.e. more generic first. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20200831090813.78841-6-andriy.shevchenko@linux.intel.comSigned-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-
Andy Shevchenko authored
The driver is quite likely used only on ACPI based platforms and rarely build with CONFIG_ACPI=n. Even though, the few dozens of bytes is better than ugly ifdeffery and inclusion of heavy header. As a result, replace acpi.h with mod_devicetable.h. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20200831090813.78841-5-andriy.shevchenko@linux.intel.comSigned-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-
Andy Shevchenko authored
Instead of using ugly ifdeffery, mark PM functions as __maybe_unused. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20200831090813.78841-4-andriy.shevchenko@linux.intel.comSigned-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-
Andy Shevchenko authored
Instead of using to_spi_dev() + spi_get_drvdata(), use dev_get_drvdata() to make code simpler. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20200831090813.78841-3-andriy.shevchenko@linux.intel.comSigned-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-
Andy Shevchenko authored
Convert to use ->read_avail() instead of open-coded attribute handling. While here, fix the typo in array definition and append comma in case of the future extension. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20200831090813.78841-2-andriy.shevchenko@linux.intel.comSigned-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-
Andy Shevchenko authored
Potentially bma220_init() and bma220_deinit() may return positive codes. Fix the logic to return proper error codes instead. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20200831090813.78841-1-andriy.shevchenko@linux.intel.comSigned-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-
Jonathan Cameron authored
Drops the deprecated compatibles without the vendor name. Whilst the driver continues to support these for old dt blobs, any dt bindings that are actuallly verified against this document should be fixed to add the vendor name. Added the #io-channel-cells property to allow for consumers. Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Reviewed-by: Rob Herring <robh@kernel.org> Cc: Oskar Andero <oskar.andero@gmail.com> Link: https://lore.kernel.org/r/20200809111753.156236-2-jic23@kernel.org
-
Alexandru Ardelean authored
A transfer may fall shorter than the bytes in the block. This information is available in the residue from the DMA engine, so we can compute actual `bytes_used` with that by subtracting the residue. Signed-off-by: Alexandru Ardelean <alexandru.ardelean@analog.com> Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Link: https://lore.kernel.org/r/20200826052011.13348-1-lars@metafoo.deSigned-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-
Jonathan Cameron authored
Simple binding so easy to convert. Dropped the stated value of maximum spi bus frequency as it does not seem to correspond to the datasheet. The value of 200kHz is the max sampling frequency of the ADC, not the clock frequency of the SPI bus. Added #io-channel-cells to allow use as a provider of channels to other devices via the consumer binding. Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Reviewed-by: Rob Herring <robh@kernel.org> Reviewed-By: Phil Reid <preid@electromag.com.au> Cc: Phil Reid <preid@electromag.com.au> Link: https://lore.kernel.org/r/20200809111753.156236-14-jic23@kernel.org
-
Phil Reid authored
JC: Seems that I messed up applying the original driver patches, and this file never actually made it into the tree. I have picked up original Ack and Sign-off so as to record the history. Signed-off-by: Phil Reid <preid@electromag.com.au> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Acked-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20200809111753.156236-13-jic23@kernel.org
-
Jonathan Cameron authored
Simple binding so easy to convert. Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Reviewed-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20200809111753.156236-12-jic23@kernel.org
-
Jonathan Cameron authored
Simple binding. Only addition to txt version is as a provider of channels to other devices using the consumer binding. Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Reviewed-by: Rob Herring <robh@kernel.org> Cc: Angelo Compagnucci <angelo.compagnucci@gmail.com> Link: https://lore.kernel.org/r/20200809111753.156236-10-jic23@kernel.org
-
Jonathan Cameron authored
Simple binding conversion of this SPI ADC binding, with reference voltage. Added the optional property #io-channel-cells to allow for consumers of channels if that makes sense for a given board. Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Reviewed-by: Rob Herring <robh@kernel.org> Cc: Akinobu Mita <akinobu.mita@gmail.com> Link: https://lore.kernel.org/r/20200809111753.156236-7-jic23@kernel.org
-
Jonathan Cameron authored
Simple conversion for this ADC driver. Note that I haven't put limits on the spi-max-sampling-frequency because the adc161s626 doesn't state one clearly defined value. Added the #io-channel-cells property to allow for consumers. Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Reviewed-by: Rob Herring <robh@kernel.org> Acked-by: Matt Ranostay <matt.ranostay@konsulko.com> Cc: Matt Ranostay <matt.ranostay@konsulko.com> Link: https://lore.kernel.org/r/20200809111753.156236-6-jic23@kernel.org
-
Jonathan Cameron authored
Very simple binding for this i2c device with a reference supply. Added the #io-channel-cells property to allow for consumers. Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Reviewed-by: Rob Herring <robh@kernel.org> Cc: Michael Hennerich <michael.hennerich@analog.com> Link: https://lore.kernel.org/r/20200809111753.156236-5-jic23@kernel.org
-
Jonathan Cameron authored
Very simple conversion of spi device with reference supply. Added the #io-channel-cells property to allow for consumers. Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Reviewed-by: Rob Herring <robh@kernel.org> Cc: Jan Kiszka <jan.kiszka@siemens.com> Link: https://lore.kernel.org/r/20200809111753.156236-4-jic23@kernel.org
-
Jonathan Cameron authored
These i2c devices have simple bindings, well described by trivial-device.yaml so rather than convert the binding doc to yaml, let us just add them to trivial devices and drop the old binding document. Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Reviewed-by: Rob Herring <robh@kernel.org> Cc: Angelo Compagnucci <angelo.compagnucci@gmail.com> Link: https://lore.kernel.org/r/20200809111753.156236-3-jic23@kernel.org
-
Alexandru Tachici authored
Document use of additional trigger supplied by driver. Signed-off-by: Alexandru Tachici <alexandru.tachici@analog.com> Link: https://lore.kernel.org/r/20200810093257.65929-3-alexandru.tachici@analog.comSigned-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-
Stefan Popa authored
By default, if all three channels (x, y, z) are enabled, sample sets of concurrent 3-axis data is stored in the FIFO. This patch adds the option to configure the FIFO to store peak acceleration (x, y and z) of every over-threshold event. When pushing to iio buffer we push only enabled axis data. Currently the driver configures adxl372 to work in loop mode. The inactivity and activity timings decide how fast the chip will loop through the awake and waiting states and the thresholds on x,y,z axis decide when activity or inactivity will be detected. This patch adds standard events sysfs entries for the inactivity and activity timings: thresh_falling_period/thresh_rising_period and for the in_accel_x_thresh_falling/rising_value. Signed-off-by: Stefan Popa <stefan.popa@analog.com> Signed-off-by: Alexandru Tachici <alexandru.tachici@analog.com> Link: https://lore.kernel.org/r/20200810093257.65929-2-alexandru.tachici@analog.comSigned-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-
Crt Mori authored
There is some inconsistency and whitespace cleanup performed in this patch. It was done on top of my other patches, but I can rebase to head of the togreg branch if it would go in sooner. Signed-off-by: Crt Mori <cmo@melexis.com> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Link: https://lore.kernel.org/r/20200818213737.140613-6-cmo@melexis.comSigned-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-
Crt Mori authored
For some time the market wants medical grade accuracy in medical range, while still retaining the declared accuracy outside of the medical range within the same sensor. That is why we created extended calibration which is automatically switched to when object temperature is too high. This patch also introduces the object_ambient_temperature variable which is needed for more accurate calculation of the object infra-red footprint as sensor's ambient temperature might be totally different than what the ambient temperature is at object and that is why we can have some more errors which can be eliminated. Currently this temperature is fixed at 25, but the interface to adjust it by user (with external sensor or just IR measurement of the other object which acts as ambient), will be introduced in another commit. Signed-off-by: Crt Mori <cmo@melexis.com> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Link: https://lore.kernel.org/r/20200818213737.140613-5-cmo@melexis.comSigned-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-
Crt Mori authored
Reduce number of lines and improve readability to convert polling while loops to regmap_read_poll_timeout. Signed-off-by: Crt Mori <cmo@melexis.com> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Link: https://lore.kernel.org/r/20200818213737.140613-4-cmo@melexis.comSigned-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-
Crt Mori authored
Document internal/private struct for mlx90632 device. Signed-off-by: Crt Mori <cmo@melexis.com> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Link: https://lore.kernel.org/r/20200818213737.140613-3-cmo@melexis.comSigned-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-
Crt Mori authored
TAdut4 was calculated each iteration although it did not change. In light of near future additions of the Extended range DSP calculations, this function refactoring will help reduce unrelated changes in that series as well as reduce the number of new functions needed. Signed-off-by: Crt Mori <cmo@melexis.com> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Link: https://lore.kernel.org/r/20200818213737.140613-2-cmo@melexis.comSigned-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-
Nishant Malpani authored
Insert a missing mutex_init() call during the probe that initializes the driver's local lock to unlocked state. Fixes: 2c8920ff ("iio: gyro: Add driver support for ADXRS290") Signed-off-by: Nishant Malpani <nish.malpani25@gmail.com> Link: https://lore.kernel.org/r/20200825124552.11155-1-nish.malpani25@gmail.comSigned-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-
Gwendal Grignou authored
Change "[w|W]hat[:| ]" to What: for consistency. Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Link: https://lore.kernel.org/r/20200828233156.2264689-2-gwendal@chromium.orgSigned-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-
Krzysztof Kozlowski authored
Common pattern of handling deferred probe can be simplified with dev_err_probe(). Less code and also it prints the error value. Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Acked-by: Peter Rosin <peda@axentia.se> Link: https://lore.kernel.org/r/20200829064726.26268-18-krzk@kernel.orgSigned-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-
Krzysztof Kozlowski authored
Common pattern of handling deferred probe can be simplified with dev_err_probe(). Less code and also it prints the error value. Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Link: https://lore.kernel.org/r/20200829064726.26268-17-krzk@kernel.orgSigned-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-
Krzysztof Kozlowski authored
Common pattern of handling deferred probe can be simplified with dev_err_probe(). Less code and also it prints the error value. Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Acked-by: Linus Walleij <linus.walleij@linaro.org> Link: https://lore.kernel.org/r/20200829064726.26268-16-krzk@kernel.orgSigned-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-
Krzysztof Kozlowski authored
Common pattern of handling deferred probe can be simplified with dev_err_probe(). Less code and also it prints the error value. Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Link: https://lore.kernel.org/r/20200829064726.26268-15-krzk@kernel.orgSigned-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-
Krzysztof Kozlowski authored
Common pattern of handling deferred probe can be simplified with dev_err_probe(). Less code and also it prints the error value. Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Link: https://lore.kernel.org/r/20200829064726.26268-14-krzk@kernel.orgSigned-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-