Re: [PATCH 3/17]DVB:Siano drivers - Changing some field names and debug messages.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Em 20-09-2011 07:30, Doron Cohen escreveu:
> Hi,
> This patch is changing field names and debug messages to be more clear.
> 
>>From 5b3525a0860992b3811dd9ebd4c797b79e14631a Mon Sep 17 00:00:00 2001
> From: Doron Cohen <doronc@xxxxxxxxxxxx>
> Date: Thu, 15 Sep 2011 14:30:24 +0300
> Subject: [PATCH 06/21] Change debug prints and struct field names to be
> more clear.
> 
> Thanks,
> Doron Cohen
> 
> ---
>  drivers/media/dvb/siano/Kconfig      |   17 +++-------
>  drivers/media/dvb/siano/Makefile     |   10 ++++++
>  drivers/media/dvb/siano/smscoreapi.c |   20 +++++++----
>  drivers/media/dvb/siano/smsir.c      |   60
> ++++++++++++++++-----------------

Also mangled.

>  drivers/media/dvb/siano/smsir.h      |    2 +-
>  5 files changed, 57 insertions(+), 52 deletions(-)
> 
> diff --git a/drivers/media/dvb/siano/Kconfig
> b/drivers/media/dvb/siano/Kconfig
> index aeca46f..bb91911 100644
> --- a/drivers/media/dvb/siano/Kconfig
> +++ b/drivers/media/dvb/siano/Kconfig
> @@ -4,7 +4,7 @@
>  
>  config SMS_SIANO_MDTV
>  	tristate "Siano SMS1xxx based MDTV receiver"
> -	depends on DVB_CORE && RC_CORE && HAS_DMA
> +	depends on DVB_CORE && HAS_DMA
>  	---help---
>  	  Choose Y or M here if you have MDTV receiver with a Siano chipset.
>  
> @@ -19,18 +19,12 @@ menu "Siano module components"
>  
>  # Kernel sub systems support
>  
> -config SMS_DVB3_SUBSYS
> -	bool "DVB v.3 Subsystem support"
> -	depends on DVB_CORE
> -	default y if DVB_CORE
> -	---help---
> -	Choose if you would like to have DVB v.3 kernel sub-system support.
> -
> -config SMS_DVB5_S2API_SUBSYS
> -	bool "DVB v.5 (S2 API) Subsystem support"
> +config SMS_RC_SUPPORT_SUBSYS
> +	bool "Remote Control Subsystem support"
> +	depends on RC_CORE
>  	default n
>  	---help---
> -	Choose if you would like to have DVB v.5 (S2 API) kernel sub-system
> support.
> +	Choose if you would like to have Siano's ir remote control sub-system
> support.
>  
>  config SMS_HOSTLIB_SUBSYS
>  	bool "Host Library Subsystem support"
> @@ -39,7 +33,6 @@ config SMS_HOSTLIB_SUBSYS
>  	Choose if you would like to have Siano's host library kernel
> sub-system support.
>  
>  if SMS_HOSTLIB_SUBSYS
> -
>  config SMS_NET_SUBSYS
>  	tristate "Siano Network Adapter"
>  	depends on NET
> diff --git a/drivers/media/dvb/siano/Makefile
> b/drivers/media/dvb/siano/Makefile
> index affaf01..a5e52f5 100644
> --- a/drivers/media/dvb/siano/Makefile
> +++ b/drivers/media/dvb/siano/Makefile
> @@ -11,3 +11,13 @@ EXTRA_CFLAGS += -Idrivers/media/dvb/dvb-core
>  
>  EXTRA_CFLAGS += $(extra-cflags-y) $(extra-cflags-m)
>  
> +ifdef CONFIG_SMS_RC_SUPPORT_SUBSYS
> +	EXTRA_CFLAGS += -DSMS_RC_SUPPORT_SUBSYS
> +endif
> +
> +ifdef CONFIG_SMS_HOSTLIB_SUBSYS
> +	EXTRA_CFLAGS += -DSMS_HOSTLIB_SUBSYS
> +endif

Please, avoid using ifdef's inside the code. Makes harder to analyze it.

Instead, move it to the header files. For example, you can just move the
 smscore_init_ir() function to the IR .c file, and use, at the header:

#ifdef CONFIG_SMS_RC
int smscore_init_ir(struct smscore_device_t *coredev);
#else
int smscore_init_ir(struct smscore_device_t *coredev) { return 0; };
#endif

At Makefile, you can just do something like:

obj-$(CONFIG_SMS_RC) += smsir.c


> +
> +
> +
> diff --git a/drivers/media/dvb/siano/smscoreapi.c
> b/drivers/media/dvb/siano/smscoreapi.c
> index 115604c..7c74544 100644
> --- a/drivers/media/dvb/siano/smscoreapi.c
> +++ b/drivers/media/dvb/siano/smscoreapi.c
> @@ -426,27 +426,26 @@ static int smscore_sendrequest_and_wait(struct
> smscore_device_t *coredev,
>  			msecs_to_jiffies(SMS_PROTOCOL_MAX_RAOUNDTRIP_MS)) ?
>  			0 : -ETIME;
>  }
> -
> +#ifdef SMS_RC_SUPPORT_SUBSYS
>  /**
>   * Starts & enables IR operations
>   *
>   * @return 0 on success, < 0 on error.
>   */
>  static int smscore_init_ir(struct smscore_device_t *coredev)
> -{
> +{ 
>  	int ir_io;
>  	int rc;
>  	void *buffer;
> -
> -	coredev->ir.dev = NULL;
> +	coredev->ir.rc_dev = NULL;
>  	ir_io = sms_get_board(smscore_get_board_id(coredev))->board_cfg.ir;
>  	if (ir_io) {/* only if IR port exist we use IR sub-module */
>  		sms_info("IR loading");
>  		rc = sms_ir_init(coredev);
> -
>  		if	(rc != 0)
>  			sms_err("Error initialization DTV IR sub-module");
> -		else {
> +		else 
> +		{
>  			buffer = kmalloc(sizeof(struct SmsMsgData_ST2) +
>  						SMS_DMA_ALIGNMENT,
>  						GFP_KERNEL | GFP_DMA);
> @@ -477,6 +476,7 @@ static int smscore_init_ir(struct smscore_device_t
> *coredev)
>  
>  	return 0;
>  }
> +#endif /*SMS_RC_SUPPORT_SUBSYS*/
>  
>  /**
>   * sets initial device mode and notifies client hotplugs that device is
> ready
> @@ -498,7 +498,9 @@ int smscore_start_device(struct smscore_device_t
> *coredev)
>  	kmutex_lock(&g_smscore_deviceslock);
>  
>  	rc = smscore_notify_callbacks(coredev, coredev->device, 1);
> +#ifdef SMS_RC_SUPPORT_SUBSYS
>  	smscore_init_ir(coredev);
> +#endif /*SMS_RC_SUPPORT_SUBSYS*/
>  
>  	sms_info("device %p started, rc %d", coredev, rc);
>  
> @@ -688,8 +690,9 @@ void smscore_unregister_device(struct
> smscore_device_t *coredev)
>  	kmutex_lock(&g_smscore_deviceslock);
>  
>  	/* Release input device (IR) resources */
> +#ifdef SMS_RC_SUPPORT_SUBSYS
>  	sms_ir_exit(coredev);
> -
> +#endif /*SMS_RC_SUPPORT_SUBSYS*/
>  	smscore_notify_clients(coredev);
>  	smscore_notify_callbacks(coredev, NULL, 0);
>  
> @@ -1073,6 +1076,7 @@ void smscore_onresponse(struct smscore_device_t
> *coredev,
>  		case MSG_SMS_START_IR_RES:
>  			complete(&coredev->ir_init_done);
>  			break;
> +#ifdef SMS_RC_SUPPORT_SUBSYS
>  		case MSG_SMS_IR_SAMPLES_IND:
>  			sms_ir_event(coredev,
>  				(const char *)
> @@ -1081,7 +1085,7 @@ void smscore_onresponse(struct smscore_device_t
> *coredev,
>  				(int)phdr->msgLength
>  				- sizeof(struct SmsMsgHdr_ST));
>  			break;
> -
> +#endif /*SMS_RC_SUPPORT_SUBSYS*/
>  		default:
>  			break;
>  		}
> diff --git a/drivers/media/dvb/siano/smsir.c
> b/drivers/media/dvb/siano/smsir.c
> index 37bc5c4..f9d065b 100644
> --- a/drivers/media/dvb/siano/smsir.c
> +++ b/drivers/media/dvb/siano/smsir.c
> @@ -32,8 +32,11 @@
>  #include "smsir.h"
>  #include "sms-cards.h"
>  
> +#ifdef SMS_RC_SUPPORT_SUBSYS
>  #define MODULE_NAME "smsmdtv"
>  
> +extern int sms_dbg;
> +
>  void sms_ir_event(struct smscore_device_t *coredev, const char *buf,
> int len)
>  {
>  	int i;
> @@ -45,27 +48,28 @@ void sms_ir_event(struct smscore_device_t *coredev,
> const char *buf, int len)
>  		ev.duration = abs(samples[i]) * 1000; /* Convert to ns */
>  		ev.pulse = (samples[i] > 0) ? false : true;
>  
> -		ir_raw_event_store(coredev->ir.dev, &ev);
> +		ir_raw_event_store(coredev->ir.rc_dev, &ev);
>  	}
> -	ir_raw_event_handle(coredev->ir.dev);
> +	ir_raw_event_handle(coredev->ir.rc_dev);
> +
>  }
>  
>  int sms_ir_init(struct smscore_device_t *coredev)
>  {
>  	int err;
>  	int board_id = smscore_get_board_id(coredev);
> -	struct rc_dev *dev;
> +	struct rc_dev *rc_dev;
>  
> -	sms_log("Allocating rc device");
> -	dev = rc_allocate_device();
> -	if (!dev) {
> +	sms_info("Allocating input device");
> +	rc_dev = rc_allocate_device();
> +	if (!rc_dev)	{
>  		sms_err("Not enough memory");
>  		return -ENOMEM;
>  	}
>  
>  	coredev->ir.controller = 0;	/* Todo: vega/nova SPI number */
>  	coredev->ir.timeout = IR_DEFAULT_TIMEOUT;
> -	sms_log("IR port %d, timeout %d ms",
> +	sms_info("IR port %d, timeout %d ms",
>  			coredev->ir.controller, coredev->ir.timeout);
>  
>  	snprintf(coredev->ir.name, sizeof(coredev->ir.name),
> @@ -74,41 +78,35 @@ int sms_ir_init(struct smscore_device_t *coredev)
>  	strlcpy(coredev->ir.phys, coredev->devpath, sizeof(coredev->ir.phys));
>  	strlcat(coredev->ir.phys, "/ir0", sizeof(coredev->ir.phys));
>  
> -	dev->input_name = coredev->ir.name;
> -	dev->input_phys = coredev->ir.phys;
> -	dev->dev.parent = coredev->device;
> -
> -#if 0
> -	/* TODO: properly initialize the parameters bellow */
> -	dev->input_id.bustype = BUS_USB;
> -	dev->input_id.version = 1;
> -	dev->input_id.vendor = le16_to_cpu(dev->udev->descriptor.idVendor);
> -	dev->input_id.product = le16_to_cpu(dev->udev->descriptor.idProduct);
> -#endif
> +	rc_dev->input_name = coredev->ir.name;
> +	rc_dev->input_phys = coredev->ir.phys;
> +	rc_dev->dev.parent = coredev->device;
> +	rc_dev->priv = coredev;
> +	rc_dev->driver_type = RC_DRIVER_IR_RAW;
> +	rc_dev->allowed_protos = RC_TYPE_ALL;
> +	rc_dev->map_name = sms_get_board(board_id)->rc_codes;
> +	rc_dev->driver_name = MODULE_NAME;
>  
> -	dev->priv = coredev;
> -	dev->driver_type = RC_DRIVER_IR_RAW;
> -	dev->allowed_protos = RC_TYPE_ALL;
> -	dev->map_name = sms_get_board(board_id)->rc_codes;
> -	dev->driver_name = MODULE_NAME;
> +	sms_info("Input device (IR) %s is set for key events",
> rc_dev->input_name);
>  
> -	sms_log("Input device (IR) %s is set for key events",
> dev->input_name);
> -
> -	err = rc_register_device(dev);
> +	err = rc_register_device(rc_dev);
>  	if (err < 0) {
>  		sms_err("Failed to register device");
> -		rc_free_device(dev);
> +		rc_free_device(rc_dev);
>  		return err;
>  	}
>  
> -	coredev->ir.dev = dev;
> +	coredev->ir.rc_dev = rc_dev;
>  	return 0;
>  }
>  
>  void sms_ir_exit(struct smscore_device_t *coredev)
>  {
> -	if (coredev->ir.dev)
> -		rc_unregister_device(coredev->ir.dev);
> +	if (coredev->ir.rc_dev)
> +		rc_unregister_device(coredev->ir.rc_dev);
>  
> -	sms_log("");
> +	sms_info("");
>  }
> +#endif /*SMS_RC_SUPPORT_SUBSYS*/
> +
> +
> diff --git a/drivers/media/dvb/siano/smsir.h
> b/drivers/media/dvb/siano/smsir.h
> index ae92b3a..701fcfe 100644
> --- a/drivers/media/dvb/siano/smsir.h
> +++ b/drivers/media/dvb/siano/smsir.h
> @@ -35,7 +35,7 @@ along with this program.  If not, see
> <http://www.gnu.org/licenses/>.
>  struct smscore_device_t;
>  
>  struct ir_t {
> -	struct rc_dev *dev;
> +	struct rc_dev *rc_dev;
>  	char name[40];
>  	char phys[32];
>  

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux