Commit 7c22a3d8 authored by Linus Torvalds's avatar Linus Torvalds

Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev

* 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:
  [libata] LBA28/LBA48 off-by-one bug in ata.h
  sata_inic162x: enable LED blinking
  ata: duplicate variable sparse warning
parents 0cb60efd 97b697a1
...@@ -1499,7 +1499,7 @@ static int __devinit piix_init_one(struct pci_dev *pdev, ...@@ -1499,7 +1499,7 @@ static int __devinit piix_init_one(struct pci_dev *pdev,
* off. * off.
*/ */
if (pdev->vendor == PCI_VENDOR_ID_INTEL && pdev->device == 0x2652) { if (pdev->vendor == PCI_VENDOR_ID_INTEL && pdev->device == 0x2652) {
int rc = piix_disable_ahci(pdev); rc = piix_disable_ahci(pdev);
if (rc) if (rc)
return rc; return rc;
} }
......
...@@ -96,6 +96,7 @@ enum { ...@@ -96,6 +96,7 @@ enum {
PORT_SCR = 0x20, PORT_SCR = 0x20,
/* HOST_CTL bits */ /* HOST_CTL bits */
HCTL_LEDEN = (1 << 3), /* enable LED operation */
HCTL_IRQOFF = (1 << 8), /* global IRQ off */ HCTL_IRQOFF = (1 << 8), /* global IRQ off */
HCTL_FTHD0 = (1 << 10), /* fifo threshold 0 */ HCTL_FTHD0 = (1 << 10), /* fifo threshold 0 */
HCTL_FTHD1 = (1 << 11), /* fifo threshold 1*/ HCTL_FTHD1 = (1 << 11), /* fifo threshold 1*/
...@@ -540,7 +541,7 @@ static unsigned int inic_qc_issue(struct ata_queued_cmd *qc) ...@@ -540,7 +541,7 @@ static unsigned int inic_qc_issue(struct ata_queued_cmd *qc)
void __iomem *port_base = inic_port_base(ap); void __iomem *port_base = inic_port_base(ap);
/* fire up the ADMA engine */ /* fire up the ADMA engine */
writew(HCTL_FTHD0, port_base + HOST_CTL); writew(HCTL_FTHD0 | HCTL_LEDEN, port_base + HOST_CTL);
writew(IDMA_CTL_GO, port_base + PORT_IDMA_CTL); writew(IDMA_CTL_GO, port_base + PORT_IDMA_CTL);
writeb(0, port_base + PORT_CPB_PTQFIFO); writeb(0, port_base + PORT_CPB_PTQFIFO);
......
...@@ -745,7 +745,7 @@ static inline int ata_ok(u8 status) ...@@ -745,7 +745,7 @@ static inline int ata_ok(u8 status)
static inline int lba_28_ok(u64 block, u32 n_block) static inline int lba_28_ok(u64 block, u32 n_block)
{ {
/* check the ending block number */ /* check the ending block number */
return ((block + n_block - 1) < ((u64)1 << 28)) && (n_block <= 256); return ((block + n_block) < ((u64)1 << 28)) && (n_block <= 256);
} }
static inline int lba_48_ok(u64 block, u32 n_block) static inline int lba_48_ok(u64 block, u32 n_block)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment