All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sergei Shtylyov <sshtylyov@ru.mvista.com>
To: Stanislaw Gruszka <stf_xl@wp.pl>
Cc: Andrew Victor <linux@maxim.org.za>,
	Nicolas Ferre <nicolas.ferre@atmel.com>,
	Haavard Skinnemoen <haavard.skinnemoen@atmel.com>,
	linux-ide@vger.kernel.org
Subject: Re: [RFC][PATCH] at91_ide driver
Date: Thu, 22 Jan 2009 16:48:25 +0300	[thread overview]
Message-ID: <49787929.2010305@ru.mvista.com> (raw)
In-Reply-To: <200901221414.39802.stf_xl@wp.pl>

Stanislaw Gruszka wrote:

>>>>>+/* Proper CS address space will be added */
>>>>>+#define AT91_IDE_TASK_FILE	0x00c00000
>>>>>+#define AT91_IDE_CTRL_REG	0x00e00000

>>   Besides, I'm not sure: these 2 address range are decoded via 1 SMC 
>>chip select or 2?

> These are in one chip select address space.

    Then some external circutry converts the single nCS into -CS0 and -CS1?

>>>Well, we could add #ifdef with diffrent implementation of init_smc_mode(), 
>>>set_8bit_mode(), etc... 

>>   No, #ifdef'ery is certainly not an option.

> Why?

    It's totally ugly and unacceptable way of doing things. It seems also 
totally wrong to add support for totally incompatible SMC to this driver 
(especially with #ifdef's). Another driver should be written if CF support is 
required.

> Other option is create some header files and implement and exporting these
> functions from processor specific code. This add files dependencies and spread
> things across sources, FWIW.

    I don't think it's feasible as that SMC is just too different.

>>>>>+	/* values are rounded up so we need to assure cycle is larger than pulse */
>>>>>+	if (t0 < t1 + t2 + t9)
>>>>>+		t0 = t1 + t2 + t9;
>>>>>+
>>>>>+	/* setup calculated timings */
>>>>>+	at91_sys_write(AT91_SMC_SETUP(chipselect), AT91_SMC_NWESETUP_(t1) |
>>>>>+						   AT91_SMC_NCS_WRSETUP_(0) |
>>>>>+						   AT91_SMC_NRDSETUP_(t1) |
>>>>>+						   AT91_SMC_NCS_RDSETUP_(0));
>>>>>+	at91_sys_write(AT91_SMC_PULSE(chipselect), AT91_SMC_NWEPULSE_(t2) |
>>>>>+						   AT91_SMC_NCS_WRPULSE_(t1 + t2 + t9) |

>>>>  With zero address to CS setup time it's the same as t0.

>>>Not true for slower PIO modes.

>>   Well, you're right probably...

     They should better be the same and in any case t1 + t2 + t9 must be no 
less than t0min.

>>>But CS pulse can be t0.

>>   Yes, it must be no less than t0.

> Pulse time can be less than t0, cycle time no.

    nCS pulse time cannot be less than t0min as by address valid ATA spec 
means both address and -CSx valid, not just address.

>>>Maybe this is simpler, host have to react on IORDY signal but device
>>>just not assert it. 

>>>I would like to remove this code and have allways NWAIT
>>>READY mode to make flipping 8/16 simpler.

>>   I don't understand how these are connected.

> Both set SMC MODE register. If I will not change NWAIT in MODE register,
> I can write static values in set_8/16bit_mode and stop doing logical operation on it.

    No, that's undesirable.

>>>>   Why not pass it normally, via the platform device's resource?

>>>Irq pin is board specific. When use resource I will need in processor 
>>>code modify resource.

>>   So what? That's pretty normal and won't take much code.

> I see only more memory and code usage. Let's reverse question:
> Why use RESOURCE_IRQ when we have irq in board data?

    Len't reverse it again: why have it in board data when the normal location 
is the resource? :-)

> Cheers
> Stanislaw Gruszka

MBR, Sergei

  reply	other threads:[~2009-01-22 13:47 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-14 12:45 [RFC][PATCH] at91_ide driver Stanislaw Gruszka
2009-01-14 12:58 ` Haavard Skinnemoen
2009-01-14 13:21   ` Stanislaw Gruszka
2009-01-14 17:05   ` Sergei Shtylyov
2009-01-22 11:19   ` Stanislaw Gruszka
2009-01-14 13:17 ` Alan Cox
2009-01-14 14:35   ` Stanislaw Gruszka
2009-01-14 15:14     ` Alan Cox
2009-01-16 13:32   ` Sergei Shtylyov
2009-01-16 15:03     ` Stanislaw Gruszka
2009-01-16 15:34       ` Sergei Shtylyov
2009-01-16 16:13         ` Alan Cox
2009-01-17 20:08           ` Sergei Shtylyov
2009-01-17 20:20             ` Alan Cox
2009-01-18 10:58             ` Sergei Shtylyov
2009-01-18 15:29               ` Sergei Shtylyov
2009-01-19 11:51         ` Stanislaw Gruszka
2009-01-19 15:20           ` Sergei Shtylyov
2009-01-16 16:58     ` Bartlomiej Zolnierkiewicz
2009-01-17 16:45       ` Sergei Shtylyov
2009-01-19 22:50         ` Sergei Shtylyov
2009-01-27 15:31           ` Bartlomiej Zolnierkiewicz
2009-01-19 11:14       ` Stanislaw Gruszka
2009-01-19 12:52         ` Bartlomiej Zolnierkiewicz
2009-01-16 17:43 ` Bartlomiej Zolnierkiewicz
2009-01-19 11:20   ` Stanislaw Gruszka
2009-01-30  9:05   ` Stanislaw Gruszka
2009-02-01 17:13     ` Bartlomiej Zolnierkiewicz
2009-02-02 12:35       ` Stanislaw Gruszka
2009-01-20 11:07 ` Sergei Shtylyov
2009-01-20 14:49   ` Stanislaw Gruszka
2009-01-20 15:33     ` Sergei Shtylyov
2009-01-21 10:33   ` Stanislaw Gruszka
2009-01-22  9:44     ` Sergei Shtylyov
2009-01-22 10:15       ` Stanislaw Gruszka
2009-01-22 11:12   ` Stanislaw Gruszka
2009-01-22 12:06     ` Sergei Shtylyov
2009-01-22 12:16       ` Sergei Shtylyov
2009-01-22 12:24         ` Sergei Shtylyov
2009-01-22 12:57           ` Stanislaw Gruszka
2009-01-22 13:38             ` Sergei Shtylyov
2009-01-22 13:14       ` Stanislaw Gruszka
2009-01-22 13:48         ` Sergei Shtylyov [this message]
2009-01-22 14:13           ` Stanislaw Gruszka
2009-01-27 15:46           ` Sergei Shtylyov
2009-01-29 14:48             ` Stanislaw Gruszka
2009-01-29 15:22               ` Sergei Shtylyov
2009-01-22 14:39       ` Stanislaw Gruszka

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=49787929.2010305@ru.mvista.com \
    --to=sshtylyov@ru.mvista.com \
    --cc=haavard.skinnemoen@atmel.com \
    --cc=linux-ide@vger.kernel.org \
    --cc=linux@maxim.org.za \
    --cc=nicolas.ferre@atmel.com \
    --cc=stf_xl@wp.pl \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.