[PATCH 1/2] staging: sm750fb: remove 750LE code
750LE is a special version of the hardware with Ip Core and Silicon Motion is making this hardware only for Huawei. It is not available to anyone else. So its better to remove the codes related to SM750LE. Signed-off-by: Sudip Mukherjee --- this patch will generate warning from checkpatch. but since those were already there in the file so nothing has been done about it. and I am not sure if this patch will apply or not as some patches of Lorenzo Stoakes and Ragavendra Nagraj are already pending. if those patches are already applied then this will not apply. drivers/staging/sm750fb/ddk750_chip.c | 64 ++ drivers/staging/sm750fb/ddk750_mode.c | 19 +++--- drivers/staging/sm750fb/ddk750_swi2c.c | 3 -- drivers/staging/sm750fb/sm750.c| 9 ++--- drivers/staging/sm750fb/sm750_hw.c | 55 - 5 files changed, 24 insertions(+), 126 deletions(-) diff --git a/drivers/staging/sm750fb/ddk750_chip.c b/drivers/staging/sm750fb/ddk750_chip.c index 33add64..a8ebedd 100644 --- a/drivers/staging/sm750fb/ddk750_chip.c +++ b/drivers/staging/sm750fb/ddk750_chip.c @@ -20,22 +20,14 @@ logical_chip_type_t getChipType(void) physicalID = devId750;//either 0x718 or 0x750 physicalRev = revId750; -if (physicalID == 0x718) -{ -chip = SM718; -} -else if (physicalID == 0x750) -{ -chip = SM750; - /* SM750 and SM750LE are different in their revision ID only. */ - if (physicalRev == SM750LE_REVISION_ID){ - chip = SM750LE; - } -} -else -{ -chip = SM_UNKNOWN; -} + if (physicalID == 0x750) + { + chip = SM750; + } + else + { + chip = SM_UNKNOWN; + } return chip; } @@ -94,10 +86,6 @@ unsigned int getPllValue(clock_type_t clockType, pll_value_t *pPLL) unsigned int getChipClock(void) { pll_value_t pll; -#if 1 - if(getChipType() == SM750LE) - return MHz(130); -#endif return getPllValue(MXCLK_PLL, &pll); } @@ -112,11 +100,6 @@ void setChipClock(unsigned int frequency) { pll_value_t pll; unsigned int ulActualMxClk; -#if 1 - /* Cheok_0509: For SM750LE, the chip clock is fixed. Nothing to set. */ - if (getChipType() == SM750LE) - return; -#endif if (frequency != 0) { @@ -143,11 +126,7 @@ void setChipClock(unsigned int frequency) void setMemoryClock(unsigned int frequency) { unsigned int ulReg, divisor; - #if 1 - /* Cheok_0509: For SM750LE, the memory clock is fixed. Nothing to set. */ - if (getChipType() == SM750LE) - return; -#endif + if (frequency != 0) { /* Set the frequency to the maximum frequency that the DDR Memory can take @@ -193,11 +172,7 @@ void setMemoryClock(unsigned int frequency) void setMasterClock(unsigned int frequency) { unsigned int ulReg, divisor; - #if 1 - /* Cheok_0509: For SM750LE, the memory clock is fixed. Nothing to set. */ - if (getChipType() == SM750LE) - return; -#endif + if (frequency != 0) { /* Set the frequency to the maximum frequency that the SM750 engine can @@ -237,10 +212,6 @@ unsigned int ddk750_getVMSize(void) unsigned int reg; unsigned int data; - /* sm750le only use 64 mb memory*/ - if(getChipType() == SM750LE) - return MB(64); - /* for 750,always use power mode0*/ reg = PEEK32(MODE0_GATE); reg = FIELD_SET(reg,MODE0_GATE,GPIO,ON); @@ -291,12 +262,6 @@ int ddk750_initHw(initchip_param_t * pInitParam) ulReg = FIELD_SET(ulReg,VGA_CONFIGURATION,PLL,PANEL); ulReg = FIELD_SET(ulReg,VGA_CONFIGURATION,MODE,GRAPHIC); POKE32(VGA_CONFIGURATION,ulReg); - }else{ -#if defined(__i386__) || defined( __x86_64__) - /* set graphic mode via IO method */ - outb_p(0x88,0x3d4); - outb_p(0x06,0x3d5); -#endif } /* Set the Main Chip Clock */ @@ -444,15 +409,6 @@ unsigned int calcPllValue(unsigned int request_orig,pll_value_t *pll) unsigned int tmpClock,ret; pllcalparam * xparm; -#if 1 - if (getChipType() == SM750LE) -{ -/* SM750LE don't have prgrammable PLL and M/N values to work on. - Just return the requested clock. */ -return request_orig; -} -#endif - ret = 0; miniDiff = ~0; request = request_orig / 1000; diff --git a/drivers/staging/sm750fb/ddk750_mode.c b/drivers/staging/sm750fb/ddk750_mode.c index 2e418fb..44e346a 100644 --- a/drivers/staging/sm750fb/ddk750_mode.c +++ b/drivers/staging/sm750fb/ddk750_mode.c @@ -107,17 +107,13 @@ static int programModeRegisters(mode_parameter_t * pModeParam,pll_value_t * pll) FIELD_SET
[PATCH 2/2] staging: sm750fb: fix build warning
after removing the 750LE related codes we started getting a build warning about an unused function. Hence removing that function also. Signed-off-by: Sudip Mukherjee --- drivers/staging/sm750fb/ddk750_mode.c | 70 --- 1 file changed, 70 deletions(-) diff --git a/drivers/staging/sm750fb/ddk750_mode.c b/drivers/staging/sm750fb/ddk750_mode.c index 44e346a..df4e14e 100644 --- a/drivers/staging/sm750fb/ddk750_mode.c +++ b/drivers/staging/sm750fb/ddk750_mode.c @@ -4,76 +4,6 @@ #include "ddk750_mode.h" #include "ddk750_chip.h" -/* - SM750LE only: -This function takes care extra registers and bit fields required to set -up a mode in SM750LE - - Explanation about Display Control register: -HW only supports 7 predefined pixel clocks, and clock select is -in bit 29:27 ofDisplay Control register. -*/ -static unsigned long displayControlAdjust_SM750LE(mode_parameter_t *pModeParam, unsigned long dispControl) -{ - unsigned long x, y; - - x = pModeParam->horizontal_display_end; - y = pModeParam->vertical_display_end; - -/* SM750LE has to set up the top-left and bottom-right - registers as well. - Note that normal SM750/SM718 only use those two register for - auto-centering mode. -*/ -POKE32(CRT_AUTO_CENTERING_TL, - FIELD_VALUE(0, CRT_AUTO_CENTERING_TL, TOP, 0) -| FIELD_VALUE(0, CRT_AUTO_CENTERING_TL, LEFT, 0)); - -POKE32(CRT_AUTO_CENTERING_BR, - FIELD_VALUE(0, CRT_AUTO_CENTERING_BR, BOTTOM, y-1) -| FIELD_VALUE(0, CRT_AUTO_CENTERING_BR, RIGHT, x-1)); - -/* Assume common fields in dispControl have been properly set before - calling this function. - This function only sets the extra fields in dispControl. -*/ - - /* Clear bit 29:27 of display control register */ -dispControl &= FIELD_CLEAR(CRT_DISPLAY_CTRL, CLK); - - /* Set bit 29:27 of display control register for the right clock */ - /* Note that SM750LE only need to supported 7 resoluitons. */ - if ( x == 800 && y == 600 ) - dispControl = FIELD_SET(dispControl, CRT_DISPLAY_CTRL, CLK, PLL41); - else if (x == 1024 && y == 768) - dispControl = FIELD_SET(dispControl, CRT_DISPLAY_CTRL, CLK, PLL65); - else if (x == 1152 && y == 864) - dispControl = FIELD_SET(dispControl, CRT_DISPLAY_CTRL, CLK, PLL80); - else if (x == 1280 && y == 768) - dispControl = FIELD_SET(dispControl, CRT_DISPLAY_CTRL, CLK, PLL80); - else if (x == 1280 && y == 720) - dispControl = FIELD_SET(dispControl, CRT_DISPLAY_CTRL, CLK, PLL74); - else if (x == 1280 && y == 960) - dispControl = FIELD_SET(dispControl, CRT_DISPLAY_CTRL, CLK, PLL108); - else if (x == 1280 && y == 1024) - dispControl = FIELD_SET(dispControl, CRT_DISPLAY_CTRL, CLK, PLL108); - else /* default to VGA clock */ - dispControl = FIELD_SET(dispControl, CRT_DISPLAY_CTRL, CLK, PLL25); - - /* Set bit 25:24 of display controller */ -dispControl = FIELD_SET(dispControl, CRT_DISPLAY_CTRL, CRTSELECT, CRT); -dispControl = FIELD_SET(dispControl, CRT_DISPLAY_CTRL, RGBBIT, 24BIT); - -/* Set bit 14 of display controller */ -dispControl = FIELD_SET(dispControl, CRT_DISPLAY_CTRL, CLOCK_PHASE, ACTIVE_LOW); - -POKE32(CRT_DISPLAY_CTRL, dispControl); - - return dispControl; -} - - - /* only timing related registers will be programed */ static int programModeRegisters(mode_parameter_t * pModeParam,pll_value_t * pll) { -- 1.8.1.2 ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH] staging: vt6655: remove deprecated use of pci api
Replace occurences of the pci api by appropriate call to the dma api. A simplified version of the semantic patch that finds this problem is as follows: (http://coccinelle.lip6.fr) @deprecated@ idexpression id; position p; @@ ( pci_dma_supported@p ( id, ...) | pci_alloc_consistent@p ( id, ...) ) @bad1@ idexpression id; position deprecated.p; @@ ...when != &id->dev when != pci_get_drvdata ( id ) when != pci_enable_device ( id ) ( pci_dma_supported@p ( id, ...) | pci_alloc_consistent@p ( id, ...) ) @depends on !bad1@ idexpression id; expression direction; position deprecated.p; @@ ( - pci_dma_supported@p ( id, + dma_supported ( &id->dev, ... + , GFP_ATOMIC ) | - pci_alloc_consistent@p ( id, + dma_alloc_coherent ( &id->dev, ... + , GFP_ATOMIC ) ) Signed-off-by: Quentin Lambert --- drivers/staging/vt6655/device_main.c | 39 ++-- drivers/staging/vt6655/dpc.c | 4 ++-- 2 files changed, 22 insertions(+), 21 deletions(-) diff --git a/drivers/staging/vt6655/device_main.c b/drivers/staging/vt6655/device_main.c index 14c935fed8a0..4bb4f8ee4132 100644 --- a/drivers/staging/vt6655/device_main.c +++ b/drivers/staging/vt6655/device_main.c @@ -530,12 +530,12 @@ static bool device_init_rings(struct vnt_private *pDevice) void *vir_pool; /*allocate all RD/TD rings a single pool*/ - vir_pool = pci_zalloc_consistent(pDevice->pcid, + vir_pool = dma_zalloc_coherent(&pDevice->pcid->dev, pDevice->sOpts.nRxDescs0 * sizeof(SRxDesc) + pDevice->sOpts.nRxDescs1 * sizeof(SRxDesc) + pDevice->sOpts.nTxDescs[0] * sizeof(STxDesc) + pDevice->sOpts.nTxDescs[1] * sizeof(STxDesc), -&pDevice->pool_dma); +&pDevice->pool_dma, GFP_ATOMIC); if (vir_pool == NULL) { dev_err(&pDevice->pcid->dev, "allocate desc dma memory failed\n"); return false; @@ -549,16 +549,17 @@ static bool device_init_rings(struct vnt_private *pDevice) pDevice->rd1_pool_dma = pDevice->rd0_pool_dma + pDevice->sOpts.nRxDescs0 * sizeof(SRxDesc); - pDevice->tx0_bufs = pci_zalloc_consistent(pDevice->pcid, + pDevice->tx0_bufs = dma_zalloc_coherent(&pDevice->pcid->dev, pDevice->sOpts.nTxDescs[0] * PKT_BUF_SZ + pDevice->sOpts.nTxDescs[1] * PKT_BUF_SZ + CB_BEACON_BUF_SIZE + CB_MAX_BUF_SIZE, - &pDevice->tx_bufs_dma0); + &pDevice->tx_bufs_dma0, + GFP_ATOMIC); if (pDevice->tx0_bufs == NULL) { dev_err(&pDevice->pcid->dev, "allocate buf dma memory failed\n"); - pci_free_consistent(pDevice->pcid, + dma_free_coherent(&pDevice->pcid->dev, pDevice->sOpts.nRxDescs0 * sizeof(SRxDesc) + pDevice->sOpts.nRxDescs1 * sizeof(SRxDesc) + pDevice->sOpts.nTxDescs[0] * sizeof(STxDesc) + @@ -604,7 +605,7 @@ static bool device_init_rings(struct vnt_private *pDevice) static void device_free_rings(struct vnt_private *pDevice) { - pci_free_consistent(pDevice->pcid, + dma_free_coherent(&pDevice->pcid->dev, pDevice->sOpts.nRxDescs0 * sizeof(SRxDesc) + pDevice->sOpts.nRxDescs1 * sizeof(SRxDesc) + pDevice->sOpts.nTxDescs[0] * sizeof(STxDesc) + @@ -614,7 +615,7 @@ static void device_free_rings(struct vnt_private *pDevice) ); if (pDevice->tx0_bufs) - pci_free_consistent(pDevice->pcid, + dma_free_coherent(&pDevice->pcid->dev, pDevice->sOpts.nTxDescs[0] * PKT_BUF_SZ + pDevice->sOpts.nTxDescs[1] * PKT_BUF_SZ + CB_BEACON_BUF_SIZE + @@ -679,8 +680,8 @@ static void device_free_rd0_ring(struct vnt_private *pDevice) PSRxDescpDesc = &(pDevice->aRD0Ring[i]); PDEVICE_RD_INFO pRDInfo = pDesc->pRDInfo; - pci_unmap_single(pDevice->pcid, pRDInfo->skb_dma, -pDevice->rx_buf_sz, PCI_DMA_FROMDEVICE); + dma_unmap_single(&pDevice->pcid->dev, pRDInfo->skb_dma, +pDevice->rx_buf_sz, DMA_FROM_DEVICE); dev_kfree_skb(pRDInfo->skb); @@ -696,8 +697,8 @@ static void device_free_rd1_ring(struct vnt_private *pDevice)
Re: [PATCH 1/2] staging: sm750fb: remove 750LE code
On Thu, Mar 19, 2015 at 06:47:40PM +0530, Sudip Mukherjee wrote: > 750LE is a special version of the hardware with Ip Core and > Silicon Motion is making this hardware only for Huawei. It is not > available to anyone else. And Huawei doesn't run Linux? (hint, they do...) Why remove this if someone can use it? I don't understand. thanks, greg k-h ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH 1/2] staging: sm750fb: remove 750LE code
On Thu, Mar 19, 2015 at 06:47:40PM +0530, Sudip Mukherjee wrote: > 750LE is a special version of the hardware with Ip Core and > Silicon Motion is making this hardware only for Huawei. It is not > available to anyone else. Huawei isn't selling this? I don't understand. regards, dan carpenter ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH 1/1] Drivers: hv: vmbus: Don't wait after requesting offers
Don't wait after sending request for offers to the host. This wait is unnecessary and simply adds 5 seconds to the boot time. Signed-off-by: K. Y. Srinivasan Cc: --- drivers/hv/channel_mgmt.c | 11 --- 1 files changed, 0 insertions(+), 11 deletions(-) diff --git a/drivers/hv/channel_mgmt.c b/drivers/hv/channel_mgmt.c index 25dbbaf..bb39705 100644 --- a/drivers/hv/channel_mgmt.c +++ b/drivers/hv/channel_mgmt.c @@ -884,7 +884,6 @@ int vmbus_request_offers(void) struct vmbus_channel_message_header *msg; struct vmbus_channel_msginfo *msginfo; int ret; - unsigned long t; msginfo = kmalloc(sizeof(*msginfo) + sizeof(struct vmbus_channel_message_header), @@ -892,8 +891,6 @@ int vmbus_request_offers(void) if (!msginfo) return -ENOMEM; - init_completion(&msginfo->waitevent); - msg = (struct vmbus_channel_message_header *)msginfo->msg; msg->msgtype = CHANNELMSG_REQUESTOFFERS; @@ -907,14 +904,6 @@ int vmbus_request_offers(void) goto cleanup; } - t = wait_for_completion_timeout(&msginfo->waitevent, 5*HZ); - if (t == 0) { - ret = -ETIMEDOUT; - goto cleanup; - } - - - cleanup: kfree(msginfo); -- 1.7.4.1 ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH 1/2] staging: sm750fb: remove 750LE code
On Thu, Mar 19, 2015 at 02:22:36PM +0100, Greg Kroah-Hartman wrote: > On Thu, Mar 19, 2015 at 06:47:40PM +0530, Sudip Mukherjee wrote: > > 750LE is a special version of the hardware with Ip Core and > > Silicon Motion is making this hardware only for Huawei. It is not > > available to anyone else. > > And Huawei doesn't run Linux? (hint, they do...) > > Why remove this if someone can use it? I don't understand. this is part of my conversation with Teddy Wang of Silicon Motion: "I think you can remove it . SM750LE is a special version. And it's just a IP core. No one except huawei will use it." and moreover I donot have that 750LE hardware to test any changes. I just have the SM712 and SM750 hardware. so now, whatever you decide .. I will surely like to have the code in place. regards sudip > > thanks, > > greg k-h ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH 1/2] staging: sm750fb: remove 750LE code
On Thu, Mar 19, 2015 at 07:33:28PM +0530, Sudip Mukherjee wrote: > On Thu, Mar 19, 2015 at 02:22:36PM +0100, Greg Kroah-Hartman wrote: > > On Thu, Mar 19, 2015 at 06:47:40PM +0530, Sudip Mukherjee wrote: > > > 750LE is a special version of the hardware with Ip Core and > > > Silicon Motion is making this hardware only for Huawei. It is not > > > available to anyone else. > > > > And Huawei doesn't run Linux? (hint, they do...) > > > > Why remove this if someone can use it? I don't understand. > > this is part of my conversation with Teddy Wang of Silicon Motion: > "I think you can remove it . SM750LE is a special version. And it's > just a IP core. No one except huawei will use it." > > and moreover I donot have that 750LE hardware to test any changes. > I just have the SM712 and SM750 hardware. so > > now, whatever you decide .. I will surely like to have the code in > place. I suggest to leave it, it's not costing anything to keep around, and I think you removed additional code with this patch anyway, which wasn't good... thanks, greg k-h ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH 1/2] staging: sm750fb: remove 750LE code
On Thu, Mar 19, 2015 at 03:15:39PM +0100, Greg Kroah-Hartman wrote: > On Thu, Mar 19, 2015 at 07:33:28PM +0530, Sudip Mukherjee wrote: > > On Thu, Mar 19, 2015 at 02:22:36PM +0100, Greg Kroah-Hartman wrote: > > place. > > I suggest to leave it, it's not costing anything to keep around, and I > think you removed additional code with this patch anyway, which wasn't > good... fine, then please discard this series. additional code means only a chip comparison for SM718 which this driver donot have any support for. ohh, and one request, I have some patches pending for staging/sm7xxfb and staging/panel, if you please review, and if ok, apply them then i can send the followon patches. regards sudip > > thanks, > > greg k-h ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
RE: [PATCH V3 2/2 net-next] hyperv: Support batched notification
> -Original Message- > From: Jason Wang [mailto:jasow...@redhat.com] > Sent: Tuesday, March 17, 2015 8:09 PM > To: KY Srinivasan > Cc: da...@davemloft.net; net...@vger.kernel.org; linux- > ker...@vger.kernel.org; de...@linuxdriverproject.org; o...@aepfle.de; > a...@canonical.com; KY Srinivasan > Subject: Re: [PATCH V3 2/2 net-next] hyperv: Support batched notification > > > > On Wed, Mar 18, 2015 at 12:02 AM, K. Y. Srinivasan > wrote: > > Optimize notifying the host by deferring notification until there > > are no more packets to be sent. This will help in batching the > > requests > > on the host. > > > > Signed-off-by: K. Y. Srinivasan > > --- > > drivers/net/hyperv/hyperv_net.h |2 +- > > drivers/net/hyperv/netvsc.c | 14 +- > > drivers/net/hyperv/netvsc_drv.c |2 +- > > drivers/net/hyperv/rndis_filter.c |2 +- > > 4 files changed, 12 insertions(+), 8 deletions(-) > > > > diff --git a/drivers/net/hyperv/hyperv_net.h > > b/drivers/net/hyperv/hyperv_net.h > > index 4815843..3fd9896 100644 > > --- a/drivers/net/hyperv/hyperv_net.h > > +++ b/drivers/net/hyperv/hyperv_net.h > > @@ -184,7 +184,7 @@ struct rndis_device { > > int netvsc_device_add(struct hv_device *device, void > > *additional_info); > > int netvsc_device_remove(struct hv_device *device); > > int netvsc_send(struct hv_device *device, > > - struct hv_netvsc_packet *packet); > > + struct hv_netvsc_packet *packet, bool kick_q); > > void netvsc_linkstatus_callback(struct hv_device *device_obj, > > struct rndis_message *resp); > > int netvsc_recv_callback(struct hv_device *device_obj, > > diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c > > index 208eb05..9003b94 100644 > > --- a/drivers/net/hyperv/netvsc.c > > +++ b/drivers/net/hyperv/netvsc.c > > @@ -707,7 +707,7 @@ static u32 netvsc_copy_to_send_buf(struct > > netvsc_device *net_device, > > } > > > > int netvsc_send(struct hv_device *device, > > - struct hv_netvsc_packet *packet) > > + struct hv_netvsc_packet *packet, bool kick_q) > > { > > struct netvsc_device *net_device; > > int ret = 0; > > @@ -719,6 +719,7 @@ int netvsc_send(struct hv_device *device, > > u32 msg_size = 0; > > struct sk_buff *skb = NULL; > > u16 q_idx = packet->q_idx; > > + u32 vmbus_flags = > VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED; > > > > > > net_device = get_outbound_net_device(device); > > @@ -768,18 +769,21 @@ int netvsc_send(struct hv_device *device, > > return -ENODEV; > > > > if (packet->page_buf_cnt) { > > - ret = vmbus_sendpacket_pagebuffer(out_channel, > > + ret = vmbus_sendpacket_pagebuffer_ctl(out_channel, > > packet->page_buf, > > packet->page_buf_cnt, > > &sendMessage, > > sizeof(struct > nvsp_message), > > - req_id); > > + req_id, > > + vmbus_flags, > > + kick_q); > > } else { > > - ret = vmbus_sendpacket(out_channel, &sendMessage, > > + ret = vmbus_sendpacket_ctl(out_channel, &sendMessage, > > sizeof(struct nvsp_message), > > req_id, > > VM_PKT_DATA_INBAND, > > - > VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED); > > + vmbus_flags, > > + kick_q); > > } > > > > if (ret == 0) { > > diff --git a/drivers/net/hyperv/netvsc_drv.c > > b/drivers/net/hyperv/netvsc_drv.c > > index a06bd66..eae58db 100644 > > --- a/drivers/net/hyperv/netvsc_drv.c > > +++ b/drivers/net/hyperv/netvsc_drv.c > > @@ -556,7 +556,7 @@ do_send: > > packet->page_buf_cnt = init_page_array(rndis_msg, > rndis_msg_size, > > skb, &packet->page_buf[0]); > > > > - ret = netvsc_send(net_device_ctx->device_ctx, packet); > > + ret = netvsc_send(net_device_ctx->device_ctx, packet, > > !skb->xmit_more); > > > > Looks like the issue of V2 still there (E.g we need to kick when > hv_ringbuffer_write() returns -EAGAIN? Jason, this issue will be handled in the lower layer. I have already submitted a patch to the vmbus Driver that correctly signals the host when EAGAIN is encountered. Regards, K. Y ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH] sm750fb: Fix C99 Comments and if else braces
The edits have been made to remove C99 Comments and properly indent the if-else statements in the file while taking care of the braces according to Linux coding style. Signed-off-by: Amitoj Kaur Chawla --- drivers/staging/sm750fb/ddk750_chip.c | 25 +++-- 1 file changed, 11 insertions(+), 14 deletions(-) diff --git a/drivers/staging/sm750fb/ddk750_chip.c b/drivers/staging/sm750fb/ddk750_chip.c index 33add64..33fa456 100644 --- a/drivers/staging/sm750fb/ddk750_chip.c +++ b/drivers/staging/sm750fb/ddk750_chip.c @@ -17,25 +17,22 @@ logical_chip_type_t getChipType(void) char physicalRev; logical_chip_type_t chip; - physicalID = devId750;//either 0x718 or 0x750 + physicalID = devId750;/* either 0x718 or 0x750 */ physicalRev = revId750; -if (physicalID == 0x718) -{ -chip = SM718; -} -else if (physicalID == 0x750) -{ -chip = SM750; + if (physicalID == 0x718) { + chip = SM718; + } + else if (physicalID == 0x750) { + chip = SM750; /* SM750 and SM750LE are different in their revision ID only. */ - if (physicalRev == SM750LE_REVISION_ID){ + if (physicalRev == SM750LE_REVISION_ID) { chip = SM750LE; } -} -else -{ -chip = SM_UNKNOWN; -} + } + else { + chip = SM_UNKNOWN; + } return chip; } -- 1.9.1 ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH] sm750fb: Fix C99 Comments and if else braces
Hi Amitoj Kaur Chawla, On 2015.03.19 19:39, Amitoj Kaur Chawla wrote: > The edits have been made to remove C99 Comments and properly indent > the if-else statements in the file while taking care of the braces according > to > Linux coding style. > > Signed-off-by: Amitoj Kaur Chawla > --- > drivers/staging/sm750fb/ddk750_chip.c | 25 +++-- > 1 file changed, 11 insertions(+), 14 deletions(-) > > diff --git a/drivers/staging/sm750fb/ddk750_chip.c > b/drivers/staging/sm750fb/ddk750_chip.c > index 33add64..33fa456 100644 > --- a/drivers/staging/sm750fb/ddk750_chip.c > +++ b/drivers/staging/sm750fb/ddk750_chip.c > @@ -17,25 +17,22 @@ logical_chip_type_t getChipType(void) > char physicalRev; > logical_chip_type_t chip; > > - physicalID = devId750;//either 0x718 or 0x750 > + physicalID = devId750;/* either 0x718 or 0x750 */ Add a space here after ;? > physicalRev = revId750; > > -if (physicalID == 0x718) > -{ > -chip = SM718; > -} > -else if (physicalID == 0x750) > -{ > -chip = SM750; > + if (physicalID == 0x718) { > + chip = SM718; > + } > + else if (physicalID == 0x750) { > + chip = SM750; > /* SM750 and SM750LE are different in their revision ID only. */ > - if (physicalRev == SM750LE_REVISION_ID){ > + if (physicalRev == SM750LE_REVISION_ID) { > chip = SM750LE; > } > -} > -else > -{ > -chip = SM_UNKNOWN; > -} > + } > + else { > + chip = SM_UNKNOWN; > + } > > return chip; > } > -- Thanks, Giedrius ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH] sm750fb: Fix Comment and if else braces
The edits have been made to add a space before the comment and the errors in braces in the if-else statements. Previously in commit 2d34f53f1065878cd881ac61a183f8e836583d51, removed the C99 comments and errors in if-else indentation and braces. Signed-off-by: Amitoj Kaur Chawla --- drivers/staging/sm750fb/ddk750_chip.c | 11 --- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/drivers/staging/sm750fb/ddk750_chip.c b/drivers/staging/sm750fb/ddk750_chip.c index 33fa456..bdf6a73 100644 --- a/drivers/staging/sm750fb/ddk750_chip.c +++ b/drivers/staging/sm750fb/ddk750_chip.c @@ -17,20 +17,17 @@ logical_chip_type_t getChipType(void) char physicalRev; logical_chip_type_t chip; - physicalID = devId750;/* either 0x718 or 0x750 */ + physicalID = devId750; /* either 0x718 or 0x750 */ physicalRev = revId750; if (physicalID == 0x718) { chip = SM718; - } - else if (physicalID == 0x750) { + } else if (physicalID == 0x750) { chip = SM750; /* SM750 and SM750LE are different in their revision ID only. */ - if (physicalRev == SM750LE_REVISION_ID) { + if (physicalRev == SM750LE_REVISION_ID) chip = SM750LE; - } - } - else { + } else { chip = SM_UNKNOWN; } -- 1.9.1 ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH] sm750fb: Fix Comment and if else braces
Hi Amitoj Kaur Chawla, On 2015.03.19 20:05, Amitoj Kaur Chawla wrote: > The edits have been made to add a space before the comment and the errors in > braces in the if-else statements. > Previously in commit 2d34f53f1065878cd881ac61a183f8e836583d51, removed > the C99 comments and errors in if-else indentation and braces. The previous patch isn't in the git repo yet so it doesn't have a commit id thus this one is wrong. You should've just made a v2 and made that change. I recommend you to look over this: http://kernelnewbies.org/FirstKernelPatch Just remove the HEAD commit in your local git repo, add that space and then when using `git format-patch` use the "--subject-prefix" option to add that it's a second version. Then after "---" you can say what was changed in the second version. For example (I'm sure you can think of a better one!): Signed-off-by: ... --- v2: added a space after a statement in a line where a coding style error was fixed. drivers/... > > Signed-off-by: Amitoj Kaur Chawla > --- > drivers/staging/sm750fb/ddk750_chip.c | 11 --- > 1 file changed, 4 insertions(+), 7 deletions(-) > > diff --git a/drivers/staging/sm750fb/ddk750_chip.c > b/drivers/staging/sm750fb/ddk750_chip.c > index 33fa456..bdf6a73 100644 > --- a/drivers/staging/sm750fb/ddk750_chip.c > +++ b/drivers/staging/sm750fb/ddk750_chip.c > @@ -17,20 +17,17 @@ logical_chip_type_t getChipType(void) > char physicalRev; > logical_chip_type_t chip; > > - physicalID = devId750;/* either 0x718 or 0x750 */ > + physicalID = devId750; /* either 0x718 or 0x750 */ > physicalRev = revId750; > > if (physicalID == 0x718) { > chip = SM718; > - } > - else if (physicalID == 0x750) { > + } else if (physicalID == 0x750) { > chip = SM750; > /* SM750 and SM750LE are different in their revision ID only. */ > - if (physicalRev == SM750LE_REVISION_ID) { > + if (physicalRev == SM750LE_REVISION_ID) > chip = SM750LE; > - } > - } > - else { > + } else { > chip = SM_UNKNOWN; > } > > -- Thanks, Giedrius ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH] Staging: wlan-ng: hfa384x: wrap long line
This fixes the coding style issue "line over 80 characters" found by checkpatch.pl Signed-off-by: Sven Dziadek --- drivers/staging/wlan-ng/hfa384x.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/staging/wlan-ng/hfa384x.h b/drivers/staging/wlan-ng/hfa384x.h index 8f20910..73c646b 100644 --- a/drivers/staging/wlan-ng/hfa384x.h +++ b/drivers/staging/wlan-ng/hfa384x.h @@ -1413,7 +1413,8 @@ int hfa384x_drvr_start(hfa384x_t *hw); int hfa384x_drvr_stop(hfa384x_t *hw); int hfa384x_drvr_txframe(hfa384x_t *hw, struct sk_buff *skb, -union p80211_hdr *p80211_hdr, struct p80211_metawep *p80211_wep); +union p80211_hdr *p80211_hdr, +struct p80211_metawep *p80211_wep); void hfa384x_tx_timeout(wlandevice_t *wlandev); int hfa384x_cmd_initialize(hfa384x_t *hw); -- 2.1.4 ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH] sm750fb: Fix C99 Comments and if else braces
On Thu, 2015-03-19 at 23:09 +0530, Amitoj Kaur Chawla wrote: > The edits have been made to remove C99 Comments and properly indent > the if-else statements in the file while taking care of the braces according > to > Linux coding style. Please scan your proposed patches with checkpatch and fix possible style defects before sending them. ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
RE: [PATCH V3 2/2 net-next] hyperv: Support batched notification
On Fri, Mar 20, 2015 at 12:53 AM, KY Srinivasan wrote: -Original Message- From: Jason Wang [mailto:jasow...@redhat.com] Sent: Tuesday, March 17, 2015 8:09 PM To: KY Srinivasan Cc: da...@davemloft.net; net...@vger.kernel.org; linux- ker...@vger.kernel.org; de...@linuxdriverproject.org; o...@aepfle.de; a...@canonical.com; KY Srinivasan Subject: Re: [PATCH V3 2/2 net-next] hyperv: Support batched notification On Wed, Mar 18, 2015 at 12:02 AM, K. Y. Srinivasan wrote: > Optimize notifying the host by deferring notification until there > are no more packets to be sent. This will help in batching the > requests > on the host. > > Signed-off-by: K. Y. Srinivasan > --- > drivers/net/hyperv/hyperv_net.h |2 +- > drivers/net/hyperv/netvsc.c | 14 +- > drivers/net/hyperv/netvsc_drv.c |2 +- > drivers/net/hyperv/rndis_filter.c |2 +- > 4 files changed, 12 insertions(+), 8 deletions(-) > > diff --git a/drivers/net/hyperv/hyperv_net.h > b/drivers/net/hyperv/hyperv_net.h > index 4815843..3fd9896 100644 > --- a/drivers/net/hyperv/hyperv_net.h > +++ b/drivers/net/hyperv/hyperv_net.h > @@ -184,7 +184,7 @@ struct rndis_device { > int netvsc_device_add(struct hv_device *device, void > *additional_info); > int netvsc_device_remove(struct hv_device *device); > int netvsc_send(struct hv_device *device, > - struct hv_netvsc_packet *packet); > + struct hv_netvsc_packet *packet, bool kick_q); > void netvsc_linkstatus_callback(struct hv_device *device_obj, > struct rndis_message *resp); > int netvsc_recv_callback(struct hv_device *device_obj, > diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c > index 208eb05..9003b94 100644 > --- a/drivers/net/hyperv/netvsc.c > +++ b/drivers/net/hyperv/netvsc.c > @@ -707,7 +707,7 @@ static u32 netvsc_copy_to_send_buf(struct > netvsc_device *net_device, > } > > int netvsc_send(struct hv_device *device, > - struct hv_netvsc_packet *packet) > + struct hv_netvsc_packet *packet, bool kick_q) > { > struct netvsc_device *net_device; > int ret = 0; > @@ -719,6 +719,7 @@ int netvsc_send(struct hv_device *device, > u32 msg_size = 0; > struct sk_buff *skb = NULL; > u16 q_idx = packet->q_idx; > + u32 vmbus_flags = VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED; > > > net_device = get_outbound_net_device(device); > @@ -768,18 +769,21 @@ int netvsc_send(struct hv_device *device, > return -ENODEV; > > if (packet->page_buf_cnt) { > - ret = vmbus_sendpacket_pagebuffer(out_channel, > + ret = vmbus_sendpacket_pagebuffer_ctl(out_channel, > packet->page_buf, > packet->page_buf_cnt, > &sendMessage, > sizeof(struct nvsp_message), > - req_id); > + req_id, > + vmbus_flags, > + kick_q); > } else { > - ret = vmbus_sendpacket(out_channel, &sendMessage, > + ret = vmbus_sendpacket_ctl(out_channel, &sendMessage, > sizeof(struct nvsp_message), > req_id, > VM_PKT_DATA_INBAND, > - VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED); > + vmbus_flags, > + kick_q); > } > > if (ret == 0) { > diff --git a/drivers/net/hyperv/netvsc_drv.c > b/drivers/net/hyperv/netvsc_drv.c > index a06bd66..eae58db 100644 > --- a/drivers/net/hyperv/netvsc_drv.c > +++ b/drivers/net/hyperv/netvsc_drv.c > @@ -556,7 +556,7 @@ do_send: > packet->page_buf_cnt = init_page_array(rndis_msg, rndis_msg_size, > skb, &packet->page_buf[0]); > > - ret = netvsc_send(net_device_ctx->device_ctx, packet); > + ret = netvsc_send(net_device_ctx->device_ctx, packet, > !skb->xmit_more); > Looks like the issue of V2 still there (E.g we need to kick when hv_ringbuffer_write() returns -EAGAIN? Jason, this issue will be handled in the lower layer. I have already submitted a patch to the vmbus Driver that correctly signals the host when EAGAIN is encountered. Regards, K. Y Okay, find the mail but looks like I was not cced. Please keep me in the cc list for hyperv patches. Thanks ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel