[EMAIL PROTECTED]: [EMAIL PROTECTED]:

2007-10-30 Thread jameshsu
Hello James Bottomley,

This driver has nothing changed since last time submit.
However recently we check the 2.6.23.1 kernel and found code is not
up-to-date (still remain @2005).
Resend this message to submit the same driver again. (.c diff file under
atp870u.c.diff.bz2 format)
Please help Acard to build in this modified SCSI driver with latest Linux
kernel.
If any code still volient the documentation, please let us know the reasons
and file path.
Thanks!

James Hsu
- Original Message -
From: jameshsu
To: [EMAIL PROTECTED]
Cc: 'David Miller' ; James Bottomley
Sent: Thursday, March 29, 2007 3:36 PM
Subject: Re: FW: [EMAIL PROTECTED]:
[EMAIL PROTECTED]: - - Completed


To whom can take care of this driver issues:

We, Acard, modified this driver again based on James Bottomley's input
3/16/2007.
In the mean time, I attach the source code with another email for James
Bottomley.

Those changes are:
1.Modify coding style.
 2.Add old copy right.
 3.CompString, ClearString, CopyString routine replaced with memcmp, memset
and memcpy.
 4.Remove adapters array form 2.6 kernel.
 5.Removed the scsi_data_direction() hack macro.Just pass the direction
directly into the functions
 6.Use defined values instead of bare numbers (REQUEST_SENSE instead of
0x03)
 7.Replace page_address() to get arbitrary userspace memory with
kmap_atomic()/kunmap_atomic().
 8.Use SAM_STAT_CHECK_CONDITION/GOOD instead of separate #define
 9.Removed home defined READ_6, WRITE_6 etc.
10.Return SCSI_MLQUEUE_HOST_BUSY on out of resources in queuecommand.

Please let me know if this submission is proper.
Again, relly appreciate for your help!

James Hsu,
Manager,QA Testing Dept.
ACARD TECHNOLOGY CORP.
Taipei Hsien,Taiwan
6F No78,Sec 1,Kwang Fu Road,Sang Chung,
(02)8512-2290 x 2311(O),(02)8512-2548(FAX)
0968-989-555 (mobile)


atp870u.c.diff.bz2
Description: Binary data


atp870u.h.diff
Description: Binary data


Re: Fw: ACARD SCSI driver update for Linux kernel v2.6

2005-01-18 Thread jameshsu
Hi all,

We are in the process to make some change to meet your expectation ASAP.
(e.g. (1) 2-d array = 1-d array (2) meet common coding style (3) 32-bit DMA
mask instead (4) PCI new device entry applied (5) use the PCI_DEVICE_ID_
name instead)
However, this is the revision we are sure it's working.
Therefore, if this is possible, can you patch this file for v2.6.10 this
time.
Within 1-2 week from now, we will submit another patch file to fix above
syntax issues if working smoothly.
In the mean time, we also in the process to submit the new device entry
(ATP880[AEC67160] LVD160 1 channel  /ATP885[AEC67162] LVD160 2 channel)
under Artop Electronics Corp.
Thanks for your help!

Best regards,

James
- Original Message -
From: Matthew Wilcox [EMAIL PROTECTED]
To: jameshsu [EMAIL PROTECTED]
Cc: Alan Cox [EMAIL PROTECTED]; [EMAIL PROTECTED];
Christoph Hellwig [EMAIL PROTECTED]; Jason Wu [EMAIL PROTECTED];
EdwardLian [EMAIL PROTECTED]; linux-scsi@vger.kernel.org
Sent: Saturday, January 15, 2005 1:44 AM
Subject: Re: Fw: ACARD SCSI driver update for Linux kernel v2.6


 On Fri, Jan 14, 2005 at 06:03:02PM +0800, jameshsu wrote:
  We, Acard, total understand what you suggest. (including advise from
  Christoph, James B. and Alan.)
  Therefore, we modify the internal code to create this patch file from
kernel
  v2.6.10.
  However, as you see this is the smallest patch files which could be
  generated. (Sorry, unable to meet your expetation)
  The reason is : this driver could supports ATP870 as well as mutiples of
  Acard's chipsets. (this includes ATP880(AEC67160)  ATP885(AEC67162)).
This
  is why the patch files is huge than what you expected.
  We did not make any change for ATP870(AEC6712) on this rev.. Besides, we
  reverse following codes according to all of your suggestions. Please
review
  and let me know if this is feasible.  Welcome to any of question you may
  have.
  Thanks for your help!

 The change to pci.ids needs to be handled through pciids.sourceforge.net

 

 I really don't like the:
 +   atp_dev.ioport[0] = base_io + 0x80;
 +   atp_dev.ioport[1] = base_io + 0xc0;

 Just record base_io in your atp_dev.  I don't like the way this patch
 turns everything into a 2-d array ... surely there has to be a better
 way to do it than this?

 

 +   if (dev-dev_id == ATP885_DEVID) {
 +   tmpcip += 2;
 +   outb(0x06, tmpcip);
 +   tmpcip -= 2;

 would be much better written as:

 if (dev-dev_id == ATP885_DEVID)
 outb(0x06, tmpcip+2);

 (hmm, this seems to be common coding style throughout the driver ...)

 

 -   if (pci_set_dma_mask(dev, 0xUL)) {
 -   printk(KERN_ERR atp870u: 32bit DMA mask required but not
availa
 ble.\n);
 -   return -EIO;
 -   }
 +if (!pci_set_dma_mask(pdev, 0xFFUL)) {
 +printk(KERN_INFO atp870u: use 32bit DMA mask.\n);
 +} else {
 +printk(KERN_ERR atp870u: DMA mask required but not
available.\
 n);
 +return -EIO;
 +}

 You've actually set a 24-bit DMA mask there.  Should use the symbolic
 constant DMA_32BIT_MASK anyway.

 

 +   { PCI_DEVICE(PCI_VENDOR_ID_ARTOP,
  },

 Please use the PCI_DEVICE_ID_ name instead

 



 --
 Next the statesmen will invent cheap lies, putting the blame upon
 the nation that is attacked, and every man will be glad of those
 conscience-soothing falsities, and will diligently study them, and refuse
 to examine any refutations of them; and thus he will by and by convince
 himself that the war is just, and will thank God for the better sleep
 he enjoys after this process of grotesque self-deception. -- Mark Twain


-
To unsubscribe from this list: send the line unsubscribe linux-scsi in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html