Add support for the Promise PDC20771, present on the Promise FastTrak TX2300.
This support is not based on a datasheet, because a datasheet is not readily available for this chip. However, Promise have partially open sourced their driver for Linux, and all suggestions are that the PDC20771 is pretty similar to other recent SATA chips. The TX2300 has two ports, but there is unoccupied space on the board for a third PATA port. It isn't entirely obvious how many channels the PDC20771 can support. The pdc205xx_drv_probe probe is necessary to avoid probing two wd* devices for every physical device.
This commit is contained in:
parent
a007d06dc9
commit
07955f97ca
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: pdcsata.c,v 1.9 2006/06/26 17:54:06 xtraeme Exp $ */
|
||||
/* $NetBSD: pdcsata.c,v 1.10 2006/08/13 09:39:25 dsainty Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2004, Manuel Bouyer.
|
||||
@ -30,7 +30,7 @@
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: pdcsata.c,v 1.9 2006/06/26 17:54:06 xtraeme Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: pdcsata.c,v 1.10 2006/08/13 09:39:25 dsainty Exp $");
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/malloc.h>
|
||||
@ -143,6 +143,11 @@ static const struct pciide_product_desc pciide_pdcsata_products[] = {
|
||||
"Promise PDC20579 SATA150 controller",
|
||||
pdcsata_chip_map,
|
||||
},
|
||||
{ PCI_PRODUCT_PROMISE_PDC20771,
|
||||
0,
|
||||
"Promise PDC20771 SATA300 controller",
|
||||
pdcsata_chip_map,
|
||||
},
|
||||
{ PCI_PRODUCT_PROMISE_PDC20775,
|
||||
0,
|
||||
"Promise PDC20775 SATA300 controller",
|
||||
@ -282,6 +287,7 @@ pdcsata_chip_map(struct pciide_softc *sc, struct pci_attach_args *pa)
|
||||
break;
|
||||
case PCI_PRODUCT_PROMISE_PDC20575:
|
||||
case PCI_PRODUCT_PROMISE_PDC20579:
|
||||
case PCI_PRODUCT_PROMISE_PDC20771:
|
||||
case PCI_PRODUCT_PROMISE_PDC20775:
|
||||
bus_space_write_4(sc->sc_ba5_st, sc->sc_ba5_sh, 0x60, 0x00ff00ff);
|
||||
sc->sc_wdcdev.sc_atac.atac_nchannels = PDC20575_NCHANNELS;
|
||||
|
Loading…
Reference in New Issue
Block a user