Re: [PATCH v4 1/2] Input: touchscreen-iproc: Add Broadcom iProc touchscreen driver

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

 




On Thu, 2015-03-12 at 10:45 -0700, Jonathan Richardson wrote:
> Add initial version of the Broadcom touchscreen driver.

style trivia:
(any of which could be fixed/improved/ignored later)

> diff --git a/drivers/input/touchscreen/bcm_iproc_tsc.c b/drivers/input/touchscreen/bcm_iproc_tsc.c
[]
> +static void ts_reg_dump(struct iproc_ts_priv *priv)
> +{
> +	struct device *dev = &priv->pdev->dev;
> +
> +	dev_dbg(dev, "regCtl1             = 0x%08x\n",
> +				readl(priv->regs + REGCTL1));

The output case here generally isn't very important so
sometimes it's better to use a macro like:

#define dbg_reg(dev, priv, reg)						\
	dev_dbg(dev, "%20s= 0x%08x\n", #reg, readl((priv)->regs + reg))

> +	dev_dbg(dev, "regCtl2             = 0x%08x\n",
> +				readl(priv->regs + REGCTL2));

so these become
	dbg_reg(dev, priv, INTERRUPT_THRES);
	dbg_reg(dev, priv, INTERRUPT_MASK);

etc...

This style can reduce typo and copy/paste defects.

> +	dev_dbg(dev, "interrupt_Thres     = 0x%08x\n",
> +				readl(priv->regs + INTERRUPT_THRES));
> +	dev_dbg(dev, "interrupt_Mask      = 0x%08x\n",
> +				readl(priv->regs + INTERRUPT_MASK));
> +	dev_dbg(dev, "interrupt_Status    = 0x%08x\n",
> +				readl(priv->regs + INTERRUPT_STATUS));
> +	dev_dbg(dev, "controller_Status   = 0x%08x\n",
> +				readl(priv->regs + CONTROLLER_STATUS));
> +	dev_dbg(dev, "FIFO_Data           = 0x%08x\n",
> +				readl(priv->regs + FIFO_DATA));
> +	dev_dbg(dev, "analog_Control      = 0x%08x\n",
> +				readl(priv->regs + ANALOG_CONTROL));
> +	dev_dbg(dev, "aux_Data            = 0x%08x\n",
> +				readl(priv->regs + AUX_DATA));
> +	dev_dbg(dev, "debounce_Cntr_Stat  = 0x%08x\n",
> +				readl(priv->regs + DEBOUNCE_CNTR_STAT));
> +	dev_dbg(dev, "scan_Cntr_Stat      = 0x%08x\n",
> +				readl(priv->regs + SCAN_CNTR_STAT));
> +	dev_dbg(dev, "rem_Cntr_Stat       = 0x%08x\n",
> +				readl(priv->regs + REM_CNTR_STAT));
> +	dev_dbg(dev, "settling_Timer_Stat = 0x%08x\n",
> +				readl(priv->regs + SETTLING_TIMER_STAT));
> +	dev_dbg(dev, "spare_Reg           = 0x%08x\n",
> +				readl(priv->regs + SPARE_REG));
> +	dev_dbg(dev, "soft_Bypass_Control = 0x%08x\n",
> +				readl(priv->regs + SOFT_BYPASS_CONTROL));
> +	dev_dbg(dev, "soft_Bypass_Data    = 0x%08x\n",
> +				readl(priv->regs + SOFT_BYPASS_DATA));
> +}

[]

> +static int get_tsc_config(struct device_node *np, struct iproc_ts_priv *priv)
> +{
> +	u32 val;
[]
> +	if (of_property_read_u32(np, "debounce_timeout", &val) >= 0) {
> +		if (val < 0 || val > 255) {

testing u32 < 0 isn't necessary.

Maybe it'd be better to emit the out of range value too

> +			dev_err(dev, "debounce_timeout must be [0-255]\n");

			dev_err(dev, "debounce_timeout (%u) must be [0-255]\n", val);


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




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux