flat assembler
Message board for the users of flat assembler.

Index > Heap > LBA48

Author
Thread Post new topic Reply to topic
LocoDelAssembly
Your code has a bug


Joined: 06 May 2005
Posts: 4633
Location: Argentina
LocoDelAssembly
A friend of mine is willing to buy a 160 GB PATA HDD but the problem is that such size exceeds the 128 GB limit.

So, the question is, what are the requirements to support LBA48? Does the chipset impose the limit or it is only a BIOS and OS thing?

I have surfed the net for a while but can't find nothing convincing... I'm worried about the DMA mode expecially because in the extension is included the ability to R/W more sectors in a single command and perhaps the chipset must be aware of such thing. The PIO mode however seems to be another story (from what I could barely understood in the ATA-6 spec).

His other option is a disk of half the size but with a price that is not the half but only one fifth less...

Any info about this will be very much appreciated.

[edit]The motherboard in question is this: ASUS A7V8X-X. The south bridge is a VIA VT8235.
Post 26 Feb 2009, 00:31
View user's profile Send private message Reply with quote
sinsi



Joined: 10 Aug 2007
Posts: 695
Location: Adelaide
sinsi
Have you tried here - http://www.48bitlba.com/index.htm
Post 26 Feb 2009, 00:43
View user's profile Send private message Reply with quote
LocoDelAssembly
Your code has a bug


Joined: 06 May 2005
Posts: 4633
Location: Argentina
LocoDelAssembly
Yes but they don't comment much about chipsets. There is only one part that they give an specific example of a PCI IDE card that if it is not flashed with the appropriate firmware it wont work with LBA48.

However looking a second time, I see they give a link to LBA48 drivers for VIA, I'll look at them when my FUCKING INTERNET CONNECTION THAT IS WASTING MY TIME WITH THE ULTRA UNRELIABLE PACKET DELIVERY IN THE INTERNATIONAL CARRIER IS BACK TO NORMAL.

I hope this reply can be posted...
Post 26 Feb 2009, 01:12
View user's profile Send private message Reply with quote
bitRAKE



Joined: 21 Jul 2003
Posts: 2915
Location: [RSP+8*5]
bitRAKE
All ATA133 boards should support 48bit LBA, but it might not appear correctly in the BIOS.
Post 26 Feb 2009, 03:24
View user's profile Send private message Visit poster's website Reply with quote
LocoDelAssembly
Your code has a bug


Joined: 06 May 2005
Posts: 4633
Location: Argentina
LocoDelAssembly
bitRAKE, I think you are right. I have checked Linux sources and seems that LBA48 is supported in PIO mode only at worst. Only pata_ali.c is the only module that sets ATA_FLAG_PIO_LBA48.

Code:
        /* struct ata_port flags */
 ATA_FLAG_SLAVE_POSS     = (1 << 0), /* host supports slave dev */
                                         /* (doesn't imply presence) */
 ATA_FLAG_SATA           = (1 << 1),
   ATA_FLAG_NO_LEGACY      = (1 << 2), /* no legacy mode check */
        ATA_FLAG_MMIO           = (1 << 3), /* use MMIO, not PIO */
   ATA_FLAG_SRST           = (1 << 4), /* (obsolete) use ATA SRST, not E.D.D. */
 ATA_FLAG_SATA_RESET     = (1 << 5), /* (obsolete) use COMRESET */
     ATA_FLAG_NO_ATAPI       = (1 << 6), /* No ATAPI support */
    ATA_FLAG_PIO_DMA        = (1 << 7), /* PIO cmds via DMA */
    ATA_FLAG_PIO_LBA48      = (1 << 8), /* Host DMA engine is LBA28 only */
       ATA_FLAG_PIO_POLLING    = (1 << 9), /* use polling PIO if LLD
                                      * doesn't handle PIO interrupts */
    ATA_FLAG_NCQ            = (1 << 10), /* host supports NCQ */
  ATA_FLAG_DEBUGMSG       = (1 << 13),
  ATA_FLAG_IGN_SIMPLEX    = (1 << 15), /* ignore SIMPLEX */
     ATA_FLAG_NO_IORDY       = (1 << 16), /* controller lacks iordy */
     ATA_FLAG_ACPI_SATA      = (1 << 17), /* need native SATA ACPI layout */
       ATA_FLAG_AN             = (1 << 18), /* controller supports AN */
     ATA_FLAG_PMP            = (1 << 19), /* controller supports PMP */
    ATA_FLAG_IPM            = (1 << 20), /* driver can handle IPM */
      ATA_FLAG_EM             = (1 << 21), /* driver supports enclosure
                                           * management */
       ATA_FLAG_SW_ACTIVITY    = (1 << 22), /* driver supports sw activity
                                         * led */
    
(libata.h)

Also, seems that the chipset is ATA/ATAPI-7 capable (if UltraDMA 133 can't be supported by older ATA/ATAPI versions).

Thank you very much to both!
Post 26 Feb 2009, 04:37
View user's profile Send private message Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You can attach files in this forum
You can download files in this forum


Copyright © 1999-2020, Tomasz Grysztar. Also on YouTube, Twitter.

Website powered by rwasa.