Re: [PATCH v3 1/2] mfd: rtsx: reduce code duplication in rtl8411
On Tue, Dec 17, 2013 at 10:36:58AM +0800, micky_ch...@realsil.com.cn wrote: void rtl8411b_init_params(struct rtsx_pcr *pcr) { - pcr-extra_caps = EXTRA_CAPS_SD_SDR50 | EXTRA_CAPS_SD_SDR104; - pcr-num_slots = 2; - pcr-ops = rtl8411b_pcr_ops; - - pcr-flags = 0; - pcr-card_drive_sel = RTL8411_CARD_DRIVE_DEFAULT; - pcr-sd30_drive_sel_1v8 = DRIVER_TYPE_B; - pcr-sd30_drive_sel_3v3 = DRIVER_TYPE_D; - pcr-aspm_en = ASPM_L1_EN; - pcr-tx_initial_phase = SET_CLOCK_PHASE(23, 7, 14); - pcr-rx_initial_phase = SET_CLOCK_PHASE(4, 3, 10); + rtl8411_init_params(pcr); - pcr-ic_version = rtl8411_get_ic_version(pcr); + rtl8411_pcr_ops.fetch_vendor_settings = + rtl8411b_fetch_vendor_settings; + rtl8411_pcr_ops.extra_init_hw = rtl8411b_extra_init_hw; This is a bug here. If we have both kinds of devices connected at the same time then the kernel crashes. Really structures which hold function pointers should be const. This code is not as good as the original. regards, dan carpenter ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH] staging: dgrp: Fix space prohibited before semicolon
This patch fixed WARNING: space prohibited before semicoloni found by checkpatch.pl within dgrp_tty.c Signed-off-by: Masanari Iida standby2...@gmail.com --- drivers/staging/dgrp/dgrp_tty.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/staging/dgrp/dgrp_tty.c b/drivers/staging/dgrp/dgrp_tty.c index 0d52de3..7a9694c 100644 --- a/drivers/staging/dgrp/dgrp_tty.c +++ b/drivers/staging/dgrp/dgrp_tty.c @@ -371,7 +371,7 @@ static void drp_param(struct ch_struct *ch) ch-ch_flag |= CH_BAUD0; } } else if (ch-ch_custom_speed) { - ch-ch_brate = PORTSERVER_DIVIDEND / ch-ch_custom_speed ; + ch-ch_brate = PORTSERVER_DIVIDEND / ch-ch_custom_speed; if (ch-ch_flag CH_BAUD0) { ch-ch_mout |= DM_DTR | DM_RTS; @@ -752,7 +752,7 @@ static int dgrp_tty_open(struct tty_struct *tty, struct file *file) if (ch-ch_open_error != 0 otype == ch-ch_otype) { retval = (ch-ch_open_error = 2) ? - delay_error : -ENXIO ; + delay_error : -ENXIO; goto unlock; } -- 1.8.5.1.163.gd7aced9 ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH 3/4] imx-drm: fix missing symbol exports
On Tue, Dec 17, 2013 at 12:28:37PM +0800, Shawn Guo wrote: On Mon, Dec 16, 2013 at 11:34:05AM +, Russell King wrote: Trying to build a modular imx-drm results in a number of missing symbol exports, caused by the recent changes to this driver. Add the necessary exports, and the missing MODULE_LICENSE() tag. Since commit 9c74360 (staging: imx-drm: Fix modular build of DRM_IMX_IPUV3) is in place now, I'm not sure if we still need this patch. As that patch has already been merged, I'll drop this one. Thanks. ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH 0/8] Fix some bugs/races in imx-drm
On Tue, Dec 17, 2013 at 01:04:20PM +0800, Shawn Guo wrote: On Mon, Dec 16, 2013 at 12:38:23PM +, Russell King - ARM Linux wrote: Russell King (8): imx-drm: imx-drm-core: fix error cleanup path for imx_drm_add_crtc() imx-drm: imx-drm-core: fix DRM cleanup paths imx-drm: fix missing symbol exports Except the little doubt I replied on this one, for the whole series: Acked-by: Shawn Guo shawn@linaro.org Tested-by: Shawn Guo shawn@linaro.org imx-drm: ipu-v3: fix potential CRTC device registration race imx-drm: imx-tve: don't call sleeping functions beneath enable_lock spinlo imx-drm: imx-drm-core: use defined constant for number of CRTCs. imx-drm: imx-drm-core: make imx_drm_crtc_register() safer imx-drm: imx-drm-core: improve safety of imx_drm_add_crtc() Greg, Do you want me to re-send them with these acks/tested-by's added, or are you happy to take them as-is? I also have some further patches to send (I think three) which apply on top of these but are not fixes (so aren't -rc material), more cleanups. Thanks. ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH 0/8] Fix some bugs/races in imx-drm
On Tue, Dec 17, 2013 at 03:17:02PM +, Russell King - ARM Linux wrote: On Tue, Dec 17, 2013 at 01:04:20PM +0800, Shawn Guo wrote: On Mon, Dec 16, 2013 at 12:38:23PM +, Russell King - ARM Linux wrote: Russell King (8): imx-drm: imx-drm-core: fix error cleanup path for imx_drm_add_crtc() imx-drm: imx-drm-core: fix DRM cleanup paths imx-drm: fix missing symbol exports Except the little doubt I replied on this one, for the whole series: Acked-by: Shawn Guo shawn@linaro.org Tested-by: Shawn Guo shawn@linaro.org imx-drm: ipu-v3: fix potential CRTC device registration race imx-drm: imx-tve: don't call sleeping functions beneath enable_lock spinlo imx-drm: imx-drm-core: use defined constant for number of CRTCs. imx-drm: imx-drm-core: make imx_drm_crtc_register() safer imx-drm: imx-drm-core: improve safety of imx_drm_add_crtc() Greg, Do you want me to re-send them with these acks/tested-by's added, or are you happy to take them as-is? I can take these as-is. I also have some further patches to send (I think three) which apply on top of these but are not fixes (so aren't -rc material), more cleanups. Ok, feel free to send them, I can take them. greg k-h ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH V2] staging:bcm: Code cleanup for InterfaceDld.c
As per the TODO, 1. Removed the developer debug BCM_DEBUG_PRINT() messages. 2. Fixed all the errors found by checkpatch.pl script. 3. Fixed all the line over 80 characters warning found by checkpatch.pl script. Signed-off-by: Gokulnath A gokulnath.avanashilin...@in.bosch.com --- drivers/staging/bcm/InterfaceDld.c | 122 ++--- 1 file changed, 60 insertions(+), 62 deletions(-) diff --git a/drivers/staging/bcm/InterfaceDld.c b/drivers/staging/bcm/InterfaceDld.c index 463bdee..bc2b4e4 100644 --- a/drivers/staging/bcm/InterfaceDld.c +++ b/drivers/staging/bcm/InterfaceDld.c @@ -52,7 +52,8 @@ int InterfaceFileDownload(PVOID arg, struct file *flp, unsigned int on_chip_loc) return errno; } -int InterfaceFileReadbackFromChip(PVOID arg, struct file *flp, unsigned int on_chip_loc) +int InterfaceFileReadbackFromChip(PVOID arg, struct file *flp, + unsigned int on_chip_loc) { char *buff, *buff_readback; unsigned int reg = 0; @@ -80,32 +81,28 @@ int InterfaceFileReadbackFromChip(PVOID arg, struct file *flp, unsigned int on_c while (1) { oldfs = get_fs(); set_fs(get_ds()); - len = vfs_read(flp, (void __force __user *)buff, MAX_TRANSFER_CTRL_BYTE_USB, pos); + len = vfs_read(flp, (void __force __user *)buff, + MAX_TRANSFER_CTRL_BYTE_USB, pos); set_fs(oldfs); fw_down++; if (len = 0) { - if (len 0) { - BCM_DEBUG_PRINT(psIntfAdapter-psAdapter, DBG_TYPE_INITEXIT, MP_INIT, DBG_LVL_ALL, len 0); + if (len 0) errno = len; - } else { + else errno = 0; - BCM_DEBUG_PRINT(psIntfAdapter-psAdapter, DBG_TYPE_INITEXIT, MP_INIT, DBG_LVL_ALL, Got end of file!); - } break; } - bytes = InterfaceRDM(psIntfAdapter, on_chip_loc, buff_readback, len); + bytes = InterfaceRDM(psIntfAdapter, on_chip_loc, + buff_readback, len); if (bytes 0) { Status = bytes; - BCM_DEBUG_PRINT(psIntfAdapter-psAdapter, DBG_TYPE_INITEXIT, MP_INIT, DBG_LVL_ALL, RDM of len %d Failed! %d, len, reg); goto exit; } reg++; if ((len-sizeof(unsigned int)) 4) { if (memcmp(buff_readback, buff, len)) { - BCM_DEBUG_PRINT(psIntfAdapter-psAdapter, DBG_TYPE_INITEXIT, MP_INIT, DBG_LVL_ALL, Firmware Download is not proper %d, fw_down); - BCM_DEBUG_PRINT(psIntfAdapter-psAdapter, DBG_TYPE_INITEXIT, MP_INIT, DBG_LVL_ALL, Length is: %d, len); Status = -EIO; goto exit; } @@ -113,10 +110,8 @@ int InterfaceFileReadbackFromChip(PVOID arg, struct file *flp, unsigned int on_c len -= 4; while (len) { - if (*(unsigned int *)buff_readback[len] != *(unsigned int *)buff[len]) { - BCM_DEBUG_PRINT(psIntfAdapter-psAdapter, DBG_TYPE_INITEXIT, MP_INIT, DBG_LVL_ALL, Firmware Download is not proper %d, fw_down); - BCM_DEBUG_PRINT(psIntfAdapter-psAdapter, DBG_TYPE_INITEXIT, MP_INIT, DBG_LVL_ALL, Val from Binary %x, Val From Read Back %x , *(unsigned int *)buff[len], *(unsigned int*)buff_readback[len]); - BCM_DEBUG_PRINT(psIntfAdapter-psAdapter, DBG_TYPE_INITEXIT, MP_INIT, DBG_LVL_ALL, len =%x!!!, len); + if (*(unsigned int *)buff_readback[len] != + *(unsigned int *)buff[len]) { Status = -EIO; goto exit; } @@ -132,13 +127,15 @@ exit: return Status; } -static int bcm_download_config_file(struct bcm_mini_adapter *Adapter, struct bcm_firmware_info *psFwInfo) +static int bcm_download_config_file(struct bcm_mini_adapter *Adapter, +struct bcm_firmware_info *psFwInfo) { int retval = STATUS_SUCCESS; B_UINT32 value = 0; if (Adapter-pstargetparams == NULL) { - Adapter-pstargetparams = kmalloc(sizeof(struct bcm_target_params), GFP_KERNEL); + Adapter-pstargetparams = + kmalloc(sizeof(struct bcm_target_params), GFP_KERNEL); if (Adapter-pstargetparams == NULL) return -ENOMEM; } @@
Re: [patch] [media] v4l: omap4iss: use snprintf() to make smatch happy
Hi Dan, Thank you for the patch. On Monday 16 December 2013 23:19:50 Dan Carpenter wrote: Smatch complains here because name is a 32 character buffer and we adding the OMAP4 ISS prefix as well for a total of 42 characters. The sd-name buffer can only hold 32 characters. I've changed it to use snprintf() to silence the overflow warning. Also I have removed the call to strlcpy() which is a no-op. Signed-off-by: Dan Carpenter dan.carpen...@oracle.com Acked-by: Laurent Pinchart laurent.pinch...@ideasonboard.com and applied to my tree. diff --git a/drivers/staging/media/omap4iss/iss_csi2.c b/drivers/staging/media/omap4iss/iss_csi2.c index 0ee8381c738d..7ab05126be5d 100644 --- a/drivers/staging/media/omap4iss/iss_csi2.c +++ b/drivers/staging/media/omap4iss/iss_csi2.c @@ -1273,8 +1273,7 @@ static int csi2_init_entities(struct iss_csi2_device *csi2, const char *subname) v4l2_subdev_init(sd, csi2_ops); sd-internal_ops = csi2_internal_ops; sprintf(name, CSI2%s, subname); - strlcpy(sd-name, , sizeof(sd-name)); - sprintf(sd-name, OMAP4 ISS %s, name); + snprintf(sd-name, sizeof(sd-name), OMAP4 ISS %s, name); sd-grp_id = 1 16; /* group ID for iss subdevs */ v4l2_set_subdevdata(sd, csi2); -- Regards, Laurent Pinchart ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [media] v4l: omap4iss: Restore irq flags correctly in omap4iss_video_buffer_next()
Hi Dan, Thank you for the patch. On Monday 16 December 2013 18:06:12 Dan Carpenter wrote: The spin_lock_irqsave() macro is not nestable. The second call will overwrite the first record of flags so the IRQs will not be enabled correctly at the end of the function. I haven't looked at all the callers but it could be that this function is always called with interrupts disabled and the bug doesn't cause problems in real life. The function is called from interrupt handlers only. Would you like to rephrase the commit message accordingly ? Signed-off-by: Dan Carpenter dan.carpen...@oracle.com diff --git a/drivers/staging/media/omap4iss/iss_video.c b/drivers/staging/media/omap4iss/iss_video.c index 766491e6a8d0..c9b71c750b15 100644 --- a/drivers/staging/media/omap4iss/iss_video.c +++ b/drivers/staging/media/omap4iss/iss_video.c @@ -451,9 +451,9 @@ struct iss_buffer *omap4iss_video_buffer_next(struct iss_video *video) } if (video-type == V4L2_BUF_TYPE_VIDEO_CAPTURE pipe-input != NULL) { - spin_lock_irqsave(pipe-lock, flags); + spin_lock(pipe-lock); pipe-state = ~ISS_PIPELINE_STREAM; - spin_unlock_irqrestore(pipe-lock, flags); + spin_unlock(pipe-lock); } buf = list_first_entry(video-dmaqueue, struct iss_buffer, -- Regards, Laurent Pinchart ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH 3/8] staging: dgap: Fixed trailing white space
On Tue, Dec 17, 2013 at 12:48:41PM +0900, Masanari Iida wrote: This patch fixes ERROR: trailing whitespace found by checkpatch.pl, within dgap_fep5.h Signed-off-by: Masanari Iida standby2...@gmail.com The first 3 patches in this series has the exact same Subject, so I can't apply them. Please make them unique and resend. thanks, greg k-h ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH 7/8] staging: dgap: Fixed trailing white space in dgap_sysfs.c
On Tue, Dec 17, 2013 at 12:48:45PM +0900, Masanari Iida wrote: This patch fixes ERROR: trailing whitespace found by checkpatch.pl, within dgap_sysfs.c --- drivers/staging/dgap/dgap_sysfs.c | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) You don't have a signed-off-by line for this patch. Please redo this whole series and resend. thanks, greg k-h ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH] staging: xillybus: Return -ENOMEM if *_iomap fails instead of 0
On Mon, Dec 16, 2013 at 03:50:39PM +0200, Eli Billauer wrote: Bug fix: The error code was not set, so the error condition wasn't reflected in the return value. Reported-by: Wei Yongjun yongjun_...@trendmicro.com.cn Signed-off-by: Eli Billauer eli.billa...@gmail.com Wei wrote half of this patch, and now that I've applied his patch, yours doesn't apply. Please resend on top of my staging-next branch of the staging.git tree and I'll be glad to apply it. And be more careful of attribution in the future please. thanks, greg k-h ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH V2] staging:bcm: Code cleanup for InterfaceDld.c
On Tue, Dec 17, 2013 at 10:38:47PM +0530, Gokulnath A wrote: As per the TODO, 1. Removed the developer debug BCM_DEBUG_PRINT() messages. 2. Fixed all the errors found by checkpatch.pl script. 3. Fixed all the line over 80 characters warning found by checkpatch.pl script. As you say you are doing 3 things, why is this all in one patch? Please only do one-thing-per-patch. Here you could have at least 3 patches in a series, please do that. thanks, greg k-h ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH] Staging: bcm: DDRInit: fixed bracing issues.
On Mon, Dec 16, 2013 at 03:51:58AM -0500, Gary Rookard wrote: removed braces from single statement conditonals. if, else, while opening brace placement was moved to last on first line of each, and closing brace moved to first on new line to follow the linux kernel coding style thus removing checkpatch errors respectfully. Signed-off-by: Gary Alan Rookard garyrook...@gmail.com --- On branch staging-next drivers/staging/bcm/DDRInit.c | 112 -- 1 file changed, 31 insertions(+), 81 deletions(-) Does not apply :( ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH] Staging: bcm: DDRInit: fixed comment issues.
On Fri, Dec 13, 2013 at 10:02:11AM -0500, Gary Rookard wrote: replaced C99 style with C89 standard style comments to follow the linux kernel coding style thus fixing checkpatch errors respectfully. also, in some instances changed comments from inline to side-bar style. Why did you do that? Please just leave them as-is. greg k-h ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH 09/48] staging: comedi: pcmmio: move ai shadow data to device private data
On Tue, Dec 10, 2013 at 10:58:59AM +, Ian Abbott wrote: On 2013-12-09 22:30, H Hartley Sweeten wrote: There is only one ai subdevice in this driver so there is no reason to hold the last sample written to each channel in the subdevice private data. Move the data into the device private data, This gets some of the data out of the subdevice private data union and removes some of the uses of the ugly 'subpriv' macro. The patch title and description are wrong as this is the AO subdevice, but apart from that it's fine! I'll edit it... ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH 3/3] imx-drm: imx-drm-core: merge imx_drm_crtc_register() into imx_drm_add_crtc()
There's no reason for this to be a separate function; merge the two together. Signed-off-by: Russell King rmk+ker...@arm.linux.org.uk --- drivers/staging/imx-drm/imx-drm-core.c | 33 --- 1 files changed, 9 insertions(+), 24 deletions(-) diff --git a/drivers/staging/imx-drm/imx-drm-core.c b/drivers/staging/imx-drm/imx-drm-core.c index 242e8db218ac..05dd24ee80dd 100644 --- a/drivers/staging/imx-drm/imx-drm-core.c +++ b/drivers/staging/imx-drm/imx-drm-core.c @@ -370,29 +370,6 @@ static void imx_drm_connector_unregister( } /* - * register a crtc to the drm core - */ -static int imx_drm_crtc_register(struct imx_drm_crtc *imx_drm_crtc) -{ - struct imx_drm_device *imxdrm = __imx_drm_device(); - int ret; - - ret = drm_mode_crtc_set_gamma_size(imx_drm_crtc-crtc, 256); - if (ret) - return ret; - - drm_crtc_helper_add(imx_drm_crtc-crtc, - imx_drm_crtc-imx_drm_helper_funcs.crtc_helper_funcs); - - drm_crtc_init(imxdrm-drm, imx_drm_crtc-crtc, - imx_drm_crtc-imx_drm_helper_funcs.crtc_funcs); - - drm_mode_group_reinit(imxdrm-drm); - - return 0; -} - -/* * Called by the CRTC driver when all CRTCs are registered. This * puts all the pieces together and initializes the driver. * Once this is called no more CRTCs can be registered since @@ -535,10 +512,18 @@ int imx_drm_add_crtc(struct drm_crtc *crtc, *new_crtc = imx_drm_crtc; - ret = imx_drm_crtc_register(imx_drm_crtc); + ret = drm_mode_crtc_set_gamma_size(imx_drm_crtc-crtc, 256); if (ret) goto err_register; + drm_crtc_helper_add(crtc, + imx_drm_crtc-imx_drm_helper_funcs.crtc_helper_funcs); + + drm_crtc_init(imxdrm-drm, crtc, + imx_drm_crtc-imx_drm_helper_funcs.crtc_funcs); + + drm_mode_group_reinit(imxdrm-drm); + imx_drm_update_possible_crtcs(); mutex_unlock(imxdrm-mutex); -- 1.7.4.4 ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH net] netvsc: don't flush peers notifying work during setting mtu
From: Jason Wang jasow...@redhat.com Date: Fri, 13 Dec 2013 17:21:27 +0800 There's a possible deadlock if we flush the peers notifying work during setting mtu: ... Reported-by: Yaju Cao ya...@redhat.com Tested-by: Yaju Cao ya...@redhat.com Cc: K. Y. Srinivasan k...@microsoft.com Cc: Haiyang Zhang haiya...@microsoft.com Signed-off-by: Jason Wang jasow...@redhat.com --- The patch is needed for stable. Applied and queued up for -stable, thanks Jason. ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH 1/3] imx-drm: imx-drm-core: use the crtc drm device for vblank
There are a couple of ways to get at the drm_device for the vblank operations. One of them is via the private imxdrm structure, the other is via the DRM crtc structure, which also stores a pointer. Use the DRM method instead of our own method. Signed-off-by: Russell King rmk+ker...@arm.linux.org.uk --- drivers/staging/imx-drm/imx-drm-core.c |6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/staging/imx-drm/imx-drm-core.c b/drivers/staging/imx-drm/imx-drm-core.c index 96e4eee344ef..9aa5eaab6539 100644 --- a/drivers/staging/imx-drm/imx-drm-core.c +++ b/drivers/staging/imx-drm/imx-drm-core.c @@ -142,19 +142,19 @@ EXPORT_SYMBOL_GPL(imx_drm_crtc_panel_format); int imx_drm_crtc_vblank_get(struct imx_drm_crtc *imx_drm_crtc) { - return drm_vblank_get(imx_drm_crtc-imxdrm-drm, imx_drm_crtc-pipe); + return drm_vblank_get(imx_drm_crtc-crtc-dev, imx_drm_crtc-pipe); } EXPORT_SYMBOL_GPL(imx_drm_crtc_vblank_get); void imx_drm_crtc_vblank_put(struct imx_drm_crtc *imx_drm_crtc) { - drm_vblank_put(imx_drm_crtc-imxdrm-drm, imx_drm_crtc-pipe); + drm_vblank_put(imx_drm_crtc-crtc-dev, imx_drm_crtc-pipe); } EXPORT_SYMBOL_GPL(imx_drm_crtc_vblank_put); void imx_drm_handle_vblank(struct imx_drm_crtc *imx_drm_crtc) { - drm_handle_vblank(imx_drm_crtc-imxdrm-drm, imx_drm_crtc-pipe); + drm_handle_vblank(imx_drm_crtc-crtc-dev, imx_drm_crtc-pipe); } EXPORT_SYMBOL_GPL(imx_drm_handle_vblank); -- 1.7.4.4 ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH 0/8] Fix some bugs/races in imx-drm
On Tue, Dec 17, 2013 at 08:05:41AM -0800, Greg Kroah-Hartman wrote: On Tue, Dec 17, 2013 at 03:17:02PM +, Russell King - ARM Linux wrote: On Tue, Dec 17, 2013 at 01:04:20PM +0800, Shawn Guo wrote: On Mon, Dec 16, 2013 at 12:38:23PM +, Russell King - ARM Linux wrote: Russell King (8): imx-drm: imx-drm-core: fix error cleanup path for imx_drm_add_crtc() imx-drm: imx-drm-core: fix DRM cleanup paths imx-drm: fix missing symbol exports Except the little doubt I replied on this one, for the whole series: Acked-by: Shawn Guo shawn@linaro.org Tested-by: Shawn Guo shawn@linaro.org imx-drm: ipu-v3: fix potential CRTC device registration race imx-drm: imx-tve: don't call sleeping functions beneath enable_lock spinlo imx-drm: imx-drm-core: use defined constant for number of CRTCs. imx-drm: imx-drm-core: make imx_drm_crtc_register() safer imx-drm: imx-drm-core: improve safety of imx_drm_add_crtc() Greg, Do you want me to re-send them with these acks/tested-by's added, or are you happy to take them as-is? I can take these as-is. Thanks. I also have some further patches to send (I think three) which apply on top of these but are not fixes (so aren't -rc material), more cleanups. Ok, feel free to send them, I can take them. They'll be along shortly. Diffstat looks smaller - just one file: drivers/staging/imx-drm/imx-drm-core.c | 55 +++ 1 files changed, 20 insertions(+), 35 deletions(-) Russell King (3): imx-drm: imx-drm-core: use the crtc drm device for vblank imx-drm: imx-drm-core: avoid going the long route round for drm_device imx-drm: imx-drm-core: merge imx_drm_crtc_register() into imx_drm_add_crtc() ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH 2/3] imx-drm: imx-drm-core: avoid going the long route round for drm_device
We have the drm_device available, so rather than storing it and then using the stored version, us the one we already have available to us. Signed-off-by: Russell King rmk+ker...@arm.linux.org.uk --- drivers/staging/imx-drm/imx-drm-core.c | 16 1 files changed, 8 insertions(+), 8 deletions(-) diff --git a/drivers/staging/imx-drm/imx-drm-core.c b/drivers/staging/imx-drm/imx-drm-core.c index 9aa5eaab6539..242e8db218ac 100644 --- a/drivers/staging/imx-drm/imx-drm-core.c +++ b/drivers/staging/imx-drm/imx-drm-core.c @@ -88,9 +88,9 @@ static int imx_drm_driver_unload(struct drm_device *drm) imx_drm_device_put(); - drm_vblank_cleanup(imxdrm-drm); - drm_kms_helper_poll_fini(imxdrm-drm); - drm_mode_config_cleanup(imxdrm-drm); + drm_vblank_cleanup(drm); + drm_kms_helper_poll_fini(drm); + drm_mode_config_cleanup(drm); return 0; } @@ -424,15 +424,15 @@ static int imx_drm_driver_load(struct drm_device *drm, unsigned long flags) mutex_lock(imxdrm-mutex); - drm_kms_helper_poll_init(imxdrm-drm); + drm_kms_helper_poll_init(drm); /* setup the grouping for the legacy output */ - ret = drm_mode_group_init_legacy_group(imxdrm-drm, - imxdrm-drm-primary-mode_group); + ret = drm_mode_group_init_legacy_group(drm, + drm-primary-mode_group); if (ret) goto err_kms; - ret = drm_vblank_init(imxdrm-drm, MAX_CRTC); + ret = drm_vblank_init(drm, MAX_CRTC); if (ret) goto err_kms; @@ -441,7 +441,7 @@ static int imx_drm_driver_load(struct drm_device *drm, unsigned long flags) * by drm timer once a current process gives up ownership of * vblank event.(after drm_vblank_put function is called) */ - imxdrm-drm-vblank_disable_allowed = true; + drm-vblank_disable_allowed = true; if (!imx_drm_device_get()) { ret = -EINVAL; -- 1.7.4.4 ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH] Staging: bcm: DDRInit: fixed issues w/ commenting.
removed C99 comments to follow the linux kernel coding style thus fixing checkpatch errors respectfully. Signed-off-by: Gary Alan Rookard garyrook...@gmail.com --- On branch staging-next drivers/staging/bcm/DDRInit.c | 271 +- 1 file changed, 136 insertions(+), 135 deletions(-) diff --git a/drivers/staging/bcm/DDRInit.c b/drivers/staging/bcm/DDRInit.c index 939fe73..d1aaa53 100644 --- a/drivers/staging/bcm/DDRInit.c +++ b/drivers/staging/bcm/DDRInit.c @@ -5,15 +5,15 @@ #define DDR_DUMP_INTERNAL_DEVICE_MEMORY 0xBFC02B00 #define MIPS_CLOCK_REG 0x0f000820 -//DDR INIT-133Mhz -#define T3_SKIP_CLOCK_PROGRAM_DUMP_133MHZ 12 //index for 0x0F007000 -static struct bcm_ddr_setting asT3_DDRSetting133MHz[] = {// # DPLL Clock Setting +/* DDR INIT-133Mhz */ +#define T3_SKIP_CLOCK_PROGRAM_DUMP_133MHZ 12 /* index for 0x0F007000 */ +static struct bcm_ddr_setting asT3_DDRSetting133MHz[] = {/* DPLL Clock Setting */ {0x0F000800, 0x7212}, {0x0f000820, 0x07F13FFF}, {0x0f000810, 0x0F95}, {0x0f000860, 0x}, {0x0f000880, 0x03DD}, - // Changed source for X-bar and MIPS clock to APLL + /* Changed source for X-bar and MIPS clock to APLL */ {0x0f000840, 0x0FFF1B00}, {0x0f000870, 0x0002}, {0x0F00a044, 0x1fff}, @@ -21,7 +21,7 @@ static struct bcm_ddr_setting asT3_DDRSetting133MHz[] = {// # DPLL Clock Se {0x0F00a084, 0x1Cff}, {0x0F00a080, 0x1C00}, {0x0F00a04C, 0x000C}, - //Memcontroller Default values + /* Memcontroller Default values */ {0x0F007000, 0x00010001}, {0x0F007004, 0x01010100}, {0x0F007008, 0x0101}, @@ -29,17 +29,17 @@ static struct bcm_ddr_setting asT3_DDRSetting133MHz[] = {// # DPLL Clock Se {0x0F007010, 0x0100}, {0x0F007014, 0x01000100}, {0x0F007018, 0x0100}, - {0x0F00701c, 0x01020001},// POP - 0x00020001 Normal 0x01020001 - {0x0F007020, 0x04030107}, //Normal - 0x04030107 POP - 0x05030107 + {0x0F00701c, 0x01020001},/* POP - 0x00020001 Normal 0x01020001 */ + {0x0F007020, 0x04030107}, /* Normal - 0x04030107 POP - 0x05030107 */ {0x0F007024, 0x0207}, {0x0F007028, 0x02020202}, - {0x0F00702c, 0x0206060a},//ROB- 0x0205050a,//0x0206060a + {0x0F00702c, 0x0206060a},/* ROB- 0x0205050a,//0x0206060a */ {0x0F007030, 0x0500}, {0x0F007034, 0x0003}, - {0x0F007038, 0x110a0200},//ROB - 0x110a0200,//0x180a0200,// 0x1f0a0200 - {0x0F00703C, 0x02101010},//ROB - 0x02101010,//0x02101018}, - {0x0F007040, 0x45751200},//ROB - 0x45751200,//0x450f1200}, - {0x0F007044, 0x110a0d00},//ROB - 0x110a0d00//0x111f0d00 + {0x0F007038, 0x110a0200},/* ROB - 0x110a0200,//0x180a0200,// 0x1f0a0200 */ + {0x0F00703C, 0x02101010},/* ROB - 0x02101010,//0x02101018}, */ + {0x0F007040, 0x45751200},/* ROB - 0x45751200,//0x450f1200}, */ + {0x0F007044, 0x110a0d00},/* ROB - 0x110a0d00//0x111f0d00 */ {0x0F007048, 0x081b0306}, {0x0F00704c, 0x}, {0x0F007050, 0x001c}, @@ -56,16 +56,16 @@ static struct bcm_ddr_setting asT3_DDRSetting133MHz[] = {// # DPLL Clock Se {0x0F00707C, 0x}, {0x0F007080, 0x}, {0x0F007084, 0x}, - //# Enable BW improvement within memory controller + /* Enable BW improvement within memory controller */ {0x0F007094, 0x0104}, - //# Enable 2 ports within X-bar + /* Enable 2 ports within X-bar */ {0x0F00A000, 0x0016}, - //# Enable start bit within memory controller + /* Enable start bit within memory controller */ {0x0F007018, 0x0101} }; -//80Mhz -#define T3_SKIP_CLOCK_PROGRAM_DUMP_80MHZ 10 //index for 0x0F007000 -static struct bcm_ddr_setting asT3_DDRSetting80MHz[] = {// # DPLL Clock Setting +/* 80Mhz */ +#define T3_SKIP_CLOCK_PROGRAM_DUMP_80MHZ 10 /* index for 0x0F007000 */ +static struct bcm_ddr_setting asT3_DDRSetting80MHz[] = {/* DPLL Clock Setting */ {0x0f000810, 0x0F95}, {0x0f000820, 0x07f1}, {0x0f000860, 0x}, @@ -76,7 +76,7 @@ static struct bcm_ddr_setting asT3_DDRSetting80MHz[] = {// # DPLL Clock Settin {0x0F00a080, 0x1C00}, {0x0F00a000, 0x0016}, {0x0F00a04C, 0x000C}, - //Memcontroller Default values + /* Memcontroller Default values */ {0x0F007000, 0x00010001}, {0x0F007004, 0x0100}, {0x0F007008, 0x0101}, @@ -112,19 +112,19 @@ static struct bcm_ddr_setting asT3_DDRSetting80MHz[] = {// # DPLL Clock Settin {0x0F007080, 0x}, {0x0F007084, 0x}, {0x0F007094, 0x0104}, - //# Enable start bit within memory controller + /* Enable start bit within memory controller */ {0x0F007018, 0x0101} };
Re: [PATCH v2] vme_user: Update API to work in mixed environments
On Mon, Dec 09, 2013 at 10:05:40AM -0600, Aaron Sierra wrote: This patch updates the vme_master and vme_slave structures to use types with well defined size and to prevent the compiler from inserting padding (between enable and vme_addr for one). The original vme_master and vme_slave structs would be different sizes and have different layouts depending on whether they were built for a 32-bit or 64-bit system. On x86 it is possible to have a 32-bit userspace and a 64-bit kernel. In this type of environment, the userspace and kernel vme_user APIs would disagree and prevent ioctls from executing (based on ioctl signatures from _IOR and _IOW). Signed-off-by: Aaron Sierra asie...@xes-inc.com Acked-by: Martyn Welch martyn.we...@ge.com --- drivers/staging/vme/devices/vme_user.h | 20 ++-- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/drivers/staging/vme/devices/vme_user.h b/drivers/staging/vme/devices/vme_user.h index 280ccc7..c3b4964 100644 --- a/drivers/staging/vme/devices/vme_user.h +++ b/drivers/staging/vme/devices/vme_user.h @@ -7,10 +7,10 @@ * VMEbus Master Window Configuration Structure */ struct vme_master { - int enable; /* State of Window */ - unsigned long long vme_addr;/* Starting Address on the VMEbus */ - unsigned long long size;/* Window Size */ - u32 aspace; /* Address Space */ + u32 enable; /* State of Window */ + u64 vme_addr; /* Starting Address on the VMEbus */ + u64 size; /* Window Size */ + u32 aspace; /* Address Space */ Variable types that cross the user/kernel boundry need to have __ in the front of them. SO these need to be __u32, __u64 and the like. Care to send a patch that fixes this as an add-on to this one (I'll take this one as it's good on it's own.) thanks, greg k-h ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH v3 1/2] mfd: rtsx: reduce code duplication in rtl8411
On 12/17/2013 03:28 PM, Dan Carpenter wrote: On Tue, Dec 17, 2013 at 10:36:58AM +0800, micky_ch...@realsil.com.cn wrote: diff --git a/drivers/mfd/rtsx_pcr.h b/drivers/mfd/rtsx_pcr.h index 947e79b..26b52ec 100644 --- a/drivers/mfd/rtsx_pcr.h +++ b/drivers/mfd/rtsx_pcr.h @@ -63,4 +63,12 @@ static inline u8 map_sd_drive(int idx) #define rtl8411_reg_to_sd30_drive_sel_3v3(reg)(((reg) 5) 0x07) #define rtl8411b_reg_to_sd30_drive_sel_3v3(reg) ((reg) 0x03) +#define set_pull_ctrl_tables(__device)\ +do { \ + pcr-sd_pull_ctl_enable_tbl = __device##_sd_pull_ctl_enable_tbl; \ + pcr-sd_pull_ctl_disable_tbl = __device##_sd_pull_ctl_disable_tbl; \ + pcr-ms_pull_ctl_enable_tbl = __device##_ms_pull_ctl_enable_tbl; \ + pcr-ms_pull_ctl_disable_tbl = __device##_ms_pull_ctl_disable_tbl; \ +} while (0) + #endif This is nasty... With readable code, you should understand just from looking at it what the code is doing but this obscures it completely. It shouldn't reference the pcr variable without passing it in as an argument but even with that cleanup I don't really like it. To be honest, I don't see the problem with the original code. Using macro can reduce some code, and define as set_pull_ctl_tables(pcr, dev) is much better for understand ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH 0/8] Fix some bugs/races in imx-drm
On Tue, Dec 17, 2013 at 07:09:56PM +, Russell King - ARM Linux wrote: On Tue, Dec 17, 2013 at 08:05:41AM -0800, Greg Kroah-Hartman wrote: On Tue, Dec 17, 2013 at 03:17:02PM +, Russell King - ARM Linux wrote: On Tue, Dec 17, 2013 at 01:04:20PM +0800, Shawn Guo wrote: On Mon, Dec 16, 2013 at 12:38:23PM +, Russell King - ARM Linux wrote: Russell King (8): imx-drm: imx-drm-core: fix error cleanup path for imx_drm_add_crtc() imx-drm: imx-drm-core: fix DRM cleanup paths imx-drm: fix missing symbol exports Except the little doubt I replied on this one, for the whole series: Acked-by: Shawn Guo shawn@linaro.org Tested-by: Shawn Guo shawn@linaro.org imx-drm: ipu-v3: fix potential CRTC device registration race imx-drm: imx-tve: don't call sleeping functions beneath enable_lock spinlo imx-drm: imx-drm-core: use defined constant for number of CRTCs. imx-drm: imx-drm-core: make imx_drm_crtc_register() safer imx-drm: imx-drm-core: improve safety of imx_drm_add_crtc() Greg, Do you want me to re-send them with these acks/tested-by's added, or are you happy to take them as-is? I can take these as-is. Thanks. I also have some further patches to send (I think three) which apply on top of these but are not fixes (so aren't -rc material), more cleanups. Ok, feel free to send them, I can take them. They'll be along shortly. Diffstat looks smaller - just one file: drivers/staging/imx-drm/imx-drm-core.c | 55 +++ 1 files changed, 20 insertions(+), 35 deletions(-) Russell King (3): imx-drm: imx-drm-core: use the crtc drm device for vblank imx-drm: imx-drm-core: avoid going the long route round for drm_device imx-drm: imx-drm-core: merge imx_drm_crtc_register() into imx_drm_add_crtc() I'll apply these after the first round goes into Linus's tree to make the merging easier (i.e. after the next -rc). thanks, greg k-h ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH 2/3] imx-drm: imx-drm-core: avoid going the long route round for drm_device
On Tue, Dec 17, 2013 at 07:10:47PM +, Russell King wrote: We have the drm_device available, so rather than storing it and then using the stored version, us the one we already have available to us. Signed-off-by: Russell King rmk+ker...@arm.linux.org.uk --- drivers/staging/imx-drm/imx-drm-core.c | 16 1 files changed, 8 insertions(+), 8 deletions(-) diff --git a/drivers/staging/imx-drm/imx-drm-core.c b/drivers/staging/imx-drm/imx-drm-core.c index 9aa5eaab6539..242e8db218ac 100644 --- a/drivers/staging/imx-drm/imx-drm-core.c +++ b/drivers/staging/imx-drm/imx-drm-core.c @@ -88,9 +88,9 @@ static int imx_drm_driver_unload(struct drm_device *drm) imx_drm_device_put(); - drm_vblank_cleanup(imxdrm-drm); - drm_kms_helper_poll_fini(imxdrm-drm); - drm_mode_config_cleanup(imxdrm-drm); + drm_vblank_cleanup(drm); + drm_kms_helper_poll_fini(drm); + drm_mode_config_cleanup(drm); With the changes, 'imxdrm' in this function becomes an unused variable. Other than that, for the series: Acked-by: Shawn Guo shawn@linaro.org Tested-by: Shawn Guo shawn@linaro.org Shawn return 0; } @@ -424,15 +424,15 @@ static int imx_drm_driver_load(struct drm_device *drm, unsigned long flags) mutex_lock(imxdrm-mutex); - drm_kms_helper_poll_init(imxdrm-drm); + drm_kms_helper_poll_init(drm); /* setup the grouping for the legacy output */ - ret = drm_mode_group_init_legacy_group(imxdrm-drm, - imxdrm-drm-primary-mode_group); + ret = drm_mode_group_init_legacy_group(drm, + drm-primary-mode_group); if (ret) goto err_kms; - ret = drm_vblank_init(imxdrm-drm, MAX_CRTC); + ret = drm_vblank_init(drm, MAX_CRTC); if (ret) goto err_kms; @@ -441,7 +441,7 @@ static int imx_drm_driver_load(struct drm_device *drm, unsigned long flags) * by drm timer once a current process gives up ownership of * vblank event.(after drm_vblank_put function is called) */ - imxdrm-drm-vblank_disable_allowed = true; + drm-vblank_disable_allowed = true; if (!imx_drm_device_get()) { ret = -EINVAL; -- 1.7.4.4 ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
[PATCH v4 0/2] mfd: rtsx: decrease driver size and add new device
From: Micky Ching micky_ch...@realsil.com.cn we add a macro to simplify setting pull control, and use a common init function to init the common params for 8411-like chips. at last we add support for rtl8402 chip. Micky Ching (2): mfd: rtsx: add set pull control macro and simplify rtl8411 mfd: rtsx: add support for card reader rtl8402 drivers/mfd/rtl8411.c | 95 ++-- drivers/mfd/rtsx_pcr.c |5 +++ drivers/mfd/rtsx_pcr.h |9 + 3 files changed, 66 insertions(+), 43 deletions(-) -- 1.7.9.5 ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH v4 0/2] mfd: rtsx: decrease driver size and add new device
On Wed, Dec 18, 2013 at 10:03:11AM +0800, micky_ch...@realsil.com.cn wrote: From: Micky Ching micky_ch...@realsil.com.cn we add a macro to simplify setting pull control, and use a common init function to init the common params for 8411-like chips. at last we add support for rtl8402 chip. Micky Ching (2): mfd: rtsx: add set pull control macro and simplify rtl8411 mfd: rtsx: add support for card reader rtl8402 drivers/mfd/rtl8411.c | 95 ++-- drivers/mfd/rtsx_pcr.c |5 +++ drivers/mfd/rtsx_pcr.h |9 + 3 files changed, 66 insertions(+), 43 deletions(-) Great. Looks good to me. Reviewed-by: Dan Carpenter dan.carpen...@oracle.com regards, dan carpenter ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
Re: [PATCH] staging: xillybus: Return -EIO if *_iomap fails, instead of 0
On Tue, Dec 17, 2013 at 09:36:29PM +0200, Eli Billauer wrote: This patch replicates the correction made by Wei Yongjun on a second occurrence of the same bug. The first correction was in commit 8eec411bfa1f8a2e0a2de45c988fd30c3efb. Always put patch title as well as the hash. regards, dan carpenter ___ devel mailing list de...@linuxdriverproject.org http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel