Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1221684 > unrolled thread

Re: [PATCH 3/3] staging: fbtft: use pr_fmt

Started byGreg Kroah-Hartman <gregkh@linuxfoundation.org>
First post2015-09-09 22:00 +0200
Last post2015-09-11 12:40 +0200
Articles 5 — 3 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [PATCH 3/3] staging: fbtft: use pr_fmt Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2015-09-09 22:00 +0200
    Re: [PATCH 3/3] staging: fbtft: use pr_fmt Noralf Trønnes <noralf@tronnes.org> - 2015-09-09 23:30 +0200
      Re: [PATCH 3/3] staging: fbtft: use pr_fmt Sudip Mukherjee <sudipm.mukherjee@gmail.com> - 2015-09-10 07:00 +0200
        Re: [PATCH 3/3] staging: fbtft: use pr_fmt Noralf Trønnes <noralf@tronnes.org> - 2015-09-10 18:50 +0200
          Re: [PATCH 3/3] staging: fbtft: use pr_fmt Sudip Mukherjee <sudipm.mukherjee@gmail.com> - 2015-09-11 12:40 +0200

#1221684 — Re: [PATCH 3/3] staging: fbtft: use pr_fmt

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2015-09-09 22:00 +0200
SubjectRe: [PATCH 3/3] staging: fbtft: use pr_fmt
Message-ID<q6THe-4vo-63@gated-at.bofh.it>
On Sat, Sep 05, 2015 at 07:13:45PM +0530, Sudip Mukherjee wrote:
> Instead of defining DRVNAME and using it in all calls to pr_* family of
> macros lets start using pr_fmt.
> 
> Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org>
> ---
>  drivers/staging/fbtft/fbtft_device.c | 79 ++++++++++++++++--------------------
>  1 file changed, 35 insertions(+), 44 deletions(-)
> 
> diff --git a/drivers/staging/fbtft/fbtft_device.c b/drivers/staging/fbtft/fbtft_device.c
> index 80ab918..029423e 100644
> --- a/drivers/staging/fbtft/fbtft_device.c
> +++ b/drivers/staging/fbtft/fbtft_device.c
> @@ -13,6 +13,7 @@
>   * GNU General Public License for more details.
>   */
>  
> +#define pr_fmt(fmt) "fbtft_device: " fmt
>  #include <linux/module.h>
>  #include <linux/kernel.h>
>  #include <linux/init.h>
> @@ -21,8 +22,6 @@
>  
>  #include "fbtft.h"
>  
> -#define DRVNAME "fbtft_device"
> -
>  #define MAX_GPIOS 32
>  
>  static struct spi_device *spi_device;
> @@ -1215,16 +1214,16 @@ static int spi_device_found(struct device *dev, void *data)
>  {
>  	struct spi_device *spi = container_of(dev, struct spi_device, dev);
>  
> -	pr_info(DRVNAME":      %s %s %dkHz %d bits mode=0x%02X\n",
> -		spi->modalias, dev_name(dev), spi->max_speed_hz / 1000,
> -		spi->bits_per_word, spi->mode);
> +	pr_info("%s %s %dkHz %d bits mode=0x%02X\n", spi->modalias,
> +		dev_name(dev), spi->max_speed_hz / 1000, spi->bits_per_word,
> +		spi->mode);

This should be dev_info().

>  
>  	return 0;
>  }
>  
>  static void pr_spi_devices(void)
>  {
> -	pr_info(DRVNAME":  SPI devices registered:\n");
> +	pr_info("SPI devices registered:\n");

Don't be noisy, this shouldn't be here at all.  Or maybe pr_debug() if
you really need it.

>  	bus_for_each_dev(&spi_bus_type, NULL, NULL, spi_device_found);
>  }
>  
> @@ -1234,16 +1233,15 @@ static int p_device_found(struct device *dev, void *data)
>  	*pdev = container_of(dev, struct platform_device, dev);
>  
>  	if (strstr(pdev->name, "fb"))
> -		pr_info(DRVNAME":      %s id=%d pdata? %s\n",
> -				pdev->name, pdev->id,
> -				pdev->dev.platform_data ? "yes" : "no");
> +		pr_info("%s id=%d pdata? %s\n", pdev->name, pdev->id,
> +			pdev->dev.platform_data ? "yes" : "no");

dev_info()


>  
>  	return 0;
>  }
>  
>  static void pr_p_devices(void)
>  {
> -	pr_info(DRVNAME":  'fb' Platform devices registered:\n");
> +	pr_info("'fb' Platform devices registered:\n");

pr_debug

>  	bus_for_each_dev(&platform_bus_type, NULL, NULL, p_device_found);
>  }
>  
> @@ -1258,7 +1256,7 @@ static void fbtft_device_spi_delete(struct spi_master *master, unsigned cs)
>  	dev = bus_find_device_by_name(&spi_bus_type, NULL, str);
>  	if (dev) {
>  		if (verbose)
> -			pr_info(DRVNAME": Deleting %s\n", str);
> +			pr_info("Deleting %s\n", str);

dev_debug()

>  		device_del(dev);
>  	}
>  }
> @@ -1269,7 +1267,7 @@ static int fbtft_device_spi_device_register(struct spi_board_info *spi)
>  
>  	master = spi_busnum_to_master(spi->bus_num);
>  	if (!master) {
> -		pr_err(DRVNAME ":  spi_busnum_to_master(%d) returned NULL\n",
> +		pr_err("spi_busnum_to_master(%d) returned NULL\n",
>  								spi->bus_num);

dev_err()

>  		return -EINVAL;
>  	}
> @@ -1278,7 +1276,7 @@ static int fbtft_device_spi_device_register(struct spi_board_info *spi)
>  	spi_device = spi_new_device(master, spi);
>  	put_device(&master->dev);
>  	if (!spi_device) {
> -		pr_err(DRVNAME ":    spi_new_device() returned NULL\n");
> +		pr_err("spi_new_device() returned NULL\n");

dev_err()

>  		return -EPERM;
>  	}
>  	return 0;
> @@ -1301,11 +1299,11 @@ static int __init fbtft_device_init(void)
>  	long val;
>  	int ret = 0;
>  
> -	pr_debug("\n\n"DRVNAME": init\n");
> +	pr_debug("init\n");

Just delete this.

>  
>  	if (name == NULL) {
>  #ifdef MODULE
> -		pr_err(DRVNAME":  missing module parameter: 'name'\n");
> +		pr_err("missing module parameter: 'name'\n");
>  		return -EINVAL;
>  #else
>  		return 0;
> @@ -1313,42 +1311,37 @@ static int __init fbtft_device_init(void)
>  	}
>  
>  	if (init_num > FBTFT_MAX_INIT_SEQUENCE) {
> -		pr_err(DRVNAME
> -			":  init parameter: exceeded max array size: %d\n",
> -			FBTFT_MAX_INIT_SEQUENCE);
> +		pr_err("init parameter: exceeded max array size: %d\n",
> +		       FBTFT_MAX_INIT_SEQUENCE);
>  		return -EINVAL;
>  	}
>  
>  	/* parse module parameter: gpios */
>  	while ((p_gpio = strsep(&gpios, ","))) {
>  		if (strchr(p_gpio, ':') == NULL) {
> -			pr_err(DRVNAME
> -				":  error: missing ':' in gpios parameter: %s\n",
> -				p_gpio);
> +			pr_err("error: missing ':' in gpios parameter: %s\n",
> +			       p_gpio);
>  			return -EINVAL;
>  		}
>  		p_num = p_gpio;
>  		p_name = strsep(&p_num, ":");
>  		if (p_name == NULL || p_num == NULL) {
> -			pr_err(DRVNAME
> -				":  something bad happened parsing gpios parameter: %s\n",
> -				p_gpio);
> +			pr_err("something bad happened parsing gpios parameter: %s\n",
> +			       p_gpio);
>  			return -EINVAL;
>  		}
>  		ret = kstrtol(p_num, 10, &val);
>  		if (ret) {
> -			pr_err(DRVNAME
> -				":  could not parse number in gpios parameter: %s:%s\n",
> -				p_name, p_num);
> +			pr_err("could not parse number in gpios parameter: %s:%s\n",
> +			       p_name, p_num);
>  			return -EINVAL;
>  		}
>  		strncpy(fbtft_device_param_gpios[i].name, p_name,
>  			FBTFT_GPIO_NAME_SIZE - 1);
>  		fbtft_device_param_gpios[i++].gpio = (int) val;
>  		if (i == MAX_GPIOS) {
> -			pr_err(DRVNAME
> -				":  gpios parameter: exceeded max array size: %d\n",
> -				MAX_GPIOS);
> +			pr_err("gpios parameter: exceeded max array size: %d\n",
> +			       MAX_GPIOS);
>  			return -EINVAL;
>  		}
>  	}
> @@ -1361,7 +1354,7 @@ static int __init fbtft_device_init(void)
>  	if (verbose > 2)
>  		pr_p_devices(); /* print list of 'fb' platform devices */
>  
> -	pr_debug(DRVNAME":  name='%s', busnum=%d, cs=%d\n", name, busnum, cs);
> +	pr_debug("name='%s', busnum=%d, cs=%d\n", name, busnum, cs);
>  
>  	if (rotate > 0 && rotate < 4) {
>  		rotate = (4 - rotate) * 90;
> @@ -1376,10 +1369,10 @@ static int __init fbtft_device_init(void)
>  
>  	/* name=list lists all supported displays */
>  	if (strncmp(name, "list", FBTFT_GPIO_NAME_SIZE) == 0) {
> -		pr_info(DRVNAME":  Supported displays:\n");
> +		pr_info("Supported displays:\n");
>  
>  		for (i = 0; i < ARRAY_SIZE(displays); i++)
> -			pr_info(DRVNAME":      %s\n", displays[i].name);
> +			pr_info("%s\n", displays[i].name);
>  		return -ECANCELED;
>  	}
>  
> @@ -1410,7 +1403,7 @@ static int __init fbtft_device_init(void)
>  				p_device = displays[i].pdev;
>  				pdata = p_device->dev.platform_data;
>  			} else {
> -				pr_err(DRVNAME": broken displays array\n");
> +				pr_err("broken displays array\n");
>  				return -EINVAL;
>  			}
>  
> @@ -1442,16 +1435,14 @@ static int __init fbtft_device_init(void)
>  			if (displays[i].spi) {
>  				ret = fbtft_device_spi_device_register(spi);
>  				if (ret) {
> -					pr_err(DRVNAME
> -						": failed to register SPI device\n");
> +					pr_err("failed to register SPI device\n");
>  					return ret;
>  				}
>  			} else {
>  				ret = platform_device_register(p_device);
>  				if (ret < 0) {
> -					pr_err(DRVNAME
> -						":    platform_device_register() returned %d\n",
> -						ret);
> +					pr_err("platform_device_register() returned %d\n",
> +					       ret);
>  					return ret;
>  				}
>  			}
> @@ -1461,22 +1452,22 @@ static int __init fbtft_device_init(void)
>  	}
>  
>  	if (!found) {
> -		pr_err(DRVNAME":  display not supported: '%s'\n", name);
> +		pr_err("display not supported: '%s'\n", name);
>  		return -EINVAL;
>  	}
>  
>  	if (verbose && pdata && pdata->gpios) {
>  		gpio = pdata->gpios;
> -		pr_info(DRVNAME":  GPIOS used by '%s':\n", name);
> +		pr_info("GPIOS used by '%s':\n", name);
>  		found = false;
>  		while (verbose && gpio->name[0]) {
> -			pr_info(DRVNAME":    '%s' = GPIO%d\n",
> +			pr_info("'%s' = GPIO%d\n",
>  				gpio->name, gpio->gpio);
>  			gpio++;
>  			found = true;
>  		}
>  		if (!found)
> -			pr_info(DRVNAME":    (none)\n");
> +			pr_info("(none)\n");
>  	}
>  
>  	if (spi_device && (verbose > 1))
> @@ -1489,7 +1480,7 @@ static int __init fbtft_device_init(void)
>  
>  static void __exit fbtft_device_exit(void)
>  {
> -	pr_debug(DRVNAME" - exit\n");
> +	pr_debug("exit\n");

Delete this as well.

If a driver is working properly, nothing should show up in the kernel
log at all, otherwise it's just noise that everyone ignores.

thanks,

greg k-h
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [next] | [standalone]


#1221739

FromNoralf Trønnes <noralf@tronnes.org>
Date2015-09-09 23:30 +0200
Message-ID<q6V6h-6DS-11@gated-at.bofh.it>
In reply to#1221684
Den 09.09.2015 20:35, skrev Greg Kroah-Hartman:
> On Sat, Sep 05, 2015 at 07:13:45PM +0530, Sudip Mukherjee wrote:
>> Instead of defining DRVNAME and using it in all calls to pr_* family of
>> macros lets start using pr_fmt.
>>
>> Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org>
>> ---
>>   drivers/staging/fbtft/fbtft_device.c | 79 ++++++++++++++++--------------------
>>   1 file changed, 35 insertions(+), 44 deletions(-)

[...]

> If a driver is working properly, nothing should show up in the kernel
> log at all, otherwise it's just noise that everyone ignores.

This isn't a device driver, it's a module for adding "fbtft" devices
(spi/platform with pdata). When I created fbtft, the Raspberry Pi didn't
have Device Tree support, so I made this module as a way for the end user
to add devices without having to build a kernel.
I haven't seen any module like this in the kernel, so maybe it really 
doesn't
belong here at all?


Noralf.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1221915

FromSudip Mukherjee <sudipm.mukherjee@gmail.com>
Date2015-09-10 07:00 +0200
Message-ID<q727L-8cV-1@gated-at.bofh.it>
In reply to#1221739
On Wed, Sep 09, 2015 at 11:20:08PM +0200, Noralf Trønnes wrote:
> 
> Den 09.09.2015 20:35, skrev Greg Kroah-Hartman:
> >On Sat, Sep 05, 2015 at 07:13:45PM +0530, Sudip Mukherjee wrote:
> >>Instead of defining DRVNAME and using it in all calls to pr_* family of
> >>macros lets start using pr_fmt.
> >>
> >>Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org>
> >>---
> >>  drivers/staging/fbtft/fbtft_device.c | 79 ++++++++++++++++--------------------
> >>  1 file changed, 35 insertions(+), 44 deletions(-)
> 
> [...]
> 
> >If a driver is working properly, nothing should show up in the kernel
> >log at all, otherwise it's just noise that everyone ignores.
> 
> This isn't a device driver, it's a module for adding "fbtft" devices
> (spi/platform with pdata). When I created fbtft, the Raspberry Pi didn't
> have Device Tree support, so I made this module as a way for the end user
> to add devices without having to build a kernel.
> I haven't seen any module like this in the kernel, so maybe it
> really doesn't
> belong here at all?
Is this driver only for Raspberry Pi?
I have seen someone submitted a drm driver for Raspberry Pi. And I guess
that is already merged.
Tomi (fbdev maintainer) said "Fremebuffer  driver will be obsolete
immediately when there's a DRM driver for that device". And if a drm
driver is already there for Raspberry Pi then ?

regards
sudip
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1222309

FromNoralf Trønnes <noralf@tronnes.org>
Date2015-09-10 18:50 +0200
Message-ID<q7dcS-79C-15@gated-at.bofh.it>
In reply to#1221915
10.09.2015 06:54, skrev Sudip Mukherjee:
> On Wed, Sep 09, 2015 at 11:20:08PM +0200, Noralf Trønnes wrote:
>> Den 09.09.2015 20:35, skrev Greg Kroah-Hartman:
>>> On Sat, Sep 05, 2015 at 07:13:45PM +0530, Sudip Mukherjee wrote:
>>>> Instead of defining DRVNAME and using it in all calls to pr_* family of
>>>> macros lets start using pr_fmt.
>>>>
>>>> Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org>
>>>> ---
>>>>   drivers/staging/fbtft/fbtft_device.c | 79 ++++++++++++++++--------------------
>>>>   1 file changed, 35 insertions(+), 44 deletions(-)
>> [...]
>>
>>> If a driver is working properly, nothing should show up in the kernel
>>> log at all, otherwise it's just noise that everyone ignores.
>> This isn't a device driver, it's a module for adding "fbtft" devices
>> (spi/platform with pdata). When I created fbtft, the Raspberry Pi didn't
>> have Device Tree support, so I made this module as a way for the end user
>> to add devices without having to build a kernel.
>> I haven't seen any module like this in the kernel, so maybe it
>> really doesn't
>> belong here at all?
> Is this driver only for Raspberry Pi?
> I have seen someone submitted a drm driver for Raspberry Pi. And I guess
> that is already merged.
> Tomi (fbdev maintainer) said "Fremebuffer  driver will be obsolete
> immediately when there's a DRM driver for that device". And if a drm
> driver is already there for Raspberry Pi then ?

Not sure what you refer to as driver here.

The fbtft module presents a simplistic view of fbdev through
'struct fbtft_par' which the various fbtft drivers use.

fbtft_device is just a kernel module that can add spi and platform
devices to the kernel and it can be used on all platforms. It's not a
driver of any kind. It really does what Device Tree does, it adds devices.

vc4 is an upcoming DRM driver for the BCM2835 display hardware (hdmi).
This has nothing to do with the fbtft drivers which target SPI/parallel
bus connected displays with onboard video memory.


Noralf.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1222702

FromSudip Mukherjee <sudipm.mukherjee@gmail.com>
Date2015-09-11 12:40 +0200
Message-ID<q7tUl-7o1-5@gated-at.bofh.it>
In reply to#1222309
On Thu, Sep 10, 2015 at 06:45:15PM +0200, Noralf Trønnes wrote:
> 
> 10.09.2015 06:54, skrev Sudip Mukherjee:
> >On Wed, Sep 09, 2015 at 11:20:08PM +0200, Noralf Trønnes wrote:
> >>Den 09.09.2015 20:35, skrev Greg Kroah-Hartman:
> >>>On Sat, Sep 05, 2015 at 07:13:45PM +0530, Sudip Mukherjee wrote:
> >>>>Instead of defining DRVNAME and using it in all calls to pr_* family of
> >>>>macros lets start using pr_fmt.
> >>>>
> >>>>Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org>
> >>>>---
> >>>>  drivers/staging/fbtft/fbtft_device.c | 79 ++++++++++++++++--------------------
> >>>>  1 file changed, 35 insertions(+), 44 deletions(-)
> >>[...]
> >>
<snip>
> >Is this driver only for Raspberry Pi?
> >I have seen someone submitted a drm driver for Raspberry Pi. And I guess
> >that is already merged.
> >Tomi (fbdev maintainer) said "Fremebuffer  driver will be obsolete
> >immediately when there's a DRM driver for that device". And if a drm
> >driver is already there for Raspberry Pi then ?
> 
> Not sure what you refer to as driver here.
> 
> The fbtft module presents a simplistic view of fbdev through
> 'struct fbtft_par' which the various fbtft drivers use.
> 
> fbtft_device is just a kernel module that can add spi and platform
> devices to the kernel and it can be used on all platforms. It's not a
> driver of any kind. It really does what Device Tree does, it adds devices.
> 
> vc4 is an upcoming DRM driver for the BCM2835 display hardware (hdmi).
> This has nothing to do with the fbtft drivers which target SPI/parallel
> bus connected displays with onboard video memory.
Ok, Thanks for explaining. Since this is using calls to framebuffer I
thought this to be a framebuffer driver.
Anyways, I will modify the patch as suggested by Greg.

regards
sudip
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web