AU1xxx_IDE.README 3.9 KB
Newer Older
P
Pete Popov 已提交
1 2 3 4
README for MIPS AU1XXX IDE driver - Released 2005-07-15

ABOUT
-----
5
This file describes the 'drivers/ide/au1xxx-ide.c', related files and the
P
Pete Popov 已提交
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
services they provide.

If you are short in patience and just want to know how to add your hard disc to
the white or black list, go to the 'ADD NEW HARD DISC TO WHITE OR BLACK LIST'
section.


LICENSE
-------

Copyright (c) 2003-2005 AMD, Personal Connectivity Solutions

This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation; either version 2 of the License, or (at your option) any later
version.

THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR
BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.

You should have received a copy of the GNU General Public License along with
this program; if not, write to the Free Software Foundation, Inc.,
675 Mass Ave, Cambridge, MA 02139, USA.

Note: for more information, please refer "AMD Alchemy Au1200/Au1550 IDE
      Interface and Linux Device Driver" Application Note.


L
Lucas De Marchi 已提交
42
FILES, CONFIGS AND COMPATIBILITY
P
Pete Popov 已提交
43 44 45 46
--------------------------------

Two files are introduced:

47
  a) 'arch/mips/include/asm/mach-au1x00/au1xxx_ide.h'
L
Lucas De Marchi 已提交
48
     contains : struct _auide_hwif
P
Pete Popov 已提交
49 50 51 52 53 54
                 timing parameters for PIO mode 0/1/2/3/4
                 timing parameters for MWDMA 0/1/2

  b) 'drivers/ide/mips/au1xxx-ide.c'
     contains the functionality of the AU1XXX IDE driver

55
Following extra configs variables are introduced:
P
Pete Popov 已提交
56 57 58 59

  CONFIG_BLK_DEV_IDE_AU1XXX_PIO_DBDMA    - enable the PIO+DBDMA mode
  CONFIG_BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA  - enable the MWDMA mode
  CONFIG_BLK_DEV_IDE_AU1XXX_BURSTABLE_ON - set Burstable FIFO in DBDMA
60
                                           controller
P
Pete Popov 已提交
61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90


SUPPORTED IDE MODES
-------------------

The AU1XXX IDE driver supported all PIO modes - PIO mode 0/1/2/3/4 - and all
MWDMA modes - MWDMA 0/1/2 -. There is no support for SWDMA and UDMA mode.

To change the PIO mode use the program hdparm with option -p, e.g.
'hdparm -p0 [device]' for PIO mode 0. To enable the MWDMA mode use the option
-X, e.g. 'hdparm -X32 [device]' for MWDMA mode 0.


PERFORMANCE CONFIGURATIONS
--------------------------

If the used system doesn't need USB support enable the following kernel configs:

CONFIG_IDE=y
CONFIG_BLK_DEV_IDE=y
CONFIG_IDE_GENERIC=y
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_BLK_DEV_GENERIC=y
CONFIG_BLK_DEV_IDEDMA_PCI=y
CONFIG_IDEDMA_PCI_AUTO=y
CONFIG_BLK_DEV_IDE_AU1XXX=y
CONFIG_BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA=y
CONFIG_BLK_DEV_IDEDMA=y
CONFIG_IDEDMA_AUTO=y

91 92 93
Also define 'IDE_AU1XXX_BURSTMODE' in 'drivers/ide/mips/au1xxx-ide.c' to enable
the burst support on DBDMA controller.

P
Pete Popov 已提交
94 95 96 97 98 99 100 101 102 103 104 105 106 107
If the used system need the USB support enable the following kernel configs for
high IDE to USB throughput.

CONFIG_BLK_DEV_IDEDISK=y
CONFIG_IDE_GENERIC=y
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_BLK_DEV_GENERIC=y
CONFIG_BLK_DEV_IDEDMA_PCI=y
CONFIG_IDEDMA_PCI_AUTO=y
CONFIG_BLK_DEV_IDE_AU1XXX=y
CONFIG_BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA=y
CONFIG_BLK_DEV_IDEDMA=y
CONFIG_IDEDMA_AUTO=y

108 109
Also undefine 'IDE_AU1XXX_BURSTMODE' in 'drivers/ide/mips/au1xxx-ide.c' to
disable the burst support on DBDMA controller.
P
Pete Popov 已提交
110 111 112 113 114 115 116 117 118 119 120 121 122


ACKNOWLEDGMENTS
---------------

These drivers wouldn't have been done without the base of kernel 2.4.x AU1XXX
IDE driver from AMD.

Additional input also from:
Matthias Lenk <matthias.lenk@amd.com>

Happy hacking!
Enrico Walther <enrico.walther@amd.com>