1**************************************************************************
2** History
3**
4**   REV#         DATE             NAME         DESCRIPTION
5** 1.00.00.00    3/31/2004       Erich Chen     First release
6** 1.10.00.04    7/28/2004       Erich Chen     modify for ioctl
7** 1.10.00.06    8/28/2004       Erich Chen     modify for 2.6.x
8** 1.10.00.08    9/28/2004       Erich Chen     modify for x86_64
9** 1.10.00.10   10/10/2004       Erich Chen     bug fix for SMP & ioctl
10** 1.20.00.00   11/29/2004       Erich Chen     bug fix with arcmsr_bus_reset when PHY error
11** 1.20.00.02   12/09/2004       Erich Chen     bug fix with over 2T bytes RAID Volume
12** 1.20.00.04    1/09/2005       Erich Chen     fits for Debian linux kernel version 2.2.xx
13** 1.20.00.05    2/20/2005       Erich Chen     cleanly as look like a Linux driver at 2.6.x
14**                                              thanks for peoples kindness comment
15**						Kornel Wieliczek
16**						Christoph Hellwig
17**						Adrian Bunk
18**						Andrew Morton
19**						Christoph Hellwig
20**						James Bottomley
21**						Arjan van de Ven
22** 1.20.00.06    3/12/2005       Erich Chen     fix with arcmsr_pci_unmap_dma "unsigned long" cast,
23**						modify PCCB POOL allocated by "dma_alloc_coherent"
24**						(Kornel Wieliczek's comment)
25** 1.20.00.07    3/23/2005       Erich Chen     bug fix with arcmsr_scsi_host_template_init
26**						occur segmentation fault,
27**						if RAID adapter does not on PCI slot
28**						and modprobe/rmmod this driver twice.
29**						bug fix enormous stack usage (Adrian Bunk's comment)
30** 1.20.00.08    6/23/2005       Erich Chen     bug fix with abort command,
31**						in case of heavy loading when sata cable
32**						working on low quality connection
33** 1.20.00.09    9/12/2005       Erich Chen     bug fix with abort command handling, firmware version check
34**						and firmware update notify for hardware bug fix
35** 1.20.00.10    9/23/2005       Erich Chen     enhance sysfs function for change driver's max tag Q number.
36**						add DMA_64BIT_MASK for backward compatible with all 2.6.x
37**						add some useful message for abort command
38**						add ioctl code 'ARCMSR_IOCTL_FLUSH_ADAPTER_CACHE'
39**						customer can send this command for sync raid volume data
40** 1.20.00.11    9/29/2005       Erich Chen     by comment of Arjan van de Ven fix incorrect msleep redefine
41**						cast off sizeof(dma_addr_t) condition for 64bit pci_set_dma_mask
42** 1.20.00.12    9/30/2005       Erich Chen     bug fix with 64bit platform's ccbs using if over 4G system memory
43**						change 64bit pci_set_consistent_dma_mask into 32bit
44**						increcct adapter count if adapter initialize fail.
45**						miss edit at arcmsr_build_ccb....
46**						psge += sizeof(struct _SG64ENTRY *) =>
47**						psge += sizeof(struct _SG64ENTRY)
48**						64 bits sg entry would be incorrectly calculated
49**						thanks Kornel Wieliczek give me kindly notify
50**						and detail description
51** 1.20.00.13   11/15/2005       Erich Chen     scheduling pending ccb with FIFO
52**						change the architecture of arcmsr command queue list
53**						for linux standard list
54**						enable usage of pci message signal interrupt
55**						follow Randy.Danlup kindness suggestion cleanup this code
56**************************************************************************
57