FreeBSD Bugzilla – Attachment 54359 Details for
Bug 82261
DMA-support on Sparc64 broken
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
ata-chipset.c.diff
ata-chipset.c.diff (text/plain), 1.77 KB, created by
Sebastian Koehler
on 2005-07-08 21:19:10 UTC
(
hide
)
Description:
ata-chipset.c.diff
Filename:
MIME Type:
Creator:
Sebastian Koehler
Created:
2005-07-08 21:19:10 UTC
Size:
1.77 KB
patch
obsolete
>Index: ata-chipset.c >=================================================================== >RCS file: /mnt/futile/usr/data/bsd/cvs/fbsd/src/sys/dev/ata/ata-chipset.c,v >retrieving revision 1.126 >diff -u -r1.126 ata-chipset.c >--- ata-chipset.c 10 Jun 2005 07:43:10 -0000 1.126 >+++ ata-chipset.c 25 Jun 2005 11:10:56 -0000 >@@ -74,6 +74,7 @@ > static void ata_acard_86X_setmode(device_t dev, int mode); > static int ata_ali_chipinit(device_t dev); > static int ata_ali_allocate(device_t dev); >+static void ata_ali_reset(device_t dev); > static void ata_ali_setmode(device_t dev, int mode); > static int ata_amd_chipinit(device_t dev); > static int ata_cyrix_chipinit(device_t dev); >@@ -853,6 +854,7 @@ > device_set_desc_copy(dev, buffer); > ctlr->chip = idx; > ctlr->chipinit = ata_ali_chipinit; >+ ctlr->reset = ata_ali_reset; > return 0; > } > >@@ -937,6 +939,35 @@ > } > > static void >+ata_ali_reset(device_t dev) >+{ >+ device_t parent = device_get_parent(dev); >+ struct ata_pci_controller *ctlr = device_get_softc(parent); >+ struct ata_channel *ch = device_get_softc(dev); >+ device_t *children; >+ int nchildren, i; >+ u_int8_t ideic; >+ >+ ata_generic_reset(dev); >+ if (ctlr->chip->cfg2 & ALINEW && ctlr->chip->chiprev < 0xc4) { >+ if (!device_get_children(device_get_parent(parent), &children, >+ &nchildren)) { >+ for (i = 0; i < nchildren; i++) { >+ if (pci_get_devid(children[i]) == 0x153310b9) { >+ ideic = pci_read_config(children[i], 0x58, 1); >+ pci_write_config(children[i], 0x58, >+ ideic & ~(0x04 << ch->unit), 1); >+ ata_udelay(1000); >+ pci_write_config(children[i], 0x58, ideic, 1); >+ break; >+ } >+ } >+ free(children, M_TEMP); >+ } >+ } >+} >+ >+static void > ata_ali_setmode(device_t dev, int mode) > { > device_t gparent = GRANDPARENT(dev);
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 82261
: 54359 |
54360