mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Subhasish Ghosh" <subhasish@mistralsolutions.com>
To: "Wolfgang Grandegger" <wg@grandegger.com>,
	"Marc Kleine-Budde" <mkl@pengutronix.de>
Cc: <sachi@mistralsolutions.com>,
	<davinci-linux-open-source@linux.davincidsp.com>,
	<Netdev@vger.kernel.org>, <nsekhar@ti.com>,
	"open list" <linux-kernel@vger.kernel.org>,
	"CAN NETWORK DRIVERS" <socketcan-core@lists.berlios.de>,
	<m-watkins@ti.com>, <linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH v4 1/1] can: add pruss CAN driver.
Date: Wed, 27 Apr 2011 18:38:19 +0530	[thread overview]
Message-ID: <46D523E49EFF489F9B088AE7B9CD7286@subhasishg> (raw)
In-Reply-To: <4DB5D452.9050500@grandegger.com>

>
> - Use just *one* value per sysfs file

SG - I felt adding entry for each mbx_id will clutter the sysfs.
        Is it ok to do that.


>>> +static u32 pruss_intc_init[19][3] = {
>>> + {PRUSS_INTC_POLARITY0, PRU_INTC_REGMAP_MASK, 0xFFFFFFFF},
>>> + {PRUSS_INTC_POLARITY1, PRU_INTC_REGMAP_MASK, 0xFFFFFFFF},
>>> + {PRUSS_INTC_TYPE0, PRU_INTC_REGMAP_MASK, 0x1C000000},
>>> + {PRUSS_INTC_TYPE1, PRU_INTC_REGMAP_MASK, 0},
>>> + {PRUSS_INTC_GLBLEN, 0, 1},
>>> + {PRUSS_INTC_HOSTMAP0, PRU_INTC_REGMAP_MASK, 0x03020100},
>>> + {PRUSS_INTC_HOSTMAP1, PRU_INTC_REGMAP_MASK, 0x07060504},
>>> + {PRUSS_INTC_HOSTMAP2, PRU_INTC_REGMAP_MASK, 0x0000908},
>>> + {PRUSS_INTC_CHANMAP0, PRU_INTC_REGMAP_MASK, 0},
>>> + {PRUSS_INTC_CHANMAP8, PRU_INTC_REGMAP_MASK, 0x00020200},
>>> + {PRUSS_INTC_STATIDXCLR, 0, 32},
>>> + {PRUSS_INTC_STATIDXCLR, 0, 19},
>>> + {PRUSS_INTC_ENIDXSET, 0, 19},
>>> + {PRUSS_INTC_STATIDXCLR, 0, 18},
>>> + {PRUSS_INTC_ENIDXSET, 0, 18},
>>> + {PRUSS_INTC_STATIDXCLR, 0, 34},
>>> + {PRUSS_INTC_ENIDXSET, 0, 34},
>>> + {PRUSS_INTC_ENIDXSET, 0, 32},
>>> + {PRUSS_INTC_HOSTINTEN, 0, 5}
>>
>> please add ","
>
> Also a struct to describe each entry would improve readability.
> Then you could also use ARRAY_SIZE.

SG _ I could not follow this, are you recommending that I create a structure 
with three variables and then create
            an array for it.
something like:

const static struct [] = {
    {
    unsigned int reg_base;
    unsigned int reg_mask;
    unsigned int reg_val;
    },
...
};


>>> + value = (PRUSS_CAN_GPIO_SETUP_DELAY *
>>> + (priv->clk_freq_pru / 1000000) / 1000) /
>>> + PRUSS_CAN_DELAY_LOOP_LENGTH;
>
> This calculation looks delicate. 64-bit math would be safer.

SG - This one works fine. I am dividing it twice to avoid the problem.


>>> + pru_can_mask_ints(priv->dev, PRUSS_CAN_TX_PRU_1, false);
>>> + pru_can_mask_ints(priv->dev, PRUSS_CAN_RX_PRU_0, false);
>>> + can_bus_off(ndev);
>>> + dev_dbg(priv->ndev->dev.parent, "Bus off mode\n");
>>> + }
>>> +
>>> + netif_rx(skb);
>
> You should use netif_receive_skb(skb) here as well.

SG - Ok, Will do.

>
> if (PRUSS_CAN_ISR_BIT_ESI &
>     priv->can_rx_cntx.intr_stat) {
>
> Is more readable.

SG - Ok, Will do.

>
>
>>> + pru_can_gbl_stat_get(priv->dev,
>>> + &priv->can_rx_cntx);
>>> + pru_can_err(ndev,
>>> + priv->can_rx_cntx.intr_stat,
>>> + priv->can_rx_cntx.gbl_stat);
>
> Please fix bogous indention.

SG - Ok, Will do.


>>> +
>>> + pdata = dev->platform_data;
>>> + if (!pdata) {
>>> + dev_err(&pdev->dev, "platform data not found\n");
>>> + return -EINVAL;
>>> + }
>>> + (pdata->setup)();
>>
>> no need fot the ( )

SG - Ok, Will do.

>>> + }
>>> +
>>> + priv->ndev = ndev;
>>> + priv->dev = dev;
>>> +
>>> + priv->can.bittiming_const = &pru_can_bittiming_const;
>>> + priv->can.do_set_bittiming = pru_can_set_bittiming;
>>> + priv->can.do_set_mode = pru_can_set_mode;
>>> + priv->can.do_get_state = pru_can_get_state;
>
> Please remove that callback. It's not needed as state changes are
> handled properly.
>

SG -- Ok, Will do

 


  reply	other threads:[~2011-04-27 13:07 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1303474267-6344-1-git-send-email-subhasish@mistralsolutions.com>
2011-04-22 12:11 ` Subhasish Ghosh
     [not found]   ` <4DB1A3B7.7060300@pengutronix.de>
2011-04-25 20:06     ` Wolfgang Grandegger
2011-04-27 13:08       ` Subhasish Ghosh [this message]
2011-04-27 13:21         ` Marc Kleine-Budde
2011-04-27 13:25         ` Arnd Bergmann
2011-05-04  7:13           ` Subhasish Ghosh
2011-05-04 13:11             ` Arnd Bergmann
2011-05-04 14:33               ` Wolfgang Grandegger
2011-05-04 14:48                 ` Arnd Bergmann
2011-05-04 16:00                   ` Wolfgang Grandegger
2011-05-10 10:11                     ` Subhasish Ghosh
2011-05-10 10:27                       ` Alan Cox
2011-05-10 12:21                         ` Subhasish Ghosh
2011-05-11 21:31                           ` Arnd Bergmann
2011-05-11 21:44                             ` Arnd Bergmann
2011-05-11 22:39                               ` Marc Kleine-Budde
2011-05-11 22:56                                 ` Alan Cox
2011-05-12  3:03                                   ` can: hardware vs. software filter Kurt Van Dijck
2011-05-12  7:13                               ` [PATCH v4 1/1] can: add pruss CAN driver Wolfgang Grandegger
2011-05-12 10:58                                 ` Kurt Van Dijck
2011-05-12 12:54                                 ` Arnd Bergmann
2011-05-12 13:04                                   ` Marc Kleine-Budde
2011-05-12 14:41                                 ` Oliver Hartkopp
2011-05-22 10:30                                   ` Arnd Bergmann
2011-05-23  6:21                                     ` Oliver Hartkopp
2011-05-23  8:23                                       ` Marc Kleine-Budde
2011-05-27  8:31                                       ` Wolfgang Grandegger
2011-05-12  7:04                             ` Wolfgang Grandegger
2011-05-04 15:57                 ` Kurt Van Dijck
2011-05-04 16:09                   ` Wolfgang Grandegger
2011-05-04 20:55                     ` Oliver Hartkopp
2011-04-27 13:28         ` Wolfgang Grandegger
2011-04-27 13:34           ` Wolfgang Grandegger

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=46D523E49EFF489F9B088AE7B9CD7286@subhasishg \
    --to=subhasish@mistralsolutions.com \
    --cc=Netdev@vger.kernel.org \
    --cc=davinci-linux-open-source@linux.davincidsp.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=m-watkins@ti.com \
    --cc=mkl@pengutronix.de \
    --cc=nsekhar@ti.com \
    --cc=sachi@mistralsolutions.com \
    --cc=socketcan-core@lists.berlios.de \
    --cc=wg@grandegger.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®