[PATCH net-next,2/3] hv_netvsc: Define a macro RNDIS_AND_PPI_SIZE

2015-04-06 Thread Haiyang Zhang
The sum of RNDIS msg and PPI struct sizes is used in multiple places, so we 
define
a macro for them.

Signed-off-by: Haiyang Zhang haiya...@microsoft.com
Reviewed-by: K. Y. Srinivasan k...@microsoft.com
---
 drivers/net/hyperv/hyperv_net.h |6 ++
 drivers/net/hyperv/netvsc_drv.c |   15 +++
 2 files changed, 9 insertions(+), 12 deletions(-)

diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
index 95a25e4..80bc52e 100644
--- a/drivers/net/hyperv/hyperv_net.h
+++ b/drivers/net/hyperv/hyperv_net.h
@@ -958,6 +958,10 @@ struct ndis_tcp_lso_info {
 #define NDIS_HASH_PPI_SIZE (sizeof(struct rndis_per_packet_info) + \
sizeof(u32))
 
+/* Total size of all PPI data */
+#define NDIS_ALL_PPI_SIZE (NDIS_VLAN_PPI_SIZE + NDIS_CSUM_PPI_SIZE + \
+  NDIS_LSO_PPI_SIZE + NDIS_HASH_PPI_SIZE)
+
 /* Format of Information buffer passed in a SetRequest for the OID */
 /* OID_GEN_RNDIS_CONFIG_PARAMETER. */
 struct rndis_config_parameter_info {
@@ -1170,6 +1174,8 @@ struct rndis_message {
 #define RNDIS_HEADER_SIZE  (sizeof(struct rndis_message) - \
 sizeof(union rndis_message_container))
 
+#define RNDIS_AND_PPI_SIZE (sizeof(struct rndis_message) + NDIS_ALL_PPI_SIZE)
+
 #define NDIS_PACKET_TYPE_DIRECTED  0x0001
 #define NDIS_PACKET_TYPE_MULTICAST 0x0002
 #define NDIS_PACKET_TYPE_ALL_MULTICAST 0x0004
diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
index f9db6bc..73f8fba 100644
--- a/drivers/net/hyperv/netvsc_drv.c
+++ b/drivers/net/hyperv/netvsc_drv.c
@@ -401,10 +401,7 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct 
net_device *net)
return NETDEV_TX_OK;
}
 
-   pkt_sz = sizeof(struct hv_netvsc_packet) +
-   sizeof(struct rndis_message) +
-   NDIS_VLAN_PPI_SIZE + NDIS_CSUM_PPI_SIZE +
-   NDIS_LSO_PPI_SIZE + NDIS_HASH_PPI_SIZE;
+   pkt_sz = sizeof(struct hv_netvsc_packet) + RNDIS_AND_PPI_SIZE;
 
if (head_room  pkt_sz) {
packet = kmalloc(pkt_sz, GFP_ATOMIC);
@@ -436,11 +433,7 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct 
net_device *net)
packet-rndis_msg = (struct rndis_message *)((unsigned long)packet +
sizeof(struct hv_netvsc_packet));
 
-   memset(packet-rndis_msg, 0, sizeof(struct rndis_message) +
-   NDIS_VLAN_PPI_SIZE +
-   NDIS_CSUM_PPI_SIZE +
-   NDIS_LSO_PPI_SIZE +
-   NDIS_HASH_PPI_SIZE);
+   memset(packet-rndis_msg, 0, RNDIS_AND_PPI_SIZE);
 
/* Set the completion routine */
packet-send_completion = netvsc_xmit_completion;
@@ -872,9 +865,7 @@ static int netvsc_probe(struct hv_device *dev,
return -ENOMEM;
 
max_needed_headroom = sizeof(struct hv_netvsc_packet) +
-   sizeof(struct rndis_message) +
-   NDIS_VLAN_PPI_SIZE + NDIS_CSUM_PPI_SIZE +
-   NDIS_LSO_PPI_SIZE + NDIS_HASH_PPI_SIZE;
+ RNDIS_AND_PPI_SIZE;
 
netif_carrier_off(net);
 
-- 
1.7.4.1

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


[PATCH net-next,1/3] hv_netvsc: Clean up two unused variables

2015-04-06 Thread Haiyang Zhang
Signed-off-by: Haiyang Zhang haiya...@microsoft.com
Reviewed-by: K. Y. Srinivasan k...@microsoft.com
---
 drivers/net/hyperv/hyperv_net.h   |1 -
 drivers/net/hyperv/netvsc.c   |1 -
 drivers/net/hyperv/rndis_filter.c |2 --
 3 files changed, 0 insertions(+), 4 deletions(-)

diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
index 309adee..95a25e4 100644
--- a/drivers/net/hyperv/hyperv_net.h
+++ b/drivers/net/hyperv/hyperv_net.h
@@ -130,7 +130,6 @@ struct hv_netvsc_packet {
u32 status;
bool part_of_skb;
 
-   struct hv_device *device;
bool is_data_pkt;
bool xmit_more; /* from skb */
u16 vlan_tci;
diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
index f699236..7e83c6a 100644
--- a/drivers/net/hyperv/netvsc.c
+++ b/drivers/net/hyperv/netvsc.c
@@ -1011,7 +1011,6 @@ static void netvsc_receive(struct netvsc_device 
*net_device,
}
 
count = vmxferpage_packet-range_cnt;
-   netvsc_packet-device = device;
netvsc_packet-channel = channel;
 
/* Each range represents 1 RNDIS pkt that contains 1 ethernet frame */
diff --git a/drivers/net/hyperv/rndis_filter.c 
b/drivers/net/hyperv/rndis_filter.c
index a160437..0d92efe 100644
--- a/drivers/net/hyperv/rndis_filter.c
+++ b/drivers/net/hyperv/rndis_filter.c
@@ -47,8 +47,6 @@ struct rndis_request {
 
/* Simplify allocation by having a netvsc packet inline */
struct hv_netvsc_packet pkt;
-   /* Set 2 pages for rndis requests crossing page boundary */
-   struct hv_page_buffer buf[2];
 
struct rndis_message request_msg;
/*
-- 
1.7.4.1

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


[PATCH net-next, 3/3] hv_netvsc: Fix the packet free when it is in skb headroom

2015-04-06 Thread Haiyang Zhang
In the two places changed, we now use netvsc_xmit_completion() which properly
frees hv_netvsc_packet in or not in skb headroom.

Signed-off-by: Haiyang Zhang haiya...@microsoft.com
Reviewed-by: K. Y. Srinivasan k...@microsoft.com
---
 drivers/net/hyperv/hyperv_net.h |1 +
 drivers/net/hyperv/netvsc.c |6 --
 drivers/net/hyperv/netvsc_drv.c |2 +-
 3 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
index 80bc52e..f0b8b3e 100644
--- a/drivers/net/hyperv/hyperv_net.h
+++ b/drivers/net/hyperv/hyperv_net.h
@@ -188,6 +188,7 @@ int netvsc_send(struct hv_device *device,
struct hv_netvsc_packet *packet);
 void netvsc_linkstatus_callback(struct hv_device *device_obj,
struct rndis_message *resp);
+void netvsc_xmit_completion(void *context);
 int netvsc_recv_callback(struct hv_device *device_obj,
struct hv_netvsc_packet *packet,
struct ndis_tcp_ip_checksum_info *csum_info);
diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c
index 7e83c6a..4d4d497 100644
--- a/drivers/net/hyperv/netvsc.c
+++ b/drivers/net/hyperv/netvsc.c
@@ -878,7 +878,9 @@ int netvsc_send(struct hv_device *device,
packet-send_buf_index = section_index;
packet-total_data_buflen += msd_len;
 
-   kfree(msdp-pkt);
+   if (msdp-pkt)
+   netvsc_xmit_completion(msdp-pkt);
+
if (packet-xmit_more) {
msdp-pkt = packet;
msdp-count++;
@@ -902,7 +904,7 @@ int netvsc_send(struct hv_device *device,
if (m_ret != 0) {
netvsc_free_send_slot(net_device,
  msd_send-send_buf_index);
-   kfree(msd_send);
+   netvsc_xmit_completion(msd_send);
}
}
 
diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
index 73f8fba..e5fa094 100644
--- a/drivers/net/hyperv/netvsc_drv.c
+++ b/drivers/net/hyperv/netvsc_drv.c
@@ -229,7 +229,7 @@ static u16 netvsc_select_queue(struct net_device *ndev, 
struct sk_buff *skb,
return q_idx;
 }
 
-static void netvsc_xmit_completion(void *context)
+void netvsc_xmit_completion(void *context)
 {
struct hv_netvsc_packet *packet = (struct hv_netvsc_packet *)context;
struct sk_buff *skb = (struct sk_buff *)
-- 
1.7.4.1

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


[PATCH] staging: lustre: Make cfs_sched_rehash static

2015-04-06 Thread Nickolaus Woodruff
This patch fixes the following sparse warning:

CHECK   drivers/staging/lustre/lustre/libcfs/hash.c
drivers/staging/lustre/lustre/libcfs/hash.c:119:21: warning: symbol
'cfs_sched_rehash' was not declared. Should it be static?

Signed-off-by: Nickolaus Woodruff nickolauswoodr...@gmail.com
---
 drivers/staging/lustre/lustre/libcfs/hash.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/staging/lustre/lustre/libcfs/hash.c 
b/drivers/staging/lustre/lustre/libcfs/hash.c
index a55567e..a4920a2 100644
--- a/drivers/staging/lustre/lustre/libcfs/hash.c
+++ b/drivers/staging/lustre/lustre/libcfs/hash.c
@@ -116,7 +116,7 @@ module_param(warn_on_depth, uint, 0644);
 MODULE_PARM_DESC(warn_on_depth, warning when hash depth is high.);
 #endif

-struct cfs_wi_sched *cfs_sched_rehash;
+static struct cfs_wi_sched *cfs_sched_rehash;

 static inline void
 cfs_hash_nl_lock(union cfs_hash_lock *lock, int exclusive) {}
--
1.9.1

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


[PATCH] sdhci: rtsx: fix 64 BIT DMA quirks

2015-04-06 Thread micky_ching
From: Micky Ching micky_ch...@realsil.com.cn

rts5250 chip failed handle 64 bit ADMA for address below 4G.
Add 64 BIT quirks to disable this feature.

Signed-off-by: Micky Ching micky_ch...@realsil.com.cn
---
 drivers/mmc/host/sdhci-pci.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/mmc/host/sdhci-pci.c b/drivers/mmc/host/sdhci-pci.c
index 0342775..ae8e450 100644
--- a/drivers/mmc/host/sdhci-pci.c
+++ b/drivers/mmc/host/sdhci-pci.c
@@ -650,6 +650,7 @@ static int rtsx_probe_slot(struct sdhci_pci_slot *slot)
 
 static const struct sdhci_pci_fixes sdhci_rtsx = {
.quirks2= SDHCI_QUIRK2_PRESET_VALUE_BROKEN |
+   SDHCI_QUIRK2_BROKEN_64_BIT_DMA |
SDHCI_QUIRK2_BROKEN_DDR50,
.probe_slot = rtsx_probe_slot,
 };
-- 
1.9.1

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


Your response is appreciated

2015-04-06 Thread Mr Mahmoud Zayak
I am Eng. Mahmoud Zayak from Syria. I am looking for a possible tie up with a 
business or individual in your country so that I can do some investments there.

Kindly, reply me so that we can discuss further.

Best Regards
Eng.Mahmoud Zayak
___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


Re: [HPDD-discuss] [PATCH 15/16] staging: lustre: lnet: lnet: fix error return code

2015-04-06 Thread Zhen, Liang
Julia, yes this is a bug that we have already fixed in the latest Lustre.
Sorry we havenĀ¹t submitted this patch to kernel on time.

Thanks
Liang

On 4/5/15, 8:06 PM, Julia Lawall julia.law...@lip6.fr wrote:

Return a negative error code on failure.

A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)

// smpl
@@
identifier ret; expression e1,e2;
@@
(
if (\(ret  0\|ret != 0\))
 { ... return ret; }
|
ret = 0
)
... when != ret = e1
when != ret
*if(...)
{
  ... when != ret = e2
  when forall
 return ret;
}
// /smpl

Signed-off-by: Julia Lawall julia.law...@lip6.fr

---
 drivers/staging/lustre/lnet/lnet/api-ni.c |8 ++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/lustre/lnet/lnet/api-ni.c
b/drivers/staging/lustre/lnet/lnet/api-ni.c
index faceb95..4a14e51 100644
--- a/drivers/staging/lustre/lnet/lnet/api-ni.c
+++ b/drivers/staging/lustre/lnet/lnet/api-ni.c
@@ -650,15 +650,19 @@ lnet_prepare(lnet_pid_t requested_pid)
 
   recs = lnet_res_containers_create(LNET_COOKIE_TYPE_ME, LNET_FL_MAX_MES,
 sizeof(lnet_me_t));
-  if (recs == NULL)
+  if (recs == NULL) {
+  rc = -ENOMEM;
   goto failed;
+  }
 
   the_lnet.ln_me_containers = recs;
 
   recs = lnet_res_containers_create(LNET_COOKIE_TYPE_MD, LNET_FL_MAX_MDS,
 sizeof(lnet_libmd_t));
-  if (recs == NULL)
+  if (recs == NULL) {
+  rc = -ENOMEM;
   goto failed;
+  }
 
   the_lnet.ln_md_containers = recs;
 

___
HPDD-discuss mailing list
hpdd-disc...@lists.01.org
https://lists.01.org/mailman/listinfo/hpdd-discuss

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


Re: [PATCH/RFC 0/6] staging: board: armadillo800eva: Board staging for sh_mobile_lcdc_fb

2015-04-06 Thread Marc Zyngier

Hi Geert,

On 2015-04-03 13:41, Geert Uytterhoeven wrote:

Hi all,

This RFC patch series adds board staging support for 
r8a7740/armadillo.
For now this supports only the frame buffer device for the on-board 
LCD.

The goal is to complete the move to ARM multiplatform kernels for all
shmobile platforms, and drop the existing board files
(arch/arm/mach-shmobile/board-*).

The board staging area was introduced last year to allow continuous
upstream in-tree development and integration of platform devices. It
helps developers integrate devices as platform devices for device
drivers that only provide platform device bindings.  This in turn 
allows

for incremental development of both hardware feature support and DT
binding work in parallel.

This series consists of 4 parts:
  - Patch 1 re-enables compilation of the board staging area, which 
was

disabled after a compile breakage, but has been fixed in the mean
time,
  - Path 2 moves initialization of staging board code to an earlier
moment, as currently it happens after unused PM domains are 
powered

down,
  - Patches 3 and 4 (hopefully) fix the existing kzm9d board staging
code, which was presumably broken by commit 9a1091ef0017c40a
(irqchip: gic: Support hierarchy irq domain.),


Please allow me a semantic correction here: this commit never broke 
anything. It merely revealed how platform code (OMAP, iMX6, shmobile) 
abused the irq_domain subsystem, hoping to get away with only a partial 
conversion to DT. The platform code itself was broken from the moment it 
used DT to discover its interrupt controller.


The truth is, it is not possible to sanely convert bits of a platform 
to DT. The changes creep into all the subsystems, and doing it in stages 
requires tons of ugly hacks (and I've written my share of them).


That being said, I'm off reviewing these two matches.

Thanks,

M.
--
Fast, cheap, reliable. Pick two.
___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


Re: [PATCH] Staging: sm750fb: Remove extra parentheses around right bit shift operation

2015-04-06 Thread Sudip Mukherjee
On Sun, Apr 05, 2015 at 07:11:47AM +0530, Amitoj Kaur Chawla wrote:
 Removes extra parentheses around bitwise right shift operation.
this is not applying. please work against staging-testing.

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


Your response is appreciated

2015-04-06 Thread Mr Mahmoud Zayak
I am Eng. Mahmoud Zayak from Syria. I am looking for a possible tie up with a 
business or individual in your country so that I can do some investments there.

Kindly, reply me so that we can discuss further.

Best Regards
Eng.Mahmoud Zayak
___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


Re: [PATCH/RFC 3/6] staging: board: Add support for translating hwirq to virq numbers

2015-04-06 Thread Marc Zyngier

On 2015-04-03 13:42, Geert Uytterhoeven wrote:

As of commit 9a1091ef0017c40a (irqchip: gic: Support hierarchy irq
domain.), GIC IRQ numbers are virtual, breaking hardcoded hardware 
IRQ

numbers in platform device resources.

Add support for translating hardware IRQ numbers to virtual IRQ 
numbers,

and fixing up platform device resources with hardcoded IRQ numbers.

Add a copyright header, including the original author.

Signed-off-by: Geert Uytterhoeven geert+rene...@glider.be
---
 drivers/staging/board/board.c | 66
+++
 drivers/staging/board/board.h |  5 
 2 files changed, 71 insertions(+)

diff --git a/drivers/staging/board/board.c 
b/drivers/staging/board/board.c

index d5a6abc845191c93..b84ac2837a20bf06 100644
--- a/drivers/staging/board/board.c
+++ b/drivers/staging/board/board.c
@@ -1,10 +1,27 @@
+/*
+ * Copyright (C) 2014 Magnus Damm
+ * Copyright (C) 2015 Glider bvba
+ *
+ * This file is subject to the terms and conditions of the GNU
General Public
+ * License.  See the file COPYING in the main directory of this 
archive

+ * for more details.
+ */
+
+#define pr_fmt(fmt)board_staging:   fmt
+
 #include linux/init.h
+#include linux/irq.h
 #include linux/device.h
 #include linux/kernel.h
 #include linux/of.h
 #include linux/of_address.h
+#include linux/of_irq.h
+
 #include board.h

+static struct device_node *irqc_node __initdata;
+static unsigned int irqc_base __initdata;
+
 static bool find_by_address(u64 base_address)
 {
struct device_node *dn = of_find_all_nodes(NULL);
@@ -38,3 +55,52 @@ bool __init board_staging_dt_node_available(const
struct resource *resource,

return false; /* Nothing found */
 }
+
+int __init board_staging_setup_hwirq_xlate(const char *irqc_match,
+  unsigned int base)
+{
+   irqc_node = of_find_compatible_node(NULL, NULL, irqc_match);
+
+   WARN_ON(!irqc_node);
+   if (!irqc_node)
+   return -ENOENT;
+
+   irqc_base = base;
+   return 0;
+}


And what happens when you have multiple (cascaded) interrupt 
controllers, each wanting to register with this translation service? You 
should at least check that nobody has been here before.



+static unsigned int __init xlate_hwirq(unsigned int hwirq)
+{
+   struct of_phandle_args irq_data;
+   unsigned int irq;
+
+   if (!irqc_node)
+   return hwirq;
+
+   irq_data.np = irqc_node;
+   irq_data.args_count = 3;
+   irq_data.args[0] = 0;
+   irq_data.args[1] = hwirq - irqc_base;
+   irq_data.args[2] = IRQ_TYPE_LEVEL_HIGH;


And what happens for edge interrupts? Or LEVEL_LOW? This is very much 
GIC specific (3 args...). How does it work with non-GIC interrupt 
controllers?



+
+   irq = irq_create_of_mapping(irq_data);
+   if (WARN_ON(!irq))
+   irq = hwirq;
+
+   return irq;
+}
+
+void __init board_staging_fixup_irq_resources(struct resource *res,
+ unsigned int nres)
+{
+   unsigned int i;
+
+   for (i = 0; i  nres; i++)
+   if (res[i].flags == IORESOURCE_IRQ) {
+   unsigned int hwirq = res[i].start;
+   unsigned int virq = xlate_hwirq(hwirq);
+
+   pr_debug(hwirq %u - virq %u\n, hwirq, virq);
+   res[i].start = virq;
+   }
+}
diff --git a/drivers/staging/board/board.h 
b/drivers/staging/board/board.h

index e9c914985d4acb36..4cedc3c46e287eb7 100644
--- a/drivers/staging/board/board.h
+++ b/drivers/staging/board/board.h
@@ -1,10 +1,15 @@
 #ifndef __BOARD_H__
 #define __BOARD_H__
+
 #include linux/init.h
 #include linux/of.h

+struct resource;
+
 bool board_staging_dt_node_available(const struct resource 
*resource,

 unsigned int num_resources);
+int board_staging_setup_hwirq_xlate(const char *irqc_match, unsigned
int base);
+void board_staging_fixup_irq_resources(struct resource *res,
unsigned int nres);

 #define board_staging(str, fn) \
 static int __init runtime_board_check(void)\


It won't surprise you that I don't really like this approach. It is 
controller-specific, restrictive, and allows platform code to continue 
doing something that is essentially wrong. Should this code ever move 
out of staging, it should depend on CONFIG_BROKEN, because this is 
essentially what it is - support code for broken systems. I'd also 
welcome moving parts of the OMAP4/5 code to such CONFIG_BROKEN 
dependency.


Thanks,

M.
--
Fast, cheap, reliable. Pick two.
___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[PATCH] staging: unisys: fix kdump support

2015-04-06 Thread Benjamin Romer
The s-Par drivers used to be out-of-tree, so they needed a parameter to
let them know we were going into a dump. This patch removes that code
and uses the built-in kernel function instead.

Reviewed-by: Jes Sorensen jes.soren...@redhat.com
Signed-off-by: Benjamin Romer benjamin.ro...@unisys.com
---
 drivers/staging/unisys/visorchipset/globals.h   | 1 -
 drivers/staging/unisys/visorchipset/visorchipset_main.c | 7 ++-
 2 files changed, 2 insertions(+), 6 deletions(-)

diff --git a/drivers/staging/unisys/visorchipset/globals.h 
b/drivers/staging/unisys/visorchipset/globals.h
index f76e498..36b21ec 100644
--- a/drivers/staging/unisys/visorchipset/globals.h
+++ b/drivers/staging/unisys/visorchipset/globals.h
@@ -36,7 +36,6 @@ extern int visorchipset_serverregwait;
 extern int visorchipset_clientregwait;
 extern int visorchipset_testteardown;
 extern int visorchipset_disable_controlvm;
-extern int visorchipset_crash_kernel;
 extern int visorchipset_holdchipsetready;
 
 #endif
diff --git a/drivers/staging/unisys/visorchipset/visorchipset_main.c 
b/drivers/staging/unisys/visorchipset/visorchipset_main.c
index f2663d2c..899bf68 100644
--- a/drivers/staging/unisys/visorchipset/visorchipset_main.c
+++ b/drivers/staging/unisys/visorchipset/visorchipset_main.c
@@ -30,6 +30,7 @@
 #include linux/netdevice.h
 #include linux/platform_device.h
 #include linux/uuid.h
+#include linux/crash_dump.h
 
 #define CURRENT_FILE_PC VISOR_CHIPSET_PC_visorchipset_main_c
 #define TEST_VNIC_PHYSITF eth0   /* physical network itf for
@@ -2207,7 +2208,7 @@ visorchipset_init(void)
}
if (!visorchipset_disable_controlvm) {
/* if booting in a crash kernel */
-   if (visorchipset_crash_kernel)
+   if (is_kdump_kernel())
INIT_DELAYED_WORK(periodic_controlvm_work,
  setup_crash_devices_work_queue);
else
@@ -2315,10 +2316,6 @@ module_param_named(disable_controlvm, 
visorchipset_disable_controlvm, int,
 MODULE_PARM_DESC(visorchipset_disable_controlvm,
 1 to disable polling of controlVm channel);
 int visorchipset_disable_controlvm = 0;/* default is off */
-module_param_named(crash_kernel, visorchipset_crash_kernel, int, S_IRUGO);
-MODULE_PARM_DESC(visorchipset_crash_kernel,
-1 means we are running in crash kernel);
-int visorchipset_crash_kernel = 0; /* default is running in non-crash kernel */
 module_param_named(holdchipsetready, visorchipset_holdchipsetready,
   int, S_IRUGO);
 MODULE_PARM_DESC(visorchipset_holdchipsetready,
-- 
2.1.0

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


[PATCH] staging: unisys: fix CamelCase constant names for postcodes

2015-04-06 Thread Benjamin Romer
Fix these Camelcase constants:

VISOR_CHIPSET_PC_controlvm_c = VISOR_CHIPSET_PC_CONTROLVM_C
VISOR_CHIPSET_PC_controlvm_cm2 = VISOR_CHIPSET_PC_CONTROLVM_CM2
VISOR_CHIPSET_PC_controlvm_direct_c =
VISOR_CHIPSET_PC_CONTROLVM_DIRECT_C
VISOR_CHIPSET_PC_file_c = VISOR_CHIPSET_PC_FILE_C
VISOR_CHIPSET_PC_parser_c = VISOR_CHIPSET_PC_PARSER_C
VISOR_CHIPSET_PC_testing_c = VISOR_CHIPSET_PC_TESTING_C
VISOR_CHIPSET_PC_visorchipset_main_c =
VISOR_CHIPSET_PC_VISORCHIPSET_MAIN_C
VISOR_CHIPSET_PC_visorswitchbus_c = VISOR_CHIPSET_PC_VISORSWITCHBUS_C
VISOR_BUS_PC_businst_attr_c = VISOR_BUS_PC_BUSINST_ATTR_C
VISOR_BUS_PC_channel_attr_c = VISOR_BUS_PC_CHANNEL_ATTR_C
VISOR_BUS_PC_devmajorminor_attr_c = VISOR_BUS_PC_DEVMAJORMINOR_ATTR_C
VISOR_BUS_PC_visorbus_main_c = VISOR_BUS_PC_VISORBUS_MAIN_C
VISOR_CLIENT_BUS_PC_visorclientbus_main_c =
VISOR_CLIENT_BUS_PC_VISORCLIENTBUS_MAIN_C
VIRT_HBA_PC_virthba_c = VIRT_HBA_PC_VIRTHBA_C
VIRT_PCI_PC_virtpci_c = VIRT_PCI_PC_VIRTPCI_C
VIRT_NIC_P_virtnic_c = VIRT_NIC_P_VIRTNIC_C
UISLIB_PC_uislib_c = UISLIB_PC_UISLIB_C
UISLIB_PC_uisqueue_c = UISLIB_PC_UISQUEUE_C
UISLIB_PC_uisthread_c = UISLIB_PC_UISTHREAD_C
UISLIB_PC_uisutils_c = UISLIB_PC_UISUTILS_C

Reviewed-by: Jes Sorensen jes.soren...@redhat.com
Signed-off-by: Benjamin Romer benjamin.ro...@unisys.com
---
 drivers/staging/unisys/include/guestlinuxdebug.h | 40 
 1 file changed, 20 insertions(+), 20 deletions(-)

diff --git a/drivers/staging/unisys/include/guestlinuxdebug.h 
b/drivers/staging/unisys/include/guestlinuxdebug.h
index 957a627..1e02d44 100644
--- a/drivers/staging/unisys/include/guestlinuxdebug.h
+++ b/drivers/staging/unisys/include/guestlinuxdebug.h
@@ -26,38 +26,38 @@
 enum driver_pc {   /* POSTCODE driver identifier tuples */
/* visorchipset driver files */
VISOR_CHIPSET_PC = 0xA0,
-   VISOR_CHIPSET_PC_controlvm_c = 0xA1,
-   VISOR_CHIPSET_PC_controlvm_cm2 = 0xA2,
-   VISOR_CHIPSET_PC_controlvm_direct_c = 0xA3,
-   VISOR_CHIPSET_PC_file_c = 0xA4,
-   VISOR_CHIPSET_PC_parser_c = 0xA5,
-   VISOR_CHIPSET_PC_testing_c = 0xA6,
-   VISOR_CHIPSET_PC_visorchipset_main_c = 0xA7,
-   VISOR_CHIPSET_PC_visorswitchbus_c = 0xA8,
+   VISOR_CHIPSET_PC_CONTROLVM_C = 0xA1,
+   VISOR_CHIPSET_PC_CONTROLVM_CM2 = 0xA2,
+   VISOR_CHIPSET_PC_CONTROLVM_DIRECT_C = 0xA3,
+   VISOR_CHIPSET_PC_FILE_C = 0xA4,
+   VISOR_CHIPSET_PC_PARSER_C = 0xA5,
+   VISOR_CHIPSET_PC_TESTING_C = 0xA6,
+   VISOR_CHIPSET_PC_VISORCHIPSET_MAIN_C = 0xA7,
+   VISOR_CHIPSET_PC_VISORSWITCHBUS_C = 0xA8,
/* visorbus driver files */
VISOR_BUS_PC = 0xB0,
-   VISOR_BUS_PC_businst_attr_c = 0xB1,
-   VISOR_BUS_PC_channel_attr_c = 0xB2,
-   VISOR_BUS_PC_devmajorminor_attr_c = 0xB3,
-   VISOR_BUS_PC_visorbus_main_c = 0xB4,
+   VISOR_BUS_PC_BUSINST_ATTR_C = 0xB1,
+   VISOR_BUS_PC_CHANNEL_ATTR_C = 0xB2,
+   VISOR_BUS_PC_DEVMAJORMINOR_ATTR_C = 0xB3,
+   VISOR_BUS_PC_VISORBUS_MAIN_C = 0xB4,
/* visorclientbus driver files */
VISOR_CLIENT_BUS_PC = 0xC0,
-   VISOR_CLIENT_BUS_PC_visorclientbus_main_c = 0xC1,
+   VISOR_CLIENT_BUS_PC_VISORCLIENTBUS_MAIN_C = 0xC1,
/* virt hba driver files */
VIRT_HBA_PC = 0xC2,
-   VIRT_HBA_PC_virthba_c = 0xC3,
+   VIRT_HBA_PC_VIRTHBA_C = 0xC3,
/* virtpci driver files */
VIRT_PCI_PC = 0xC4,
-   VIRT_PCI_PC_virtpci_c = 0xC5,
+   VIRT_PCI_PC_VIRTPCI_C = 0xC5,
/* virtnic driver files */
VIRT_NIC_PC = 0xC6,
-   VIRT_NIC_P_virtnic_c = 0xC7,
+   VIRT_NIC_P_VIRTNIC_C = 0xC7,
/* uislib driver files */
UISLIB_PC = 0xD0,
-   UISLIB_PC_uislib_c = 0xD1,
-   UISLIB_PC_uisqueue_c = 0xD2,
-   UISLIB_PC_uisthread_c = 0xD3,
-   UISLIB_PC_uisutils_c = 0xD4,
+   UISLIB_PC_UISLIB_C = 0xD1,
+   UISLIB_PC_UISQUEUE_C = 0xD2,
+   UISLIB_PC_UISTHREAD_C = 0xD3,
+   UISLIB_PC_UISUTILS_C = 0xD4,
 };
 
 enum event_pc {/* POSTCODE event identifier tuples */
-- 
2.1.0

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