tips and tricks, on using compact flash under linux - Page 1
Forum section: electronics / general

author: legacy
author_rank: Super Contributor
timestamp: April 22, 2016, 06:28:21 pm
content: so, I happen to have a 64Gbyte CF attached to a PCMCIA adaptor, and I need to back up the first slice of my laptopI am on linux 2.6.39, I can't upgrade it, the CF is handled by "ide-cf"(1) (statically compiled inside the kernel), and dmesg is reporting the CF handled as "HDA"(cat /proc/devices is confirming the major device, equal to 3, which is "HDA" in term of "device name" under linux)thus, I'd like to type the followingCode:kanojo #sudo dd if=/dev/sda1 of=/dev/hdawhich actually works, but ... it's damn too slowand forking a bigger buffer doesn't solveCode:kanojo #sudo dd if=/dev/sda1 of=/dev/hda bs=32Mbytemy Compact Flash is made by SanDisk, it's called "Exteme", and claimed to be able to read/write things with a bandwidth of 160Mbyte/secthus I'd like to know why? on my laptop I am going something like ~10Mbyte/secthere is no filesystem in the middle on the compact flash (which can cause overhead due to the flash needs, e.g. page erase before write)any trick ? advice ? suggestion ? are the welcomethanks(1) ide-cf is p/ATA PCMCIA hard drive supportthere is also a s/ATA PCMCIA hard drive supportunfortunately it doesn't work stable on my hardware

author: legacy
author_rank: Super Contributor
timestamp: April 22, 2016, 06:42:23 pm
content: linux 2.6.39Device Drivers -> ATA/ATAPI/MFM/RLL support (DEPRECATED) -> PCMCIA IDE support, "A driver for PCMCIA IDE/ATA disk cards",drivers/ide/ide-cs.cDevice Drivers -> Serial ATA and Parallel ATA drivers -> PCMCIA PATA support, "PCMCIA PATA controller driver",drivers/ata/pata_pcmcia.cedit:mac-fdiskdoesn't recognize the correct amount of blocks in the CF card (it says 2Gbyte, wrong)whilecfdiskandfdiskrecognize it correctly (they say 64Gbyte, correct)

author: legacy
author_rank: Super Contributor
timestamp: April 22, 2016, 06:48:10 pm
content: PCMCIA StorageToday's PCMCIA/CF storage support densities in the gigabyte realm. The storage cards come in different flavors:Miniature IDE disk drivesormicrodrives. These are tiny versions of mechanical hard drives that use magnetic media. Their data transfer rates are typically higher than solid state memory devices, but IDE drives have spin-up and seek latencies before data can be transferred. The IDE Card Services driver ide_cs, in conjunction with legacy IDE drivers, is used to communicate with such memory cards.Solid-state memory cardsthatemulate IDE. Such cards have no moving parts and are usually based on flash memory, which is transparent to the operating system because of the IDE emulation. Because these drives are effectively IDE-based, the same IDE Card Services driver (ide_cs) can be used to talk to them.Memory cardsthat use flash memory, butwithout IDE emulation. The memory_cs Card Services driver provides block and character interfaces over such cards. The block interface is used to put a filesystem onto card memory, whereas the character interface is used to access raw data. You may also use memory_cs to read the attribute memory space of any PCMCIA card.

author: legacy
author_rank: Super Contributor
timestamp: April 22, 2016, 06:49:13 pm
content: my SanDisk CF card is described by case2, Solid-state memory cards that emulate IDE

author: legacy
author_rank: Super Contributor
timestamp: April 22, 2016, 06:55:22 pm
content: I do not know the state of art with kernel 3.x and 4.x, with 2.6.39 "drivers/ata/pata_pcmcia.c" seems to be "experimental" for CFhere it doesn't work as expectedthus I have chosen "drivers/ide/ide-cs.c", which is known to be rock (even if old and deprecated)feel free to let me know your experiences with such a kernel modules and devices

author: stmdude
author_rank: Frequent Contributor
timestamp: April 22, 2016, 06:58:36 pm
content: Does hdparm give you any clues?If I recall correctly, 2.6.x was a bit careful about enabling UltraDMA, Multi-sector transfers and other features needed for maximum performance.

author: legacy
author_rank: Super Contributor
timestamp: April 22, 2016, 07:13:17 pm
content: Code:* sys-apps/hdparmHomepage: http://sourceforge.net/projects/hdparm/Description: Utility to change hard drive performance parametersLicense: BSD GPL-2Code:# hdparm -I /dev/hda/dev/hda:CompactFlash ATA deviceModel Number: SDCFXS-064GSerial Number: GAZ020116120307Firmware Revision: HDX12.03Standards:Likely used: 6Configuration:Logicalmaxcurrentcylinders6553565535heads1616sectors/track6363--CHS current addressable sectors: 66059280LBA user addressable sectors: 125059072LBA48 user addressable sectors: 125059072Logical/Physical Sector size: 512 bytesdevice size with M = 1024*1024: 61064 MBytesdevice size with M = 1000*1000: 64030 MBytes (64 GB)cache/buffer size = 1 KBytes (type=DualPort)Capabilities:LBA, IORDY(may be)(cannot be disabled)bytes avail on r/w long: 4Standby timer values: spec'd by VendorR/W multiple sector transfer: Max = 1Current = 0Advanced power management level: disabledDMA: not supportedPIO: pio0 pio1 pio2 pio3 pio4Cycle time: no flow control=120ns IORDY flow control=120nsCommands/features:EnabledSupported:Power Management feature setWrite cacheWRITE_BUFFER commandREAD_BUFFER commandNOP cmdCFA feature setAdvanced Power Management feature set*48-bit Address feature setMandatory FLUSH_CACHEFLUSH_CACHE_EXTCFA max advanced io_udma cycle time: 80nsCFA max advanced mem_udma cycle time: 80ns*CFA Power Level 1 (max 500mA)HW reset results:CBLID- above VihDevice num = 1Integrity word not set (found 0x0000, expected 0xe4a5)

author: legacy
author_rank: Super Contributor
timestamp: April 22, 2016, 07:15:26 pm
content: 125059072 LBA address is correctsee mac-fdiskCode:# mac-fdisk /dev/hdaCommand (? for help): isize of 'device' is 4194304 blocks:new size of 'device' is 4194304 blocksCommand (? for help): p/dev/hda# type name length base ( size ) system/dev/hda1 Apple_partition_map Apple 63 @ 1 ( 31.5k) Partition map/dev/hda2 Apple_Free Extra 4194240 @ 64 ( 2.0G) Free spaceBlock size=512, Number of Blocks=4194304DeviceType=0x0, DeviceId=0x04194304 instead of 125059072

author: legacy
author_rank: Super Contributor
timestamp: April 22, 2016, 07:16:47 pm
content: Code:R/W multiple sector transfer: Max = 1 Current = 0DMA: not supportedthis is interesting for an UDMA device

author: stmdude
author_rank: Frequent Contributor
timestamp: April 22, 2016, 07:18:10 pm
content: Can you run hdparm without parameters? It should just spit out the performance related settings then.

author: legacy
author_rank: Super Contributor
timestamp: April 22, 2016, 07:22:34 pm
content: Code:# hdparm /dev/hda/dev/hda:multcount = 0 (off)IO_support = 0 (default)unmaskirq = 0 (off)using_dma = 0 (off)keepsettings = 0 (off)readonly = 0 (off)readahead = 256 (on)geometry = 65535/255/63, sectors = 125059072, start = 0

author: legacy
author_rank: Super Contributor
timestamp: April 22, 2016, 07:28:10 pm
content: Code:# hdparm -a512 -d1 -m16 -u1 /dev/hda/dev/hda:setting fs readahead to 512setting multcount to 16HDIO_SET_MULTCOUNT failed: Invalid argumentsetting unmaskirq to 1 (on)setting using_dma to 1 (on)HDIO_SET_DMA failed: Operation not permittedmultcount = 0 (off)unmaskirq = 1 (on)using_dma = 0 (off)readahead = 512 (on)it seems I have to recompile the kernel adding more support

author: stmdude
author_rank: Frequent Contributor
timestamp: April 22, 2016, 07:35:23 pm
content: Yup, that would do it.That's the most safe settings it could choose, but definitely not the fastest.Quote from: legacy on April 22, 2016, 07:22:34 pmSo, those are the important ones.Right now, each 512byte sector is read like this:1. Send READ_SECTOR command to the ATA controller2. Twiddle thumbs until IRQ fires3. Issue 256 IO operations to read the data. (16 bits per read)4. DoneNow, the "multicount" setting changes how many sectors that can be transfered in one go. I.e, to transfer (for example) 4 sectors (sequential sectors), you only have to issue one command, and wait for one IRQ. This produces a noticable increase in performance.You can adjust this value with the "-m" parameter to hdparm"IO_support" says if the IO operations are 16 or 32 bits (0 versus 1). Going 32 bits halves the number of IO operations needed to read out the data This also produces a noticable increase in performance.You can adjust this value with the "-c" parameter to hdparmYou can adjust this value with the "-c" parameter to hdparm"using_dma" eliminates the IO operations all together. The data is DMAd into your RAM for you, and ready to use by the time the IRQ fires.You can adjust this value with the "-d" parameter to hdparmIt seems your controller or disk doesn't like DMA though..The mismatch in sectors reported from various fdisks is an issue I've seen myself, even on 4.4.x kernels. Don't know what's up there..

author: stmdude
author_rank: Frequent Contributor
timestamp: April 22, 2016, 07:37:05 pm
content: Quote from: legacy on April 22, 2016, 07:28:10 pmThat's possible. It's been many years since I configured a 2.6.x kernel, and used (what effectively is) IDE disks.

author: ade
author_rank: Unknown
timestamp: April 22, 2016, 08:13:35 pm
content: I'm pretty sure one cannot do IDE UDMA over PCMCIA.

author: legacy
author_rank: Super Contributor
timestamp: April 22, 2016, 08:26:48 pm
content: I am on IBM X61S, it's an intel core duo2 laptopgoing to recompile the kernel

author: legacy
author_rank: Super Contributor
timestamp: April 22, 2016, 08:27:58 pm
content: it's PCMCIA v2.1

author: legacy
author_rank: Super Contributor
timestamp: April 22, 2016, 08:34:17 pm
content: Quotean example of aproductthat should work that wayit might be a linux matter (kernel module, configuration),or an hardware matter (my PCMCIA controller)who knows?

author: legacy
author_rank: Super Contributor
timestamp: April 22, 2016, 08:38:04 pm
content: andhereit is CF technologyPerformance up to: Read 37.8 MB/sec ; Write 27.0 MB/secis there any valid reason to consider a bottleneck between the CF interface (inside the card) and PCMCIA?

author: ade
author_rank: Unknown
timestamp: April 22, 2016, 09:09:47 pm
content: QuoteCF basically supports three different interfaces: PIO (Port I/O), MMIO (Memory-Mapped I/O) and DMA.PIO is the slowest, < 10 MB/s. MMIO can go between 10 MB/s and 20 MB/s depending on the exact transfer method. DMA is much faster, potentially > 100 MB/s.However, the interface we typically call "PCMCIA" does not support CF/IDE/ATA DMA (*), so it is limited to MMIO at best.DMA support only came with "PCMCIA 5.0" which is a completely different 32-bit interface more commonly called CardBus.So from the above it seems that you are getting MMIO throughput. There may be a way to optimize it a bit by playing with different timings / settings but not to DMA speeds.(*) Note: I believe PCMCIA 2.1 optionally specified a type of rudimentary DMA, but it is not directly compatible with IDE DMA and hence rarely implemented.

author: Rasz
author_rank: Super Contributor
timestamp: April 23, 2016, 04:34:03 am
content: solutionhttp://www.ebay.com/itm/CF-to-44-Pin-IDE-HDD-Hard-Disk-Drive-Adapter-Converter-for-Notebook-PC-/162025970497but sincehttp://www.amazon.com/SanDisk-Extreme-Compact-Memory-SDCFXPS-064G-X46/dp/B00ECEVFFO= $85.95better solution is $30 proper sata ssd likehttp://www.amazon.com/Transcend-MSA370-mSATA-Solid-TS64GMSA370/dp/B00K67E5DA

author: Kilrah
author_rank: Unknown
timestamp: April 23, 2016, 07:03:07 am
content: I played with a CF and PCMCIA maybe 5-6 years ago to find a use for the 32GB CF I had for my camera after I changed to a new one that used SD instead, if I remember well the PCMCIA to CF adapter had to explicitely support UDMA if you wanted that to work and it was very rare, there were like only one or 2 models available that did and they were "complex" devices, i.e. included a controller chip with drivers, not a simple passive adapter.

author: Kilrah
author_rank: Unknown
timestamp: April 23, 2016, 07:20:59 am
content: Found the reference of the adapter I had in my old emails (was actually 8 years ago):http://www.mydigitaldiscount.com/delkin-compact-flash-pcmcia-cardbus-32-adapter-ddcfprocb-ad/I remembered correctly about a driver being needed, so might not be of much use for you as it's likely not supported on linux.

author: Rasz
author_rank: Super Contributor
timestamp: April 23, 2016, 07:55:32 am
content: Quote from: Kilrah on April 23, 2016, 07:20:59 amits not pcmcia (essentially ISA), its CardBus (pretty much PCI), thats why it needs a driver for a full blown ide controller inside

author: ade
author_rank: Unknown
timestamp: April 23, 2016, 08:01:20 am
content: Kilrah, the terminology is a bit confusing but what you've linked to is what we'd commonly call "CardBus", not "PCMCIA".So that adapter will only work on laptops with a 32-bit CardBus slot, not ones with a "PCMCIA" port.It is confusing because CardBus was technically described in the "PCMCIA 5.0" specification.PCMCIA stands for "People Can't Memorize Computer Industry Acronyms".Edit: Rasz beat me to it!

author: Kilrah
author_rank: Unknown
timestamp: April 23, 2016, 08:15:26 am
content: Quote from: ade on April 23, 2016, 08:01:20 amSure, but precisely the reason the whole thing is confusing is that everybody uses "PCMCIA" for anything in that form factor and Cardbus is never really mentioned... and since CardBus is already 20 years old you can be pretty sure that close to 100% of what's referred to as PCMCIA today is actually CardBus. Specifically I doubt that OP is using a 20+ year old machine...

author: ade
author_rank: Unknown
timestamp: April 23, 2016, 08:55:58 am
content: QuoteTrue... the laptop itself should support CardBus.

author: isometrik
author_rank: Regular Contributor
timestamp: April 23, 2016, 09:20:00 am
content: I am not sure if that is the case for all drive types, but generally speaking, Linux (and other flavours of *nix) offers two types of block devices: buffered (slower) and raw (faster).For example, the buffered (slower) block device "/dev/disk0" will have a raw (faster) equivalent block device under "/dev/rdisk0". The raw (faster) block device name is prepended with a "r".Have a try, it should make the "dd" transfer much faster.

author: Rasz
author_rank: Super Contributor
timestamp: April 23, 2016, 10:54:04 am
content: Quote from: Kilrah on April 23, 2016, 08:15:26 amthats because you dont know the author13 year old kernel should be a good hintnot to mention pcmcia cf converters are common, there is no electronics inside, just two sockets, cardbus ones are full PCI ide controllers.

author: legacy
author_rank: Super Contributor
timestamp: April 23, 2016, 11:20:22 am
content: Quote from: ade on April 23, 2016, 08:01:20 am

author: legacy
author_rank: Super Contributor
timestamp: April 23, 2016, 11:23:30 am
content: Quote from: ade on April 23, 2016, 08:55:58 amyes, I enabled the support, 16 and 32bitmy hardware is supported by (kernel module name) "yenta_cardbus"

author: legacy
author_rank: Super Contributor
timestamp: April 23, 2016, 11:52:17 am
content: Code:x61s ~ # lspcmcia -vSocket 0 Bridge:(bus ID: 0000:05:00.0)Configuration:state: onready: yesVoltage: 3.3VVcc: 3.3VVpp: 0.0VSocket 0 Device 0:[ide-cs](bus ID: 0.0)Configuration:state: on[io 0x4100-0x410f flags 0x110][io 0x0000 flags 0x100][mem 0x00000000 flags 0x200][mem 0x00000000 flags 0x200][mem 0x00000000 flags 0x200][mem 0x00000000 flags 0x200]Product Name: SANDISKSDCFXS-064GIdentification:manf_id: 0x00f1card_id: 0x0101function: 4 (fixed disk)prod_id(1): "SANDISK" (0xda4ae7f3)prod_id(2): "SDCFXS-064G" (0xd2534b65)prod_id(3): --- (---)prod_id(4): --- (---)Code:x61s ~ # pccardctl infoPRODID_1="SANDISK"PRODID_2="SDCFXS-064G"PRODID_3=""PRODID_4=""MANFID=00f1,0101FUNCID=4x61s ~ #interesting, the linux kernel module in S/ATA PCMCI support does not recognized MANFID=00f1,0101drivers/ata/pata_pcmcia.cCode:...static struct pcmcia_device_id pcmcia_devices[] ={PCMCIA_DEVICE_FUNC_ID(4),PCMCIA_DEVICE_MANF_CARD(0x0000, 0x0000), /* Corsair */PCMCIA_DEVICE_MANF_CARD(0x0007, 0x0000), /* Hitachi */PCMCIA_DEVICE_MANF_CARD(0x000a, 0x0000), /* I-O Data CFA */PCMCIA_DEVICE_MANF_CARD(0x001c, 0x0001), /* Mitsubishi CFA */PCMCIA_DEVICE_MANF_CARD(0x0032, 0x0704),PCMCIA_DEVICE_MANF_CARD(0x0032, 0x2904),PCMCIA_DEVICE_MANF_CARD(0x0045, 0x0401), /* SanDisk CFA */

author: legacy
author_rank: Super Contributor
timestamp: April 23, 2016, 11:55:11 am
content: Bus options (PCI etc.) ---> PCCard (PCMCIA/CardBus) support --->Code:--- PCCard (PCMCIA/CardBus) support ? ?? ? <*> 16-bit PCMCIA support ? ?? ? [*] Load CIS updates from userspace (EXPERIMENTAL) ? ?? ? -*- 32-bit CardBus support ? ?? ? *** PC-card bridges *** ? ?? ? <M> CardBus yenta-compatible bridge support

author: legacy
author_rank: Super Contributor
timestamp: April 23, 2016, 12:17:01 pm
content: &&thislink seems interesting whilethisis LoL

author: legacy
author_rank: Super Contributor
timestamp: April 23, 2016, 12:28:13 pm
content: interesting, a lot of problems with 2.6.24CF detected as PIO0 is performing 1.6 MByte/secoh my goodnessQuote(2.6.24-rc4-mm1 and Very Slow PCMCIA Compact Flash)

author: legacy
author_rank: Super Contributor
timestamp: April 23, 2016, 12:31:19 pm
content: also it looks like pata_pcmcia is always PIO mode 0Code:/**pcmcia_init_one-attach a PCMCIA interface*@pdev: pcmcia device**Register a PCMCIA IDE interface. Such interfaces are PIO 0 and*shared IRQ.*/jesus

author: legacy
author_rank: Super Contributor
timestamp: April 23, 2016, 12:34:08 pm
content: Quoteneed to check an old kernel 2.6.20

author: legacy
author_rank: Super Contributor
timestamp: April 23, 2016, 11:47:02 pm
content: anyone using CF with CardBus over linux 4.* or 3.* ?going to applythissetup for my laptopkernel 3.17.7 (even if … I can't upgrade 2.6.39, I am considering a dual boot with grub)

author: Monkeh
author_rank: Super Contributor
timestamp: April 24, 2016, 02:25:49 am
content: You can play with your kernel all you like, it won't change the fact thatyou need an IDE adapter.

author: legacy
author_rank: Super Contributor
timestamp: April 24, 2016, 10:00:43 am
content: usb-CF adaptor

author: legacy
author_rank: Super Contributor
timestamp: April 24, 2016, 10:04:18 am
content: anyway, I can't understand why, if cardbus is pci-like, then plugging a microdrive on a cardbus-CF adaptor gives more performances than a compact flash10Mbyte/sec (a few models give 20Mbyte/sec) vs 1.6Mbyte/secit's 1:10..1:20, so what is wrong with compact flash? (oh, declared to be "true IDE")

author: legacy
author_rank: Super Contributor
timestamp: April 24, 2016, 10:24:27 am
content: Quote from: blueskull on April 24, 2016, 10:17:21 amaccording with hdparm there is no UDMAx flags with micro drive, and I get 10-20Mbyte/secwhile with a compact flash in "True-IDE" I get 1.6Mbyte/secphysicallyCode:05:00.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev ba)Code:05:00.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev ba)Subsystem: Lenovo Device 20c6Flags: bus master, medium devsel, latency 168, IRQ 16Memory at d7eff000 (32-bit, non-prefetchable) [size=4K]Bus: primary=05, secondary=06, subordinate=07, sec-latency=176Memory window 0: d8000000-dbffffff (prefetchable)Memory window 1: 80000000-83ffffffI/O window 0: 00004000-000040ffI/O window 1: 00004400-000044ff16-bit legacy interface ports at 0001Kernel driver in use: yenta_cardbusthus, which is the difference between a micro drive interface and a compact flash interface?(none of them use UDMA, according to the flags I see)

author: Monkeh
author_rank: Super Contributor
timestamp: April 24, 2016, 11:04:10 am
content: Quote from: blueskull on April 24, 2016, 10:17:21 amUh.. no, CardBus is effectively PCI. You need a host controller attached to do DMA, or you're stuck with PIO on a 16-bit bus (PCMCIA mode).

author: legacy
author_rank: Super Contributor
timestamp: April 24, 2016, 11:40:14 am
content: Quote from: Monkeh on April 24, 2016, 11:04:10 ammay be the problem is related to the Yenta_CardBus kernel drive, more specifically there is no specific driver for the host controllerit my case it's "Ricoh", and it seems they probably just re-branded some other generic components.I typed "lspci -v" and looked for the device numbers after "Subsystem: Device" for those device.Then googled for those device numbers to figure out who actually made the chipsets for the devices.Unfortunately I have found no good informationanyway, I can explain why the micro drive achieves better performances within the same configuration

author: Monkeh
author_rank: Super Contributor
timestamp: April 24, 2016, 11:42:25 am
content: Quote from: legacy on April 24, 2016, 11:40:14 amYou have the driver for the cardbus interface,it is not an IDE host controller.

author: legacy
author_rank: Super Contributor
timestamp: April 24, 2016, 11:49:15 am
content: Quote from: Monkeh on April 24, 2016, 11:42:25 amyou are in my ignore list

author: Monkeh
author_rank: Super Contributor
timestamp: April 24, 2016, 11:50:39 am
content: Quote from: blueskull on April 24, 2016, 11:48:50 amAnd PCMCIA is not CardBus..E: Or more correctly, PCMCIA <v5 is not CardBus.Yes, you can have a 16-bit PIO ATA interface with PCMCIA. Or you can have an IDE controller attached via CardBus and get UDMA.Quote from: legacy on April 24, 2016, 11:49:15 amYou can lead a horse to water..

author: legacy
author_rank: Super Contributor
timestamp: April 24, 2016, 11:58:51 am
content: mmm from the documentation I also see that "CFA extensions" can allow to use pio5 or pio6 (>20Mbyte/sec)while from linux sources (2.6.39) I see that the ide-cs can support only pio0 (~1Mbyte/sec)and again it's not clear why the micro drive achieves 10Mbyte/sec in the same bus, plugged to the same interface, and handled by the same kernelgoing to buy a second usb-cd adapter, but … it's a workaround(probably I'd better to say to my boss that … his solution is defective)

author: legacy
author_rank: Super Contributor
timestamp: April 24, 2016, 12:00:31 pm
content: p.s.the SSD-miniPCIe was a good tips, faster, cheaper, very good tipsunfortunately I can't open the laptop (it's not mine)

author: Monkeh
author_rank: Super Contributor
timestamp: April 24, 2016, 12:44:35 pm
content: Congratulations, you finally bothered to look for an IDE controller!Sadly, it seems performance on those ones is substandard due to lack of documentation, but it's at least faster than PIO.

author: legacy
author_rank: Super Contributor
timestamp: April 24, 2016, 12:46:18 pm
content: Quote

author: legacy
author_rank: Super Contributor
timestamp: April 24, 2016, 12:52:20 pm
content: good rumors from Amazonreviews, going to buy one, I am curious.

author: legacy
author_rank: Super Contributor
timestamp: April 24, 2016, 02:26:56 pm
content: interestingCode:+ * No chip documentation has yet been found,+ * so these configuration values were pulled from+ * a running Win98 system using "debug".+ * This gives around 3MByte/second read performance,+ * which is about 2/3 of what the chip is capable of.+ *+ * There is also a 4KByte mmio region on the card,+ * but its purpose has yet to be reverse-engineered.need for reverse-engineering

author: legacy
author_rank: Super Contributor
timestamp: April 24, 2016, 02:42:11 pm
content: 2.6.39drivers/ide/delkin_cb.cCode:* Basic support for Delkin/ASKA/Workbit Cardbus CompactFlash adapter** Modeled after the 16-bit PCMCIA driver: ide-cs.c** 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.*

author: legacy
author_rank: Super Contributor
timestamp: April 24, 2016, 11:40:58 pm
content: unbelievable: cardbus to expresscard adapters.theyactually exist

author: Rasz
author_rank: Super Contributor
timestamp: April 25, 2016, 05:59:53 am
content: Quote from: legacy on April 24, 2016, 11:40:58 pmno they dont, this is usb controller with fancy name to scam noobs

author: Kilrah
author_rank: Unknown
timestamp: April 25, 2016, 07:27:42 am
content: Yup. ThisQuoteis the key, the adapter will only work with "basic" low-performance ExpressCards that only use the USB 2.0 lane, not the high performance ones that actually use the PCI-Express lanes.

author: legacy
author_rank: Super Contributor
timestamp: April 25, 2016, 06:31:53 pm
content: someone experienced with Delkin Cardbus IDE adaptor on linux ?if so, I'd like to hear your feedback, especially about performancesthanks

author: Kilrah
author_rank: Unknown
timestamp: April 25, 2016, 06:38:40 pm
content: Not on linux, but I can tell you that unless you intend to only store a small number of large files you don't access often you'll likely be disappointed. Not because of the adapter, but because a CF card doesn't have proper caching like a real SSD would, and while peak sequential transfer might be fast small random accesses are still appallingly slow.

author: legacy
author_rank: Super Contributor
timestamp: April 25, 2016, 07:51:03 pm
content: Quote from: Kilrah on April 25, 2016, 06:38:40 pmthe compact flash card will be used by a custom application that I am developing is an embedded application (non on the laptop, I will use on a Geode embedded board, basically it's a miniPC with CardBus interface, and it runs linux/x86) which needs to use a flash filesystem without folders, everything in the root (like in CB/M), large pictures from an XRAY machineit could be described, just to exemplify, like the followingCode:dd if=pictureXX.bin of=/dev/hda1/pictureXX.bin bs=Buffer_sizebut I need 5Mbyte/sec at least, the CF is able to go up to 40/50Mbyte/sec, and potentially the CardBUS IDE controller is able to have the full PCI speed at 32bit@33Mhz, say, in the theory, an average bandwidth of no less than 100Mbyte/sec?

author: legacy
author_rank: Super Contributor
timestamp: April 25, 2016, 07:52:36 pm
content: oh, it's a mini X-ray machine, small object, like teeth, 10-16Mbyte per picture

author: legacy
author_rank: Super Contributor
timestamp: April 29, 2016, 04:44:50 pm
content: it seems we have aproblem

author: legacy
author_rank: Super Contributor
timestamp: April 29, 2016, 05:31:49 pm
content: what anunbelievableequipment

author: Rasz
author_rank: Super Contributor
timestamp: April 29, 2016, 07:44:51 pm
content: Quote from: legacy on April 29, 2016, 05:31:49 pmas mentioned before cardbus IS PCI, this is just a pci bridge in a box

author: legacy
author_rank: Super Contributor
timestamp: April 29, 2016, 07:47:23 pm
content: it might be very useful for my SGI-IP30 machine, due to its mechanical limitation about the size of PCI-cards

author: legacy
author_rank: Super Contributor
timestamp: April 30, 2016, 07:44:37 am
content: Code:scsi0 : Adaptec 152x SCSI(scsi0:4:0) 01 03 01 32 08scsi 0:0:4:0: Direct-Access CF 4GBsd 0:0:4:0:  7928928 512-byte hardware sectors (4060 MB)sd 0:0:4:0:  Write Protect is offsd 0:0:4:0:  Mode Sense: 03 00 00 08sd 0:0:4:0:  Write cache: enabled, read cache: enabled, doesn't support DPO or FUAsd 0:0:4:0:  7928928 512-byte hardware sectors (4060 MB)sd 0:0:4:0:  Write Protect is offsd 0:0:4:0:  Mode Sense: 03 00 00 08sd 0:0:4:0:  Write cache: enabled, read cache: enabled, doesn't support DPO or FUAsda: sda1sd 0:0:4:0:  Attached SCSI disksd 0:0:4:0: Attached scsi generic sg0 type 0Code:# hdparm -t /dev/sda/dev/sda:Timing buffered disk reads: 6 MB in 3.64 seconds = 1.65 MB/secMy boss installed an Adaptec 152x card in my laptop CardBus slot, attached to a SCSI-pATA converter (claimed 10Mbyte/sec, SCSI Narrow/DE), we used an IDE-to-CF adaptor to interface the compact flash, and ... still miserable performances

author: legacy
author_rank: Super Contributor
timestamp: April 30, 2016, 01:02:32 pm
content: Quote from: Rasz on April 29, 2016, 07:44:51 pmdo you happen, guys, to know where can I buy one for cheap?