public inbox for linux-arm-kernel@lists.infradead.org 
 help / color / mirror / Atom feed
From: jon-hunter@ti•com (Jon Hunter)
To: linux-arm-kernel@lists•infradead.org
Subject: [PATCH V3 02/18] ARM: OMAP2+: Add variable to store number of GPMC waitpins
Date: Mon, 18 Mar 2013 08:43:47 -0500	[thread overview]
Message-ID: <51471A13.9060803@ti.com> (raw)
In-Reply-To: <20130316205916.GA3290@localhost>



On 03/16/2013 03:59 PM, Ezequiel Garcia wrote:
> Hi Jon,
> 
> On Fri, Mar 15, 2013 at 10:21:00AM -0500, Jon Hunter wrote:
>> The GPMC has wait-pin signals that can be assigned to a chip-select
>> to monitor the ready signal of an external device. Add a variable to
>> indicate the total number of wait-pins for a given device. This will
>> allow us to detect if the wait-pin being selected is valid or not.
>>
>> When booting with device-tree read the number of wait-pins from the
>> device-tree blob. When device-tree is not used set the number of
>> wait-pins to 4 which is valid for OMAP2-5 devices. Newer devices
>> that have less wait-pins (such as AM335x) only support booting with
>> device-tree and so hard-coding the wait-pin number when not using
>> device-tree is fine.
>>
>> Signed-off-by: Jon Hunter <jon-hunter@ti•com>
>> ---
>>  arch/arm/mach-omap2/gpmc.c |   16 ++++++++++++++++
>>  1 file changed, 16 insertions(+)
>>
>> diff --git a/arch/arm/mach-omap2/gpmc.c b/arch/arm/mach-omap2/gpmc.c
>> index ef655d9..88a261c 100644
>> --- a/arch/arm/mach-omap2/gpmc.c
>> +++ b/arch/arm/mach-omap2/gpmc.c
>> @@ -108,6 +108,8 @@
>>  #define	GPMC_HAS_WR_ACCESS		0x1
>>  #define	GPMC_HAS_WR_DATA_MUX_BUS	0x2
>>  
>> +#define GPMC_NR_WAITPINS		4
>> +
>>  /* XXX: Only NAND irq has been considered,currently these are the only ones used
>>   */
>>  #define	GPMC_NR_IRQ		2
>> @@ -153,6 +155,7 @@ static struct resource	gpmc_cs_mem[GPMC_CS_NUM];
>>  static DEFINE_SPINLOCK(gpmc_mem_lock);
>>  /* Define chip-selects as reserved by default until probe completes */
>>  static unsigned int gpmc_cs_map = ((1 << GPMC_CS_NUM) - 1);
>> +static unsigned int gpmc_nr_waitpins;
>>  static struct device *gpmc_dev;
>>  static int gpmc_irq;
>>  static resource_size_t phys_base, mem_size;
>> @@ -1297,6 +1300,13 @@ static int gpmc_probe_dt(struct platform_device *pdev)
>>  	if (!of_id)
>>  		return 0;
>>  
>> +	ret = of_property_read_u32(pdev->dev.of_node, "gpmc,num-waitpins",
>> +				   &gpmc_nr_waitpins);
>> +	if (ret < 0) {
>> +		pr_err("%s: number of wait pins not found!\n", __func__);
>> +		return ret;
>> +	}
>> +
>>  	for_each_node_by_name(child, "nand") {
>>  		ret = gpmc_probe_nand_child(pdev, child);
>>  		if (ret < 0) {
>> @@ -1372,6 +1382,12 @@ static int gpmc_probe(struct platform_device *pdev)
>>  	if (gpmc_setup_irq() < 0)
>>  		dev_warn(gpmc_dev, "gpmc_setup_irq failed\n");
>>  
>> +	/* Now the GPMC is initialised, unreserve the chip-selects */
>> +	gpmc_cs_map = 0;
> 
> The above seems to be a remanent of another patch.
> I think you already sent that one, right?

Good catch. I will fix this up.

Jon

  reply	other threads:[~2013-03-18 13:43 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-15 15:20 [PATCH V3 00/18] ARM: OMAP2+: GPMC clean-up and DT update Jon Hunter
2013-03-15 15:20 ` [PATCH V3 01/18] ARM: OMAP2+: Simplify code configuring ONENAND devices Jon Hunter
2013-03-15 15:21 ` [PATCH V3 02/18] ARM: OMAP2+: Add variable to store number of GPMC waitpins Jon Hunter
2013-03-16 20:59   ` Ezequiel Garcia
2013-03-18 13:43     ` Jon Hunter [this message]
2013-03-15 15:21 ` [PATCH V3 03/18] ARM: OMAP2+: Add structure for storing GPMC settings Jon Hunter
2013-03-15 15:21 ` [PATCH V3 04/18] ARM: OMAP2+: Add function for configuring " Jon Hunter
2013-03-15 15:21 ` [PATCH V3 05/18] ARM: OMAP2+: Convert ONENAND to use gpmc_cs_program_settings() Jon Hunter
2013-03-15 15:21 ` [PATCH V3 06/18] ARM: OMAP2+: Convert NAND " Jon Hunter
2013-03-15 15:21 ` [PATCH V3 07/18] ARM: OMAP2+: Convert SMC91x " Jon Hunter
2013-03-15 15:21 ` [PATCH V3 08/18] ARM: OMAP2+: Convert TUSB " Jon Hunter
2013-03-15 15:21 ` [PATCH V3 09/18] ARM: OMAP2+: Don't configure of chip-select options in gpmc_cs_configure() Jon Hunter
2013-03-15 15:21 ` [PATCH V3 10/18] ARM: OMAP2+: Add function to read GPMC settings from device-tree Jon Hunter
2013-03-17  5:24   ` Ezequiel Garcia
2013-03-18 13:43     ` Jon Hunter
2013-03-15 15:21 ` [PATCH V3 11/18] ARM: OMAP2+: Add device-tree support for NOR flash Jon Hunter
2013-03-15 15:21 ` [PATCH V3 12/18] ARM: OMAP2+: Add additional GPMC timing parameters Jon Hunter
2013-03-18 14:07   ` Rob Herring
2013-03-18 14:32     ` Jon Hunter
2013-03-18 15:59       ` Jon Hunter
2013-03-15 15:21 ` [PATCH V3 13/18] ARM: OMAP2+: Convert NAND to retrieve GPMC settings from DT Jon Hunter
2013-03-15 15:21 ` [PATCH V3 14/18] ARM: OMAP2+: Convert ONENAND " Jon Hunter
2013-03-15 15:21 ` [PATCH V3 15/18] ARM: OMAP2+: Detect incorrectly aligned GPMC base address Jon Hunter
2013-03-15 15:21 ` [PATCH V3 16/18] ARM: OMAP2+: Remove unnecesssary GPMC definitions and variable Jon Hunter
2013-03-15 15:21 ` [PATCH V3 17/18] ARM: OMAP2+: Allow GPMC probe to complete even if CS mapping fails Jon Hunter
2013-03-15 15:21 ` [PATCH V3 18/18] ARM: OMAP2+: return -ENODEV if GPMC child device creation fails Jon Hunter
2013-03-17  5:34 ` [PATCH V3 00/18] ARM: OMAP2+: GPMC clean-up and DT update Ezequiel Garcia

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=51471A13.9060803@ti.com \
    --to=jon-hunter@ti$(echo .)com \
    --cc=linux-arm-kernel@lists$(echo .)infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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