public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Better support for Delkin cardbus CF adapters -- IDE layer
@ 2007-11-12 18:03 Ron Yorgason
  2007-11-12 19:11 ` Mark Lord
  2007-11-12 19:48 ` Alan Cox
  0 siblings, 2 replies; 8+ messages in thread
From: Ron Yorgason @ 2007-11-12 18:03 UTC (permalink / raw)
  To: linux-kernel

Please CC me with any responses, I'm not on the lkml.

I'm trying to build a budget SSD using cardbus CF adapters & fast CF
cards.  The latest CF adapters support UDMA and PIO access methods,
and CF cards support these too.  The latest Delkin model boasts speeds
of 45MB/s.

I currently own this card from Synchrotech,
http://www.synchrotech.com/products/media-adapters-pcmcia-memory-cards_01.html
as well as the latest Delkin model.  The Synchrotech is recognized as
a Delkin, with PCI vendor id =0x1145, device id = 0xf021.  The new
Delkin has device id 0xf103.  I presume that in order to have the new
Delkin recognized, I just need to add the appropriate line to the
struct pci_device_id table.

But I'm concerned about performance.  The delkin_cb.c file states:

 *  This is slightly peculiar, in that it is a PCI driver,
 *  but is NOT an IDE PCI driver -- the IDE layer does not directly
 *  support hot insertion/removal of PCI interfaces, so this driver
 *  is unable to use the IDE PCI interfaces.  Instead, it uses the
 *  same interfaces as the ide-cs (PCMCIA) driver uses.
 *  On the plus side, the driver is also smaller/simpler this way.


My attempts to use hdparm to turn on DMA for my device have failed.  I
assume this means DMA is not currently supported.  In my tests, read
support seems fast enough, but writing maxes out around 2MB/s.  And if
there is a lot of reading and writing going on (ie, trying to compile
the kernel), performance is pretty abysmal.  What would it take to get
proper DMA support?  Is it an architecture problem, in that this
doesn't use the normal IDE PCI driver?  Is it a lack of documentation
on card specs?  What can I do to help?

--Ron

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Better support for Delkin cardbus CF adapters -- IDE layer
  2007-11-12 18:03 Ron Yorgason
@ 2007-11-12 19:11 ` Mark Lord
  2007-11-12 19:48 ` Alan Cox
  1 sibling, 0 replies; 8+ messages in thread
From: Mark Lord @ 2007-11-12 19:11 UTC (permalink / raw)
  To: Ron Yorgason; +Cc: linux-kernel

Ron Yorgason wrote:
> But I'm concerned about performance.  The delkin_cb.c file states:
> 
>  *  This is slightly peculiar, in that it is a PCI driver,
>  *  but is NOT an IDE PCI driver -- the IDE layer does not directly
>  *  support hot insertion/removal of PCI interfaces, so this driver
>  *  is unable to use the IDE PCI interfaces.  Instead, it uses the
>  *  same interfaces as the ide-cs (PCMCIA) driver uses.
>  *  On the plus side, the driver is also smaller/simpler this way.
> 
> 
> My attempts to use hdparm to turn on DMA for my device have failed.  I
> assume this means DMA is not currently supported.  In my tests, read
> support seems fast enough, but writing maxes out around 2MB/s.  And if
> there is a lot of reading and writing going on (ie, trying to compile
> the kernel), performance is pretty abysmal.  What would it take to get
> proper DMA support?  Is it an architecture problem, in that this
> doesn't use the normal IDE PCI driver?  Is it a lack of documentation
> on card specs?  What can I do to help?
..

The problem is total lack of documentation.

If you can find some docs, then we can fully support it,
both in old IDE (as current), and in the newer libata (not there at all now).

Cheers 

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Better support for Delkin cardbus CF adapters -- IDE layer
  2007-11-12 18:03 Ron Yorgason
  2007-11-12 19:11 ` Mark Lord
@ 2007-11-12 19:48 ` Alan Cox
  2007-11-13 22:04   ` Ron Yorgason
  1 sibling, 1 reply; 8+ messages in thread
From: Alan Cox @ 2007-11-12 19:48 UTC (permalink / raw)
  To: Ron Yorgason; +Cc: linux-kernel

> the kernel), performance is pretty abysmal.  What would it take to get
> proper DMA support?  Is it an architecture problem, in that this
> doesn't use the normal IDE PCI driver?  Is it a lack of documentation
> on card specs?  What can I do to help?

Persuade Delkin to provide specifications either publically or under NDA
(but allowing a GPL source code driver) with one of the ATA developers.

For a fairly typical SFF style controller it shouldn't take long to
produce a test driver.

Alan

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Better support for Delkin cardbus CF adapters -- IDE layer
  2007-11-12 19:48 ` Alan Cox
@ 2007-11-13 22:04   ` Ron Yorgason
  2007-11-13 22:57     ` Alan Cox
  0 siblings, 1 reply; 8+ messages in thread
From: Ron Yorgason @ 2007-11-13 22:04 UTC (permalink / raw)
  To: Alan Cox; +Cc: linux-kernel

I received a response from Synchrotech, the supplier of one of my
cards.  He said that they were under NDA with their manufacturing
partner and couldn't offer the full specs.  However he could tell me
the specific bridge chip:

JMicron JMB368 PCIe to PATA controller

A quick google led me to their website where they advertised this
chipset as being supported by these OS's:

OS                            JMB368
Windows                            2K/XP/2003/Vista
BSD/FreeBSD                      FreeBSD 5.5 or above
BSD/OpenBSD                           OpenBSD 3.x
Linux/Redhat/Fedora                  Fedora Core 6
Linux/Suse                             Suse 10.1
Linux/Gentoo                     Gentoo 2006.1 liveCD
Linux/Ubuntu                          Ubuntu 6.10
Linux/RHEL                               RHEL 5
Linux/CENTOS                           CENTOS 5
Linux/Suse Enterprise              Suse Enterprise 10
Linux/Other Linux Distrbution   Kernel 2.6.18.2 or above
Unix/SCO OpenServer                SCO OpenServer 6
Unix/SCO UnixWare                SCO OpenServer 7.1.4
Unix/Solaris                           Solaris 10
NAS/FreeNAS                          FreeNAS 0.65
NAS/OpenFiler                        OpenFiler 2.3
NAS/Opene-NAS                       NAS/Opene-NAS
MAC OS X                            MAC OS 10.4.3*


It seems support for this chipset is already available in the kernel.
Is this enough information to enable DMA & PIO support for this
device?

--Ron

On Nov 12, 2007 2:48 PM, Alan Cox <alan@lxorguk.ukuu.org.uk> wrote:
> > the kernel), performance is pretty abysmal.  What would it take to get
> > proper DMA support?  Is it an architecture problem, in that this
> > doesn't use the normal IDE PCI driver?  Is it a lack of documentation
> > on card specs?  What can I do to help?
>
> Persuade Delkin to provide specifications either publically or under NDA
> (but allowing a GPL source code driver) with one of the ATA developers.
>
> For a fairly typical SFF style controller it shouldn't take long to
> produce a test driver.
>
> Alan
>

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Better support for Delkin cardbus CF adapters -- IDE layer
  2007-11-13 22:04   ` Ron Yorgason
@ 2007-11-13 22:57     ` Alan Cox
  2007-11-13 23:48       ` Ron Yorgason
  0 siblings, 1 reply; 8+ messages in thread
From: Alan Cox @ 2007-11-13 22:57 UTC (permalink / raw)
  To: Ron Yorgason; +Cc: linux-kernel

On Tue, 13 Nov 2007 17:04:57 -0500
"Ron Yorgason" <yorgasor@gmail.com> wrote:

> I received a response from Synchrotech, the supplier of one of my
> cards.  He said that they were under NDA with their manufacturing
> partner and couldn't offer the full specs.  However he could tell me
> the specific bridge chip:
> 
> JMicron JMB368 PCIe to PATA controller

Seems odd for the cardbus controller as cardbus is PCI not PCIe but would
make sense for Expresscard devices. In theory a Jmicron plug in card
would just work.


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Better support for Delkin cardbus CF adapters -- IDE layer
  2007-11-13 22:57     ` Alan Cox
@ 2007-11-13 23:48       ` Ron Yorgason
  0 siblings, 0 replies; 8+ messages in thread
From: Ron Yorgason @ 2007-11-13 23:48 UTC (permalink / raw)
  To: Alan Cox; +Cc: linux-kernel

Bah, you're right.  He gave me the name for the wrong device.  It's
really an Interfirm HS-CF32 device.  He said the company has gone out
of business, but a quick google shows an interfirm.co.jp site with
this HS-CF32 device on it.  I'll try and get specifications there.

--Ron

On Nov 13, 2007 5:57 PM, Alan Cox <alan@lxorguk.ukuu.org.uk> wrote:
> On Tue, 13 Nov 2007 17:04:57 -0500
> "Ron Yorgason" <yorgasor@gmail.com> wrote:
>
> > I received a response from Synchrotech, the supplier of one of my
> > cards.  He said that they were under NDA with their manufacturing
> > partner and couldn't offer the full specs.  However he could tell me
> > the specific bridge chip:
> >
> > JMicron JMB368 PCIe to PATA controller
>
> Seems odd for the cardbus controller as cardbus is PCI not PCIe but would
> make sense for Expresscard devices. In theory a Jmicron plug in card
> would just work.
>
>

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Better support for Delkin cardbus CF adapters -- IDE layer
@ 2008-06-09 11:46 Will C
  2008-06-09 13:57 ` Alan Cox
  0 siblings, 1 reply; 8+ messages in thread
From: Will C @ 2008-06-09 11:46 UTC (permalink / raw)
  To: linux-kernel; +Cc: yorgasor

( please CC me also )

I have the same Delkin 32-bit UDMA Cardbus to CF adpater also, (vid: 0x1145 pid: 0xf103)

The windows driver for it, supplied by Delkin is written by Workbit, it seems they make the bridge chip inside:

http://www.workbit.co.jp/products/utata.html


Google translation:

http://66.102.9.104/translate_c?hl=en&sl=ja&u=http://www.workbit.co.jp/products/utata.html


The contact form does not translate correctly and so it seems someone fluent in Japanese would be the best bet to approach Workbit for documentation/specification.

I have a brand new spare card here (with a Delkin 2GB 305x speed CF card in it) and am willing to send it to a kernel developer interested in working on a driver for it (Mark Lord?). Alternatively if anyone wants me to dump registers under Windows, test drivers etc I am prepared to put in the time to help in these ways. FWIW there seems to be a MacOSX driver available as well as a windows one according to the site.

This card is currently the fastest CF reader available (except for clumsy FireWire readers) and offers an ideal  way of adding a SSD to a laptop - since it is very fast (40MB/s) and could enable a laptop to run its OS from the Cardbus slot, leaving the the main HDD to be spun up whenever large amounts of data need to be accessed. There seems to be a lot 'DIY SSD' enthusiasts out there (like me) along with digital photographers who would make use of a driver for this card under Linux.

Please let me know if anyone is interested and I can help in any way.

Cheers,

Will Crozier



      __________________________________________________________
Sent from Yahoo! Mail.
A Smarter Email http://uk.docs.yahoo.com/nowyoucan.html

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Better support for Delkin cardbus CF adapters -- IDE layer
  2008-06-09 11:46 Better support for Delkin cardbus CF adapters -- IDE layer Will C
@ 2008-06-09 13:57 ` Alan Cox
  0 siblings, 0 replies; 8+ messages in thread
From: Alan Cox @ 2008-06-09 13:57 UTC (permalink / raw)
  To: Will C; +Cc: linux-kernel, yorgasor

> http://66.102.9.104/translate_c?hl=en&sl=ja&u=http://www.workbit.co.jp/products/utata.html
> 
> The contact form does not translate correctly and so it seems someone fluent in Japanese would be the best bet to approach Workbit for documentation/specification.

Japanese people have tried. ITOH Yasafumi one of the BSD folks has done
some very significant reverse engineering work on the Delkin and friends
to get PIO mode working properly. Our libata driver is basically built on
that work.

> I have a brand new spare card here (with a Delkin 2GB 305x speed CF card in it) and am willing to send it to a kernel developer interested in working on a driver for it (Mark Lord?). Alternatively if anyone wants me to dump registers under Windows, test drivers etc I am prepared to put in the time to help in these ways. 

The current state of affairs is the libata pata_ninja32 driver. That
should give good PIO performance. If you want DMA I think you'll have to
do it yourself however, or hope the BSD folks get it working reliably.


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2008-06-09 14:14 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-06-09 11:46 Better support for Delkin cardbus CF adapters -- IDE layer Will C
2008-06-09 13:57 ` Alan Cox
  -- strict thread matches above, loose matches on Subject: below --
2007-11-12 18:03 Ron Yorgason
2007-11-12 19:11 ` Mark Lord
2007-11-12 19:48 ` Alan Cox
2007-11-13 22:04   ` Ron Yorgason
2007-11-13 22:57     ` Alan Cox
2007-11-13 23:48       ` Ron Yorgason

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox