Re: [PATCH v3 1/3] staging: lustre: constify attribute_group structures.

2017-07-21 Thread Dan Carpenter
On Fri, Jul 21, 2017 at 11:29:51AM +0530, Arvind Yadav wrote:
> Changes in v3:
>   typo error in cover-latter.

The cover letter gets discarded so no one cares.

regards,
dan carpenter

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


Re: [PATCH net-next 2/8] netvsc: add some rtnl_dereference annotations

2017-07-21 Thread kbuild test robot
Hi Stephen,

[auto build test ERROR on net-next/master]

url:
https://github.com/0day-ci/linux/commits/Stephen-Hemminger/netvsc-lockdep-and-related-fixes/20170720-191938
config: x86_64-rhel (attached as .config)
compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
# save the attached .config to linux build tree
make ARCH=x86_64 

Note: the 
linux-review/Stephen-Hemminger/netvsc-lockdep-and-related-fixes/20170720-191938 
HEAD a5e48342eae178e9ed020d3634cdf92f1f05cb70 builds fine.
  It only hurts bisectibility.

All error/warnings (new ones prefixed by >>):

   drivers/net/hyperv/netvsc.c: In function 'netvsc_switch_datapath':
>> drivers/net/hyperv/netvsc.c:44:33: error: implicit declaration of function 
>> 'rtnl_dereference' [-Werror=implicit-function-declaration]
 struct netvsc_device *nv_dev = rtnl_dereference(net_device_ctx->nvdev);
^~~~
>> drivers/net/hyperv/netvsc.c:44:33: warning: initialization makes pointer 
>> from integer without a cast [-Wint-conversion]
   drivers/net/hyperv/netvsc.c: In function 'netvsc_device_remove':
   drivers/net/hyperv/netvsc.c:553:5: warning: initialization makes pointer 
from integer without a cast [-Wint-conversion]
  = rtnl_dereference(net_device_ctx->nvdev);
^~~~
   cc1: some warnings being treated as errors

vim +/rtnl_dereference +44 drivers/net/hyperv/netvsc.c

35  
36  /*
37   * Switch the data path from the synthetic interface to the VF
38   * interface.
39   */
40  void netvsc_switch_datapath(struct net_device *ndev, bool vf)
41  {
42  struct net_device_context *net_device_ctx = netdev_priv(ndev);
43  struct hv_device *dev = net_device_ctx->device_ctx;
  > 44  struct netvsc_device *nv_dev = 
rtnl_dereference(net_device_ctx->nvdev);
45  struct nvsp_message *init_pkt = &nv_dev->channel_init_pkt;
46  
47  memset(init_pkt, 0, sizeof(struct nvsp_message));
48  init_pkt->hdr.msg_type = NVSP_MSG4_TYPE_SWITCH_DATA_PATH;
49  if (vf)
50  init_pkt->msg.v4_msg.active_dp.active_datapath =
51  NVSP_DATAPATH_VF;
52  else
53  init_pkt->msg.v4_msg.active_dp.active_datapath =
54  NVSP_DATAPATH_SYNTHETIC;
55  
56  vmbus_sendpacket(dev->channel, init_pkt,
57 sizeof(struct nvsp_message),
58 (unsigned long)init_pkt,
59 VM_PKT_DATA_INBAND, 0);
60  
61  net_device_ctx->datapath = vf;
62  }
63  

---
0-DAY kernel test infrastructureOpen Source Technology Center
https://lists.01.org/pipermail/kbuild-all   Intel Corporation


.config.gz
Description: application/gzip
___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


Re: [PATCH] Make functions rf69_set_bandwidth_intern and rf69_set_dc_cut_off_frequency_intern static

2017-07-21 Thread Marcus Wolf
Reviewed-by: Marcus Wolf 

Attention: This patch is nothing new, just a combination of Patch
[PATCH 2/3][staging-next] staging: pi433: Make functions
rf69_set_bandwidth_intern static
and
[PATCH 1/1][staging-next] staging: pi433: Make functions
rf69_set_dc_cut_off_frequency_intern static 


> Colin King  hat am 21. Juli 2017 um 00:33
> geschrieben:
>
>
> From: Colin Ian King 
>
> The functions rf69_set_bandwidth_intern and also
> rf69_set_dc_cut_off_frequency_intern is local to the source and
> do not need to be in global scope, so make it static. Also break
> break overly wide line. Finally, remove the function declaration
> rf69_set_dc_cut_off_frequency_intern from the rf69.h header.
>
> Cleans up sparse warning:
> symbol 'update_share_count' was not declared. Should it be static?
>
> Signed-off-by: Colin Ian King 
> ---
> drivers/staging/pi433/rf69.c | 7 +--
> drivers/staging/pi433/rf69.h | 1 -
> 2 files changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/staging/pi433/rf69.c b/drivers/staging/pi433/rf69.c
> index e391ce777bc7..170e9cc59cde 100644
> --- a/drivers/staging/pi433/rf69.c
> +++ b/drivers/staging/pi433/rf69.c
> @@ -400,7 +400,9 @@ enum lnaGain rf69_get_lna_gain(struct spi_device *spi)
> }
> }
>
> -int rf69_set_dc_cut_off_frequency_intern(struct spi_device *spi ,u8 reg, enum
> dccPercent dccPercent)
> +static int rf69_set_dc_cut_off_frequency_intern(struct spi_device *spi,
> + u8 reg,
> + enum dccPercent dccPercent)
> {
> switch (dccPercent) {
> case dcc16Percent: return WRITE_REG(reg, ( (READ_REG(reg) & ~MASK_BW_DCC_FREQ)
> | BW_DCC_16_PERCENT) );
> @@ -433,7 +435,8 @@ int rf69_set_dc_cut_off_frequency_during_afc(struct
> spi_device *spi, enum dccPer
> return rf69_set_dc_cut_off_frequency_intern(spi, REG_AFCBW, dccPercent);
> }
>
> -int rf69_set_bandwidth_intern(struct spi_device *spi, u8 reg, enum mantisse
> mantisse, u8 exponent)
> +static int rf69_set_bandwidth_intern(struct spi_device *spi, u8 reg,
> + enum mantisse mantisse, u8 exponent)
> {
> u8 newValue;
>
> diff --git a/drivers/staging/pi433/rf69.h b/drivers/staging/pi433/rf69.h
> index b81e0762032e..3fdf5d3d225b 100644
> --- a/drivers/staging/pi433/rf69.h
> +++ b/drivers/staging/pi433/rf69.h
> @@ -41,7 +41,6 @@ int rf69_set_pa_ramp(struct spi_device *spi, enum paRamp
> paRamp);
> int rf69_set_antenna_impedance(struct spi_device *spi, enum antennaImpedance
> antennaImpedance);
> int rf69_set_lna_gain(struct spi_device *spi, enum lnaGain lnaGain);
> enum lnaGain rf69_get_lna_gain(struct spi_device *spi);
> -int rf69_set_dc_cut_off_frequency_intern(struct spi_device *spi, u8 reg, enum
> dccPercent dccPercent);
> int rf69_set_dc_cut_off_frequency(struct spi_device *spi, enum dccPercent
> dccPercent);
> int rf69_set_dc_cut_off_frequency_during_afc(struct spi_device *spi, enum
> dccPercent dccPercent);
> int rf69_set_bandwidth(struct spi_device *spi, enum mantisse mantisse, u8
> exponent);
> --
> 2.11.0
>
>
___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[PATCH] staging: rtl8192u: fix incorrect mask and shift on u8 data

2017-07-21 Thread Colin King
From: Colin Ian King 

The cfg_action bit comes from the high bit of pmsg[4] so the
current mask and shift are in correct and always result in
zero.  Fix this by using the correct mask and shif to get the
correct cfg_action bit value.

Detected by CoverityScan, CID#142890 ("Operands don't affect result")

Signed-off-by: Colin Ian King 
---
 drivers/staging/rtl8192u/r819xU_cmdpkt.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/staging/rtl8192u/r819xU_cmdpkt.c 
b/drivers/staging/rtl8192u/r819xU_cmdpkt.c
index 87ab3ba760fc..ae9a4f1ac8fd 100644
--- a/drivers/staging/rtl8192u/r819xU_cmdpkt.c
+++ b/drivers/staging/rtl8192u/r819xU_cmdpkt.c
@@ -294,7 +294,7 @@ static void cmpk_handle_query_config_rx(struct net_device 
*dev, u8 *pmsg)
 * windows OS. So we have to read the content byte by byte or transfer
 * endian type before copy the message copy.
 */
-   rx_query_cfg.cfg_action = (pmsg[4] & 0x8000) >> 31;
+   rx_query_cfg.cfg_action = (pmsg[4] & 0x80) >> 7;
rx_query_cfg.cfg_type   = (pmsg[4] & 0x60) >> 5;
rx_query_cfg.cfg_size   = (pmsg[4] & 0x18) >> 3;
rx_query_cfg.cfg_page   = (pmsg[6] & 0x0F) >> 0;
-- 
2.11.0

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[PATCH 0/2] add ESP8089 WiFi chip driver

2017-07-21 Thread Quentin Schulz
The Espressif ESP8089 WiFi chips can be often found in cheap tablets.
There is one in A23 Polaroid tablets for example.

The chip is often embedded as an eMMC SDIO device.

At the moment, there is no publicly available datasheet for this chip.

The code was taken from an out-of-tree repository and has seen a first
pass in the cleanup process.

Three firmwares are needed and will be soon posted to linux-firmware.

Hans already tried to push the first patch and there had been some
discussions going on with Ulf here[1]. Basically, Ulf proposed to send
an RFC of a better solution to the problem Hans exposed in his cover
letter.
I've been looking for a few hours where this RFC could be and I
unfortunately haven't found it. Moreover, nothing recently submitted
matches a potential solution to this problem (but I may be wrong). I'm
basically trying to revive the discussion on this matter since only a
hack can make this driver work ATM (see Hans' cover letter).

I am posting this driver to staging as it still requires some cleanup
but can be used as is.

Thanks,
Quentin

[1] http://www.spinics.net/lists/linux-mmc/msg38410.html

Hans de Goede (1):
  mmc: Add mmc_force_detect_change_begin / _end functions

Quentin Schulz (1):
  staging: net: wireless: add ESP8089 WiFi driver

 drivers/mmc/core/core.c |   47 +-
 drivers/staging/Kconfig |2 +
 drivers/staging/Makefile|1 +
 drivers/staging/esp8089/Kconfig |   13 +
 drivers/staging/esp8089/Makefile|7 +
 drivers/staging/esp8089/esp_ctrl.c  |  527 
 drivers/staging/esp8089/esp_ctrl.h  |   48 +
 drivers/staging/esp8089/esp_debug.c |  247 
 drivers/staging/esp8089/esp_debug.h |   69 ++
 drivers/staging/esp8089/esp_file.c  |  221 
 drivers/staging/esp8089/esp_file.h  |   30 +
 drivers/staging/esp8089/esp_init_data.h |   17 +
 drivers/staging/esp8089/esp_io.c|  294 +
 drivers/staging/esp8089/esp_mac80211.c  | 1496 +++
 drivers/staging/esp8089/esp_mac80211.h  |   33 +
 drivers/staging/esp8089/esp_main.c  |  199 
 drivers/staging/esp8089/esp_pub.h   |  188 +++
 drivers/staging/esp8089/esp_sif.h   |  131 ++
 drivers/staging/esp8089/esp_sip.c   | 1718 +++
 drivers/staging/esp8089/esp_sip.h   |  150 +++
 drivers/staging/esp8089/esp_utils.c |  133 +++
 drivers/staging/esp8089/esp_utils.h |   27 +
 drivers/staging/esp8089/esp_wl.h|   35 +
 drivers/staging/esp8089/esp_wmac.h  |   87 ++
 drivers/staging/esp8089/sdio_sif_esp.c  |  552 +
 drivers/staging/esp8089/sip2_common.h   |  388 ++
 drivers/staging/esp8089/slc_host_register.h |  263 
 include/linux/mmc/host.h|7 +
 28 files changed, 6925 insertions(+), 5 deletions(-)
 create mode 100644 drivers/staging/esp8089/Kconfig
 create mode 100644 drivers/staging/esp8089/Makefile
 create mode 100644 drivers/staging/esp8089/esp_ctrl.c
 create mode 100644 drivers/staging/esp8089/esp_ctrl.h
 create mode 100644 drivers/staging/esp8089/esp_debug.c
 create mode 100644 drivers/staging/esp8089/esp_debug.h
 create mode 100644 drivers/staging/esp8089/esp_file.c
 create mode 100644 drivers/staging/esp8089/esp_file.h
 create mode 100644 drivers/staging/esp8089/esp_init_data.h
 create mode 100644 drivers/staging/esp8089/esp_io.c
 create mode 100644 drivers/staging/esp8089/esp_mac80211.c
 create mode 100644 drivers/staging/esp8089/esp_mac80211.h
 create mode 100644 drivers/staging/esp8089/esp_main.c
 create mode 100644 drivers/staging/esp8089/esp_pub.h
 create mode 100644 drivers/staging/esp8089/esp_sif.h
 create mode 100644 drivers/staging/esp8089/esp_sip.c
 create mode 100644 drivers/staging/esp8089/esp_sip.h
 create mode 100644 drivers/staging/esp8089/esp_utils.c
 create mode 100644 drivers/staging/esp8089/esp_utils.h
 create mode 100644 drivers/staging/esp8089/esp_wl.h
 create mode 100644 drivers/staging/esp8089/esp_wmac.h
 create mode 100644 drivers/staging/esp8089/sdio_sif_esp.c
 create mode 100644 drivers/staging/esp8089/sip2_common.h
 create mode 100644 drivers/staging/esp8089/slc_host_register.h

-- 
2.11.0

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[PATCH 2/2] mmc: Add mmc_force_detect_change_begin / _end functions

2017-07-21 Thread Quentin Schulz
From: Hans de Goede 

Some sdio devices have a multiple stage bring-up process. Specifically
the esp8089 (for which an out of tree driver is available) loads firmware
on the first call to its sdio-drivers' probe function and then resets
the device causing it to reboot from its RAM with the new firmware.

When this sdio device reboots it comes back up in 1 bit 400 KHz mode
again, and we need to walk through the whole ios negatiation and sdio setup
again.

There are 2 problems with this:

1) Typically these devices are soldered onto some (ARM) tablet / SBC
PCB and as such are described in devicetree as "non-removable", which
causes the mmc-core to scan them only once and not poll for the device
dropping of the bus. Normally this is the right thing todo but in the
eso8089 example we need the mmc-core to notice the module has disconnected
(since it is now in 1 bit mode again it will not talk to the host in 4 bit
mode). This can be worked around by using "broken-cd" in devicetree
instead of "non-removable", but that is not a proper fix since the device
really is non-removable.

2) When the mmc-core detects the device has disconnected it will poweroff
the device, causing the RAM loaded firmware to be lost. This can be worked
around in devicetree by using regulator-always-on (and avoiding the use of
mmc-pwrseq), but again that is more of a hack then a proper fix.

This commmit fixes 1) by adding a mmc_force_detect_change function which
will cause scanning for device removal / insertion until a new device is
detected. 2) Is fixed by a keep_power flag to the mmc_force_detect_change
function which when set causes the mmc-core to keep the power to the device
on during the rescan.

Cc: Icenowy Zheng 
Cc: Maxime Ripard 
Cc: Chen-Yu Tsai 
Signed-off-by: Hans de Goede 
---
 drivers/mmc/core/core.c  | 47 ++-
 include/linux/mmc/host.h |  7 +++
 2 files changed, 49 insertions(+), 5 deletions(-)

diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c
index 26431267a3e2..103badde910b 100644
--- a/drivers/mmc/core/core.c
+++ b/drivers/mmc/core/core.c
@@ -1620,8 +1620,11 @@ int mmc_select_drive_strength(struct mmc_card *card, 
unsigned int max_dtr,
  */
 void mmc_power_up(struct mmc_host *host, u32 ocr)
 {
-   if (host->ios.power_mode == MMC_POWER_ON)
+   if (host->ios.power_mode == MMC_POWER_ON) {
+   if (host->ios.clock == 0)
+   goto set_clock;
return;
+   }
 
mmc_pwrseq_pre_power_on(host);
 
@@ -1646,6 +1649,7 @@ void mmc_power_up(struct mmc_host *host, u32 ocr)
 
mmc_pwrseq_post_power_on(host);
 
+set_clock:
host->ios.clock = host->f_init;
 
host->ios.power_mode = MMC_POWER_ON;
@@ -1663,6 +1667,11 @@ void mmc_power_off(struct mmc_host *host)
if (host->ios.power_mode == MMC_POWER_OFF)
return;
 
+   if (host->rescan_keep_power) {
+   mmc_set_clock(host, 0);
+   return;
+   }
+
mmc_pwrseq_power_off(host);
 
host->ios.clock = 0;
@@ -1804,6 +1813,27 @@ void mmc_detect_change(struct mmc_host *host, unsigned 
long delay)
 }
 EXPORT_SYMBOL(mmc_detect_change);
 
+/**
+ * mmc_force_detect_change - force rescanning of a MMC socket even if
+ *   it is non-removable
+ * @host: host to rescan
+ * @delay: optional delay to wait before detection (jiffies)
+ * @keep_power: if set do not turn of vdd / call pwrseq_off during rescan
+ *
+ * MMC drivers which need non-removable sdio devices to be rescanned
+ * (e.g. because the device reboots its fw after a firmware upload),
+ * can call this to force scanning the MMC socket for changes, even
+ * if it is non-removable.
+ */
+void mmc_force_detect_change(struct mmc_host *host, unsigned long delay,
+bool keep_power)
+{
+   host->rescan_force = 1;
+   host->rescan_keep_power = keep_power;
+   _mmc_detect_change(host, delay, false);
+}
+EXPORT_SYMBOL(mmc_force_detect_change);
+
 void mmc_init_erase(struct mmc_card *card)
 {
unsigned int sz;
@@ -2566,7 +2596,8 @@ void mmc_rescan(struct work_struct *work)
return;
 
/* If there is a non-removable card registered, only scan once */
-   if (!mmc_card_is_removable(host) && host->rescan_entered)
+   if (!mmc_card_is_removable(host) && host->rescan_entered &&
+   !host->rescan_force)
return;
host->rescan_entered = 1;
 
@@ -2583,7 +2614,8 @@ void mmc_rescan(struct work_struct *work)
 * if there is a _removable_ card registered, check whether it is
 * still present
 */
-   if (host->bus_ops && !host->bus_dead && mmc_card_is_removable(host))
+   if (host->bus_ops && !host->bus_dead &&
+   (mmc_card_is_removable(host) || host->rescan_force))
host->bus_ops->detect(host);
 
host->detect_change = 0;
@@ -2616,15 +2

Re: [PATCH 1/2] staging: net: wireless: add ESP8089 WiFi driver

2017-07-21 Thread Greg KH
On Fri, Jul 21, 2017 at 04:35:01PM +0200, Quentin Schulz wrote:
> The Espressif ESP8089 WiFi chips can be often found in cheap tablets.
> There is one in A23 Polaroid tablets for example.
> 
> The chip is often embedded as an eMMC SDIO device.
> 
> The code was taken from an out-of-tree repository and has seen a first
> pass in the cleanup process.
> 
> At the moment, there is no publicly available datasheet for this chip.
> 
> Cc: Hans de Goede 
> Cc: Icenowy Zheng 
> Signed-off-by: Quentin Schulz 

Staging drivers need a TODO file that lists what has to be done to the
code to get it out of staging.  Why not just take a day or so and fix up
the remaining issues and get it into the "real" part of the kernel
correctly?

Also, staging drivers have to be "stand-alone", I can't take stuff that
requires core changes only for one staging driver.

thanks,

greg k-h
___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


Re: [PATCH 1/2] staging: net: wireless: add ESP8089 WiFi driver

2017-07-21 Thread Marcel Holtmann
Hi Quentin,

> The Espressif ESP8089 WiFi chips can be often found in cheap tablets.
> There is one in A23 Polaroid tablets for example.
> 
> The chip is often embedded as an eMMC SDIO device.
> 
> The code was taken from an out-of-tree repository and has seen a first
> pass in the cleanup process.
> 
> At the moment, there is no publicly available datasheet for this chip.
> 
> Cc: Hans de Goede 
> Cc: Icenowy Zheng 
> Signed-off-by: Quentin Schulz 
> ---
> drivers/staging/Kconfig |2 +
> drivers/staging/Makefile|1 +
> drivers/staging/esp8089/Kconfig |   13 +
> drivers/staging/esp8089/Makefile|7 +
> drivers/staging/esp8089/esp_ctrl.c  |  527 
> drivers/staging/esp8089/esp_ctrl.h  |   48 +
> drivers/staging/esp8089/esp_debug.c |  247 
> drivers/staging/esp8089/esp_debug.h |   69 ++
> drivers/staging/esp8089/esp_file.c  |  221 
> drivers/staging/esp8089/esp_file.h  |   30 +
> drivers/staging/esp8089/esp_init_data.h |   17 +
> drivers/staging/esp8089/esp_io.c|  294 +
> drivers/staging/esp8089/esp_mac80211.c  | 1496 +++
> drivers/staging/esp8089/esp_mac80211.h  |   33 +
> drivers/staging/esp8089/esp_main.c  |  199 
> drivers/staging/esp8089/esp_pub.h   |  188 +++
> drivers/staging/esp8089/esp_sif.h   |  131 ++
> drivers/staging/esp8089/esp_sip.c   | 1718 +++
> drivers/staging/esp8089/esp_sip.h   |  150 +++
> drivers/staging/esp8089/esp_utils.c |  133 +++
> drivers/staging/esp8089/esp_utils.h |   27 +
> drivers/staging/esp8089/esp_wl.h|   35 +
> drivers/staging/esp8089/esp_wmac.h  |   87 ++
> drivers/staging/esp8089/sdio_sif_esp.c  |  552 +
> drivers/staging/esp8089/sip2_common.h   |  388 ++
> drivers/staging/esp8089/slc_host_register.h |  263 
> 26 files changed, 6876 insertions(+)
> create mode 100644 drivers/staging/esp8089/Kconfig
> create mode 100644 drivers/staging/esp8089/Makefile
> create mode 100644 drivers/staging/esp8089/esp_ctrl.c
> create mode 100644 drivers/staging/esp8089/esp_ctrl.h
> create mode 100644 drivers/staging/esp8089/esp_debug.c
> create mode 100644 drivers/staging/esp8089/esp_debug.h
> create mode 100644 drivers/staging/esp8089/esp_file.c
> create mode 100644 drivers/staging/esp8089/esp_file.h
> create mode 100644 drivers/staging/esp8089/esp_init_data.h
> create mode 100644 drivers/staging/esp8089/esp_io.c
> create mode 100644 drivers/staging/esp8089/esp_mac80211.c
> create mode 100644 drivers/staging/esp8089/esp_mac80211.h
> create mode 100644 drivers/staging/esp8089/esp_main.c
> create mode 100644 drivers/staging/esp8089/esp_pub.h
> create mode 100644 drivers/staging/esp8089/esp_sif.h
> create mode 100644 drivers/staging/esp8089/esp_sip.c
> create mode 100644 drivers/staging/esp8089/esp_sip.h
> create mode 100644 drivers/staging/esp8089/esp_utils.c
> create mode 100644 drivers/staging/esp8089/esp_utils.h
> create mode 100644 drivers/staging/esp8089/esp_wl.h
> create mode 100644 drivers/staging/esp8089/esp_wmac.h
> create mode 100644 drivers/staging/esp8089/sdio_sif_esp.c
> create mode 100644 drivers/staging/esp8089/sip2_common.h
> create mode 100644 drivers/staging/esp8089/slc_host_register.h

why are you putting this into staging? Is it that bad?

Regards

Marcel

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[PATCH] [media] imx: add VIDEO_V4L2_SUBDEV_API dependency

2017-07-21 Thread Arnd Bergmann
Without this, I get a build error:

drivers/staging/media/imx/imx-media-vdic.c: In function '__vdic_get_fmt':
drivers/staging/media/imx/imx-media-vdic.c:554:10: error: implicit declaration 
of function 'v4l2_subdev_get_try_format'; did you mean 
'v4l2_subdev_notify_event'? [-Werror=implicit-function-declaration]

Fixes: e130291212df ("[media] media: Add i.MX media core driver")
Signed-off-by: Arnd Bergmann 
---
 drivers/staging/media/imx/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/staging/media/imx/Kconfig 
b/drivers/staging/media/imx/Kconfig
index 7eff50bcea39..719508fcb0e9 100644
--- a/drivers/staging/media/imx/Kconfig
+++ b/drivers/staging/media/imx/Kconfig
@@ -1,6 +1,7 @@
 config VIDEO_IMX_MEDIA
tristate "i.MX5/6 V4L2 media core driver"
depends on MEDIA_CONTROLLER && VIDEO_V4L2 && ARCH_MXC && IMX_IPUV3_CORE
+   depends on VIDEO_V4L2_SUBDEV_API
select V4L2_FWNODE
---help---
  Say yes here to enable support for video4linux media controller
-- 
2.9.0

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


Re: [PATCH 1/2] staging: net: wireless: add ESP8089 WiFi driver

2017-07-21 Thread Quentin Schulz
Hi Greg,

On 21/07/2017 17:01, Greg KH wrote:
> On Fri, Jul 21, 2017 at 04:35:01PM +0200, Quentin Schulz wrote:
>> The Espressif ESP8089 WiFi chips can be often found in cheap tablets.
>> There is one in A23 Polaroid tablets for example.
>>
>> The chip is often embedded as an eMMC SDIO device.
>>
>> The code was taken from an out-of-tree repository and has seen a first
>> pass in the cleanup process.
>>
>> At the moment, there is no publicly available datasheet for this chip.
>>
>> Cc: Hans de Goede 
>> Cc: Icenowy Zheng 
>> Signed-off-by: Quentin Schulz 
> 
> Staging drivers need a TODO file that lists what has to be done to the
> code to get it out of staging.  Why not just take a day or so and fix up
> the remaining issues and get it into the "real" part of the kernel
> correctly?
> 

OK, I'll work on a TODO list. Is there anything else I should know about
staging drivers so I can address everything at the same time?

>From a driver that has already been cleaned up a bit by Icenowy and
Hans, it took me between 10 and 15 working days to this step, which I
estimate to be around 50% of total clean up (and we're only speaking
about coding style and dead code mainly, nothing about a bit of code
review, code robustness...). I find the code not really easy to follow
(might be because I'm a beginner in the subsystem as well).

I might not be the most efficient person in cleaning up drivers but I'm
pretty sure this isn't a one day cleanup. (Would be happy to be proven
otherwise :) ), else I would have done it as you suggest.

> Also, staging drivers have to be "stand-alone", I can't take stuff that
> requires core changes only for one staging driver.
> 

Yes, I didn't expect the first version to go through, the goal was to
revive the discussion on this core patch as there was a consensus that
the requested feature was needed.

Thanks,
Quentin

> thanks,
> 
> greg k-h
> 

-- 
Quentin Schulz, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


Re: [PATCH 1/2] staging: net: wireless: add ESP8089 WiFi driver

2017-07-21 Thread Marcel Holtmann
Hi Quentin,

>>> The Espressif ESP8089 WiFi chips can be often found in cheap tablets.
>>> There is one in A23 Polaroid tablets for example.
>>> 
>>> The chip is often embedded as an eMMC SDIO device.
>>> 
>>> The code was taken from an out-of-tree repository and has seen a first
>>> pass in the cleanup process.
>>> 
>>> At the moment, there is no publicly available datasheet for this chip.
>>> 
>>> Cc: Hans de Goede 
>>> Cc: Icenowy Zheng 
>>> Signed-off-by: Quentin Schulz 
>> 
>> Staging drivers need a TODO file that lists what has to be done to the
>> code to get it out of staging.  Why not just take a day or so and fix up
>> the remaining issues and get it into the "real" part of the kernel
>> correctly?
>> 
> 
> OK, I'll work on a TODO list. Is there anything else I should know about
> staging drivers so I can address everything at the same time?
> 
> From a driver that has already been cleaned up a bit by Icenowy and
> Hans, it took me between 10 and 15 working days to this step, which I
> estimate to be around 50% of total clean up (and we're only speaking
> about coding style and dead code mainly, nothing about a bit of code
> review, code robustness...). I find the code not really easy to follow
> (might be because I'm a beginner in the subsystem as well).
> 
> I might not be the most efficient person in cleaning up drivers but I'm
> pretty sure this isn't a one day cleanup. (Would be happy to be proven
> otherwise :) ), else I would have done it as you suggest.

even if it takes you 1 month to clean it up, get it reviewed on linux-wireless 
and target wireless-drivers instead of staging. When I had a brief a look at 
your patch, it didn't look like staging material to me.

Regards

Marcel

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


Re: [PATCH 1/2] staging: net: wireless: add ESP8089 WiFi driver

2017-07-21 Thread Quentin Schulz
Hi Marcel,

On 21/07/2017 18:52, Marcel Holtmann wrote:
> Hi Quentin,
> 
 The Espressif ESP8089 WiFi chips can be often found in cheap tablets.
 There is one in A23 Polaroid tablets for example.

 The chip is often embedded as an eMMC SDIO device.

 The code was taken from an out-of-tree repository and has seen a first
 pass in the cleanup process.

 At the moment, there is no publicly available datasheet for this chip.

 Cc: Hans de Goede 
 Cc: Icenowy Zheng 
 Signed-off-by: Quentin Schulz 
>>>
>>> Staging drivers need a TODO file that lists what has to be done to the
>>> code to get it out of staging.  Why not just take a day or so and fix up
>>> the remaining issues and get it into the "real" part of the kernel
>>> correctly?
>>>
>>
>> OK, I'll work on a TODO list. Is there anything else I should know about
>> staging drivers so I can address everything at the same time?
>>
>> From a driver that has already been cleaned up a bit by Icenowy and
>> Hans, it took me between 10 and 15 working days to this step, which I
>> estimate to be around 50% of total clean up (and we're only speaking
>> about coding style and dead code mainly, nothing about a bit of code
>> review, code robustness...). I find the code not really easy to follow
>> (might be because I'm a beginner in the subsystem as well).
>>
>> I might not be the most efficient person in cleaning up drivers but I'm
>> pretty sure this isn't a one day cleanup. (Would be happy to be proven
>> otherwise :) ), else I would have done it as you suggest.
> 
> even if it takes you 1 month to clean it up, get it reviewed on 
> linux-wireless and target wireless-drivers instead of staging. When I had a 
> brief a look at your patch, it didn't look like staging material to me.
> 

We don't have a client supporting this effort and I don't think the
company I work for would support this effort (maybe it would, but
definitely spread over a long long period), so we're talking about 10-15
working days spread over my free time/week-end, that isn't for in one
month :) I could use help for sure on this driver, that's why I posted
it in staging.

I've done the cleanup on a per-file basis so maybe you looked at one of
the cleaned up files?

Just to be sure, you're telling me that I should post it as is on
linux-wireless and then work with the reviews? Or are you telling me to
take "1 month to clean it up" and then post it on linux-wireless?

Thanks,
Quentin

> Regards
> 
> Marcel
> 

-- 
Quentin Schulz, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[PATCH] netvsc: fix ptr_ret.cocci warnings

2017-07-21 Thread kbuild test robot
drivers/net/hyperv/netvsc_drv.c:737:8-14: WARNING: PTR_ERR_OR_ZERO can be used


 Use PTR_ERR_OR_ZERO rather than if(IS_ERR(...)) + PTR_ERR

Generated by: scripts/coccinelle/api/ptr_ret.cocci

Fixes: 9749fed5d43d ("netvsc: use ERR_PTR to avoid dereference issues")
CC: stephen hemminger 
Signed-off-by: Fengguang Wu 
---

 netvsc_drv.c |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/drivers/net/hyperv/netvsc_drv.c
+++ b/drivers/net/hyperv/netvsc_drv.c
@@ -734,7 +734,7 @@ static int netvsc_set_queues(struct net_
return ret;
 
net_device = rndis_filter_device_add(dev, &device_info);
-   return IS_ERR(net_device) ? PTR_ERR(net_device) : 0;
+   return PTR_ERR_OR_ZERO(net_device);
 }
 
 static int netvsc_set_channels(struct net_device *net,
___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


Re: [PATCH] staging: vboxvideo: make a couple of symbols static

2017-07-21 Thread Hans de Goede

Hi,

On 19-07-17 11:36, Colin King wrote:

From: Colin Ian King 

Module parameter vbox_modeset and structure vbox_bo_driver do not need to
be in global scope and hence can be made static.

Cleans up a couple of sparse warnings:
symbol 'vbox_modeset' was not declared. Should it be static?
symbol 'vbox_bo_driver' was not declared. Should it be static?

Signed-off-by: Colin Ian King 


Looks good to me:

Acked-by: Hans de Goede 

Regards,

Hans




---
  drivers/staging/vboxvideo/vbox_drv.c | 2 +-
  drivers/staging/vboxvideo/vbox_ttm.c | 2 +-
  2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/vboxvideo/vbox_drv.c 
b/drivers/staging/vboxvideo/vbox_drv.c
index 6d0600c37c0c..e18642e5027e 100644
--- a/drivers/staging/vboxvideo/vbox_drv.c
+++ b/drivers/staging/vboxvideo/vbox_drv.c
@@ -36,7 +36,7 @@
  
  #include "vbox_drv.h"
  
-int vbox_modeset = -1;

+static int vbox_modeset = -1;
  
  MODULE_PARM_DESC(modeset, "Disable/Enable modesetting");

  module_param_named(modeset, vbox_modeset, int, 0400);
diff --git a/drivers/staging/vboxvideo/vbox_ttm.c 
b/drivers/staging/vboxvideo/vbox_ttm.c
index 34a905d40735..4eb410a2a1a8 100644
--- a/drivers/staging/vboxvideo/vbox_ttm.c
+++ b/drivers/staging/vboxvideo/vbox_ttm.c
@@ -230,7 +230,7 @@ static void vbox_ttm_tt_unpopulate(struct ttm_tt *ttm)
ttm_pool_unpopulate(ttm);
  }
  
-struct ttm_bo_driver vbox_bo_driver = {

+static struct ttm_bo_driver vbox_bo_driver = {
.ttm_tt_create = vbox_ttm_tt_create,
.ttm_tt_populate = vbox_ttm_tt_populate,
.ttm_tt_unpopulate = vbox_ttm_tt_unpopulate,


___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[PATCH 0/3] Drivers: pi433: Style fix

2017-07-21 Thread Derek Robson
Assorted styel fix across whole driver
Found using checkpatch



Derek Robson (3):
  staging: pi433: Style fix - align block comments
  staging: pi433: - style fix, space before tabs
  staging: pi433: - style fix, space at start of line

 drivers/staging/pi433/pi433_if.c   |  50 +++---
 drivers/staging/pi433/pi433_if.h   |   4 +-
 drivers/staging/pi433/rf69.c   |  22 +--
 drivers/staging/pi433/rf69.h   |   6 +-
 drivers/staging/pi433/rf69_enum.h  | 206 
 drivers/staging/pi433/rf69_registers.h | 280 -
 6 files changed, 289 insertions(+), 279 deletions(-)

-- 
2.13.2

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[PATCH 1/3] staging: pi433: Style fix - align block comments

2017-07-21 Thread Derek Robson
Fixed the alignment of block comments
Found using checkpatch

Signed-off-by: Derek Robson 
---
 drivers/staging/pi433/pi433_if.c   |  38 +++--
 drivers/staging/pi433/rf69.c   |  10 +-
 drivers/staging/pi433/rf69_registers.h | 280 -
 3 files changed, 169 insertions(+), 159 deletions(-)

diff --git a/drivers/staging/pi433/pi433_if.c b/drivers/staging/pi433/pi433_if.c
index 1bc478a7f49e..9cdebe93657c 100644
--- a/drivers/staging/pi433/pi433_if.c
+++ b/drivers/staging/pi433/pi433_if.c
@@ -67,9 +67,11 @@ static DEFINE_MUTEX(minor_lock); /* Protect idr accesses */
 static struct class *pi433_class; /* mainly for udev to create /dev/pi433 */
 
 /* tx config is instance specific
-   so with each open a new tx config struct is needed */
+ * so with each open a new tx config struct is needed
+ */
 /* rx config is device specific
-   so we have just one rx config, ebedded in device struct */
+ * so we have just one rx config, ebedded in device struct
+ */
 struct pi433_device {
/* device handling related values */
dev_t   devt;
@@ -486,9 +488,10 @@ pi433_tx_thread(void *data)
return 0;
 
/* get data from fifo in the following order:
-  - tx_cfg
-  - size of message
-  - message */
+* - tx_cfg
+* - size of message
+* - message
+*/
mutex_lock(&device->tx_fifo_lock);
 
retval = kfifo_out(&device->tx_fifo, &tx_cfg, sizeof(tx_cfg));
@@ -537,23 +540,26 @@ pi433_tx_thread(void *data)
mutex_unlock(&device->tx_fifo_lock);
 
/* if rx is active, we need to interrupt the waiting for
-  incoming telegrams, to be able to send something.
-  We are only allowed, if currently no reception takes
-  place otherwise we need to  wait for the incoming telegram
-  to finish */
+* incoming telegrams, to be able to send something.
+* We are only allowed, if currently no reception takes
+* place otherwise we need to  wait for the incoming telegram
+* to finish
+*/
wait_event_interruptible(device->tx_wait_queue,
 !device->rx_active ||
  device->interrupt_rx_allowed == true);
 
/* prevent race conditions
-  irq will be reenabled after tx config is set */
+* irq will be reenabled after tx config is set
+*/
disable_irq(device->irq_num[DIO0]);
device->tx_active = true;
 
if (device->rx_active && rx_interrupted == false)
{
/* rx is currently waiting for a telegram;
-  we need to set the radio module to standby */
+* we need to set the radio module to standby
+*/
SET_CHECKED(rf69_set_mode(device->spi, standby));
rx_interrupted = true;
}
@@ -712,9 +718,10 @@ pi433_write(struct file *filp, const char __user *buf,
return -EMSGSIZE;
 
/* write the following sequence into fifo:
-  - tx_cfg
-  - size of message
-  - message */
+* - tx_cfg
+* - size of message
+* - message
+*/
mutex_lock(&device->tx_fifo_lock);
retval = kfifo_in(&device->tx_fifo, &instance->tx_cfg, 
sizeof(instance->tx_cfg));
if ( retval != sizeof(instance->tx_cfg) )
@@ -1269,7 +1276,8 @@ static int __init pi433_init(void)
int status;
 
/* If MAX_MSG_SIZE is smaller then FIFO_SIZE, the driver won't
-   work stable - risk of buffer overflow */
+* work stable - risk of buffer overflow
+*/
if (MAX_MSG_SIZE < FIFO_SIZE)
return -EINVAL;
 
diff --git a/drivers/staging/pi433/rf69.c b/drivers/staging/pi433/rf69.c
index e391ce777bc7..7f4db9a1f39a 100644
--- a/drivers/staging/pi433/rf69.c
+++ b/drivers/staging/pi433/rf69.c
@@ -939,8 +939,9 @@ u8 rf69_read_reg(struct spi_device *spi, u8 addr)
#ifdef DEBUG_VALUES
if (retval < 0)
/* should never happen, since we already checked,
-  that module is connected. Therefore no error
-  handling, just an optional error message... */
+* that module is connected. Therefore no error
+* handling, just an optional error message...
+*/
dev_dbg(&spi->dev, "read 0x%x FAILED\n",
addr);
else
@@ -965,8 +966,9 @@ int rf69_write_reg(struct spi_device *spi, u8 a

[PATCH 2/3] staging: pi433: - style fix, space before tabs

2017-07-21 Thread Derek Robson
Fixed checkpatch errors of "no space before tabs"

Signed-off-by: Derek Robson 
---
 drivers/staging/pi433/pi433_if.c | 12 ++--
 drivers/staging/pi433/pi433_if.h |  4 ++--
 drivers/staging/pi433/rf69.c |  8 
 drivers/staging/pi433/rf69.h |  6 +++---
 4 files changed, 15 insertions(+), 15 deletions(-)

diff --git a/drivers/staging/pi433/pi433_if.c b/drivers/staging/pi433/pi433_if.c
index 9cdebe93657c..b9e9292c01d9 100644
--- a/drivers/staging/pi433/pi433_if.c
+++ b/drivers/staging/pi433/pi433_if.c
@@ -190,12 +190,12 @@ rf69_set_rx_cfg(struct pi433_device *dev, struct 
pi433_rx_cfg *rx_cfg)
SET_CHECKED(rf69_set_frequency  (dev->spi, rx_cfg->frequency));
SET_CHECKED(rf69_set_bit_rate   (dev->spi, rx_cfg->bit_rate));
SET_CHECKED(rf69_set_modulation (dev->spi, rx_cfg->modulation));
-   SET_CHECKED(rf69_set_antenna_impedance   (dev->spi, 
rx_cfg->antenna_impedance));
-   SET_CHECKED(rf69_set_rssi_threshold  (dev->spi, 
rx_cfg->rssi_threshold));
-   SET_CHECKED(rf69_set_ook_threshold_dec   (dev->spi, 
rx_cfg->thresholdDecrement));
-   SET_CHECKED(rf69_set_bandwidth   (dev->spi, 
rx_cfg->bw_mantisse, rx_cfg->bw_exponent));
+   SET_CHECKED(rf69_set_antenna_impedance(dev->spi, 
rx_cfg->antenna_impedance));
+   SET_CHECKED(rf69_set_rssi_threshold(dev->spi, rx_cfg->rssi_threshold));
+   SET_CHECKED(rf69_set_ook_threshold_dec(dev->spi, 
rx_cfg->thresholdDecrement));
+   SET_CHECKED(rf69_set_bandwidth(dev->spi, rx_cfg->bw_mantisse, 
rx_cfg->bw_exponent));
SET_CHECKED(rf69_set_bandwidth_during_afc(dev->spi, 
rx_cfg->bw_mantisse, rx_cfg->bw_exponent));
-   SET_CHECKED(rf69_set_dagc(dev->spi, rx_cfg->dagc));
+   SET_CHECKED(rf69_set_dagc(dev->spi, rx_cfg->dagc));
 
dev->rx_bytes_to_drop = rx_cfg->bytes_to_drop;
 
@@ -959,7 +959,7 @@ static int pi433_release(struct inode *inode, struct file 
*filp)
 
 static int setup_GPIOs(struct pi433_device *device)
 {
-   charname[5];
+   charname[5];
int retval;
int i;
 
diff --git a/drivers/staging/pi433/pi433_if.h b/drivers/staging/pi433/pi433_if.h
index e6ed3cd9b2e2..aae71f029c60 100644
--- a/drivers/staging/pi433/pi433_if.h
+++ b/drivers/staging/pi433/pi433_if.h
@@ -57,7 +57,7 @@
  *
  * NOTE: struct layout is the same in 64bit and 32bit userspace.
  */
-#define PI433_TX_CFG_IOCTL_NR  0
+#define PI433_TX_CFG_IOCTL_NR  0
 struct pi433_tx_cfg
 {
__u32   frequency;
@@ -107,7 +107,7 @@ struct pi433_tx_cfg
  *
  * NOTE: struct layout is the same in 64bit and 32bit userspace.
  */
-#define PI433_RX_CFG_IOCTL_NR  1
+#define PI433_RX_CFG_IOCTL_NR  1
 struct pi433_rx_cfg {
__u32   frequency;
__u16   bit_rate;
diff --git a/drivers/staging/pi433/rf69.c b/drivers/staging/pi433/rf69.c
index 7f4db9a1f39a..d931437f0b6a 100644
--- a/drivers/staging/pi433/rf69.c
+++ b/drivers/staging/pi433/rf69.c
@@ -28,8 +28,8 @@
 #include "rf69.h"
 #include "rf69_registers.h"
 
-#define F_OSC3200 /* in Hz */
-#define FIFO_SIZE 66  /* in byte */
+#define F_OSC 3200 /* in Hz */
+#define FIFO_SIZE 66   /* in byte */
 
 /*-*/
 
@@ -885,8 +885,8 @@ int rf69_read_fifo (struct spi_device *spi, u8 *buffer, 
unsigned int size)
/* prepare a bidirectional transfer */
local_buffer[0] = REG_FIFO;
memset(&transfer, 0, sizeof(transfer));
-   transfer.tx_buf = local_buffer;
-   transfer.rx_buf = local_buffer;
+   transfer.tx_buf = local_buffer;
+   transfer.rx_buf = local_buffer;
transfer.len= size+1;
 
retval = spi_sync_transfer(spi, &transfer, 1);
diff --git a/drivers/staging/pi433/rf69.h b/drivers/staging/pi433/rf69.h
index b81e0762032e..373df64b6891 100644
--- a/drivers/staging/pi433/rf69.h
+++ b/drivers/staging/pi433/rf69.h
@@ -20,10 +20,10 @@
 #include "rf69_enum.h"
 #include "rf69_registers.h"
 
-#define F_OSC  3200  /* in Hz */
+#define F_OSC  3200  /* in Hz */
 #define FREQUENCY  43392 /* in Hz, modifying this value impacts CE 
certification */
-#define FIFO_SIZE  66/* in byte */
-#define FIFO_THRESHOLD 15/* in byte */
+#define FIFO_SIZE  66  /* in byte */
+#define FIFO_THRESHOLD 15  /* in byte */
 
 int rf69_set_mode(struct spi_device *spi, enum mode mode);
 int rf69_set_data_mode(struct spi_device *spi, enum dataMode dataMode);
-- 
2.13.2

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[PATCH 3/3] staging: pi433: - style fix, space at start of line

2017-07-21 Thread Derek Robson
Fixed checkpatch errors of "please, no spaces at the start of a line"

Signed-off-by: Derek Robson 
---
 drivers/staging/pi433/rf69.c  |   4 +-
 drivers/staging/pi433/rf69_enum.h | 206 +++---
 2 files changed, 105 insertions(+), 105 deletions(-)

diff --git a/drivers/staging/pi433/rf69.c b/drivers/staging/pi433/rf69.c
index d931437f0b6a..f450bbf3fbbc 100644
--- a/drivers/staging/pi433/rf69.c
+++ b/drivers/staging/pi433/rf69.c
@@ -440,8 +440,8 @@ int rf69_set_bandwidth_intern(struct spi_device *spi, u8 
reg, enum mantisse mant
// check value for mantisse and exponent
if (exponent > 7)   INVALID_PARAM;
if ( (mantisse!=mantisse16) &&
-(mantisse!=mantisse20) &&
- (mantisse!=mantisse24) ) INVALID_PARAM;
+   (mantisse!=mantisse20) &&
+   (mantisse!=mantisse24) ) INVALID_PARAM;
 
// read old value
newValue = READ_REG(reg);
diff --git a/drivers/staging/pi433/rf69_enum.h 
b/drivers/staging/pi433/rf69_enum.h
index fbfb59bd3f3d..635629415e63 100644
--- a/drivers/staging/pi433/rf69_enum.h
+++ b/drivers/staging/pi433/rf69_enum.h
@@ -20,181 +20,181 @@
 
 enum optionOnOff
 {
-optionOff,
-optionOn
+   optionOff,
+   optionOn
 };
 
 enum mode
 {
-mode_sleep,
-standby,
-synthesizer,
-transmit,
-receive
+   mode_sleep,
+   standby,
+   synthesizer,
+   transmit,
+   receive
 };
 
 enum dataMode
 {
-packet,
-continuous,
-continuousNoSync
+   packet,
+   continuous,
+   continuousNoSync
 };
 
 enum modulation
 {
-OOK,
-FSK
+   OOK,
+   FSK
 };
 
 enum modShaping
 {
-shapingOff,
-shaping1_0,
-shaping0_5,
-shaping0_3,
-shapingBR,
-shaping2BR
+   shapingOff,
+   shaping1_0,
+   shaping0_5,
+   shaping0_3,
+   shapingBR,
+   shaping2BR
 };
 
 enum paRamp
 {
-ramp3400,
-ramp2000,
-ramp1000,
-ramp500,
-ramp250,
-ramp125,
-ramp100,
-ramp62,
-ramp50,
-ramp40,
-ramp31,
-ramp25,
-ramp20,
-ramp15,
-ramp12,
-ramp10
+   ramp3400,
+   ramp2000,
+   ramp1000,
+   ramp500,
+   ramp250,
+   ramp125,
+   ramp100,
+   ramp62,
+   ramp50,
+   ramp40,
+   ramp31,
+   ramp25,
+   ramp20,
+   ramp15,
+   ramp12,
+   ramp10
 };
 
 enum antennaImpedance
 {
-fiftyOhm,
-twohundretOhm
+   fiftyOhm,
+   twohundretOhm
 };
 
 enum lnaGain
 {
-automatic,
-max,
-maxMinus6,
-maxMinus12,
-maxMinus24,
-maxMinus36,
-maxMinus48,
-undefined
+   automatic,
+   max,
+   maxMinus6,
+   maxMinus12,
+   maxMinus24,
+   maxMinus36,
+   maxMinus48,
+   undefined
 };
 
 enum dccPercent
 {
-dcc16Percent,
-dcc8Percent,
-dcc4Percent,
-dcc2Percent,
-dcc1Percent,
-dcc0_5Percent,
-dcc0_25Percent,
-dcc0_125Percent
+   dcc16Percent,
+   dcc8Percent,
+   dcc4Percent,
+   dcc2Percent,
+   dcc1Percent,
+   dcc0_5Percent,
+   dcc0_25Percent,
+   dcc0_125Percent
 };
 
 enum mantisse
 {
-mantisse16,
-mantisse20,
-mantisse24
+   mantisse16,
+   mantisse20,
+   mantisse24
 };
 
 enum thresholdType
 {
-fixed,
-peak,
-average
+   fixed,
+   peak,
+   average
 };
 
 enum thresholdStep
 {
-step_0_5db,
-step_1_0db,
-step_1_5db,
-step_2_0db,
-step_3_0db,
-step_4_0db,
-step_5_0db,
-step_6_0db
+   step_0_5db,
+   step_1_0db,
+   step_1_5db,
+   step_2_0db,
+   step_3_0db,
+   step_4_0db,
+   step_5_0db,
+   step_6_0db
 };
 
 enum thresholdDecrement
 {
-dec_every8th,
-dec_every4th,
-dec_every2nd,
-dec_once,
-dec_twice,
-dec_4times,
-dec_8times,
-dec_16times
+   dec_every8th,
+   dec_every4th,
+   dec_every2nd,
+   dec_once,
+   dec_twice,
+   dec_4times,
+   dec_8times,
+   dec_16times
 };
 
 enum flag
 {
-modeSwitchCompleted,
-readyToReceive,
-readyToSend,
-pllLocked,
-rssiExceededThreshold,
-timeout,
-automode,
-syncAddressMatch,
-fifoFull,
-//fifoNotEmpty, collision with next enum; replaced by following enum...
-fifoEmpty,
-fifoLevelBelowThreshold,
-fifoOverrun,
-packetSent,
-payloadReady,
-crcOk,
-batteryLow
+   modeSwitchCompleted,
+   readyToReceive,
+   readyToSend,
+   pllLocked,
+   rssiExceededThreshold,
+   timeout,
+   automode,
+   syncAddressMatch,
+   fifoFull,
+   // fifoNotEmpty, collision with next enum; replaced by following enum...
+   fifoEmpty,
+   fifoLevelBelowThreshold,
+   fifoOverrun,
+   packetSent,
+   payloadReady,
+   crcOk,
+   batteryLow
 };
 
 enum fifoFillCondition
 {
-afterSyncInterrupt,
-always
+   afterSyncInterr