#
296373 |
|
04-Mar-2016 |
marius |
- Copy stable/10@296371 to releng/10.3 in preparation for 10.3-RC1 builds. - Update newvers.sh to reflect RC1. - Update __FreeBSD_version to reflect 10.3. - Update default pkg(8) configuration to use the quarterly branch.
Approved by: re (implicit) |
#
287016 |
|
22-Aug-2015 |
mav |
MFC r280451: Remove from legacy ata(4) driver support for hardware, supported by newer and more functional drivers ahci(4), siis(4) and mvs(4).
This removes about 3400 lines of code, unused since FreeBSD 9.0 release.
|
#
275439 |
|
03-Dec-2014 |
mav |
MFC r275101: Add bunch of PCI IDs of Intel Wildcat Point (9 Series) chipsets.
|
#
273725 |
|
27-Oct-2014 |
mav |
MFC r273328: Add another PCI ID for JMB368 PATA controller.
|
#
260348 |
|
05-Jan-2014 |
mav |
MFC r258162: Add some more IDs for Intel ATA, AHCI and USB controllers.
|
#
256281 |
|
10-Oct-2013 |
gjb |
Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation
|
#
253475 |
|
19-Jul-2013 |
jfv |
Add new Coleto Creek device support: SATA, SMBus, and Watchdog devices.
MFC after: 1 week
|
#
249083 |
|
04-Apr-2013 |
mav |
Remove all legacy ATA code parts, not used since options ATA_CAM enabled in most kernels before FreeBSD 9.0. Remove such modules and respective kernel options: atadisk, ataraid, atapicd, atapifd, atapist, atapicam. Remove the atacontrol utility and some man pages. Remove useless now options ATA_CAM.
No objections: current@, stable@ MFC after: never
|
#
244983 |
|
02-Jan-2013 |
jfv |
Add Intel Lynx Point PCH SATA Controller Device IDs
|
#
244146 |
|
12-Dec-2012 |
mav |
Add IDs for SATA controllers on AMD Hudson-2 series chipsets. I am not exactly sure about the naming due to lack of specs on AMD site, but it is better to have some identification then none at all.
MFC after: 1 month
|
#
239907 |
|
30-Aug-2012 |
mav |
Add IDs for JMicron JMB360/JMB362 AHCI SATA controllers.
MFC after: 1 week
|
#
233282 |
|
21-Mar-2012 |
marius |
- First pass at const'ifying ata(4) as appropriate. - Use DEVMETHOD_END. - Use NULL instead of 0 for pointers
MFC after: 1 week
|
#
233274 |
|
21-Mar-2012 |
marius |
Remove remnants of ATA_LOCKING uses in the ATA_CAM case and wrap it along with functions, SYSCTLs and tunables that are not used with ATA_CAM in #ifndef ATA_CAM, similar to the existing #ifdef'ed ATA_CAM code for the other way around. This makes it easier to understand which parts of ata(4) actually are used in the new world order and to later on remove the !ATA_CAM bits. It also makes it obvious that there is something fishy with the C-bus front-end as well as in the ATP850 support, as these used ATA_LOCKING which is defunct in the ATA_CAM case. When fixing the former, ATA_LOCKING probably needs to be brought back in some form or other.
Reviewed by: mav MFC after: 1 week
|
#
232380 |
|
02-Mar-2012 |
mav |
Fix names of some Marvell SATA chips. It looks like chips with proprietary interface supported by mvs(4) are 88SX, while AHCI-like chips are 88SE.
PR: kern/165271 Submitted by: Jia-Shiun Li <jiashiun@gmail.com> MFC after: 1 week
|
#
230132 |
|
15-Jan-2012 |
uqs |
Convert files to UTF-8
|
#
229671 |
|
06-Jan-2012 |
jimharris |
Add 0x2826 device ID for C600 (Patsburg) SATA controller in RAID mode.
Reviewed by: mav Approved by: scottl
|
#
228497 |
|
14-Dec-2011 |
mav |
Add PCI IDs for the Intel ICH9M SATA controllers.
MFC after: 2 weeks
|
#
226680 |
|
24-Oct-2011 |
mav |
Some dmesg cosmetics: - for the legacy PCI ATA channels move channel number out of the device description, same as it is for ahci(4), siis(4) and mvs(4); - add device description for the ISA ATA channels.
|
#
224270 |
|
22-Jul-2011 |
mav |
- Use mutex to serialize index/data register pair usage, when accessing SATA registers. Unserialized access under heavy load caused wrong speed reporting and potentially could cause device loss. - To free memory and other resources (including above), allocated during chipinit() method call on attach, add new chipdeinit() method, called during driver detach.
Submitted by: Andrew Boyer <aboyer@averesystems.com> (initial version) Approved by: re (kib) MFC after: 1 week
|
#
221789 |
|
11-May-2011 |
jfv |
Chipset support for the new Intel Panther Point PCH, thanks to Seth Heasley for preparing the changes.
|
#
220920 |
|
21-Apr-2011 |
mav |
- Fix mapping of the last two SATA ports on 6-port Intel controllers. This improves hard-reset and hot-plug on these ports. - Device with ID 0x29218086 is a 2-port variant of ICH9 in legacy mode. Skip probing for nonexistent slave devices there.
|
#
218149 |
|
01-Feb-2011 |
jfv |
Support for the new Patsburg PCH chipset: - SMBus Controller - SATA Controller - HD Audio Controller - Watchdog Controller
Thanks to Seth Heasley (seth.heasley@intel.com) for providing us code.
MFC after 3 days
|
#
218140 |
|
31-Jan-2011 |
jfv |
Support for the new DH89xxCC PCH chipset including: - SATA controller - Watchdog timer - SMBus controller
|
#
215431 |
|
17-Nov-2010 |
mav |
Add IDs for VIA VX900 chipset SATA controller. (Missed part of r215428)
|
#
211920 |
|
28-Aug-2010 |
mav |
Add Intel Cougar Point PCH SATA Controller DeviceIDs. Correct some existing entries for Intel Ibex Peak (5 Series/3400 Series) PCH SATA controllers.
Submitted by: jfv@ MFC after: 1 week
|
#
208410 |
|
22-May-2010 |
mav |
Report ATA/SATA channel number to NewBus at location string.
|
#
204509 |
|
01-Mar-2010 |
mav |
- Add ALI M5228 PATA ID. - Add missed DMA initialization for ALI SATA chips.
|
#
203030 |
|
26-Jan-2010 |
mav |
Add support for SATA part of Marvell 88SE912x controllers to ahci(4). Limit early revisions from 6Gb/s to 3Gb/s by default, or they negotiate only 1.5Gbps, when 3Gb/s devices connected.
Add dummy driver for PATA part of these controllers, preventing generic driver attach them. It causes system freeze when SATA controller used after PATA was touched.
|
#
200857 |
|
22-Dec-2009 |
mav |
Add support for Intel SCH PATA controller.
PR: kern/140251
|
#
200754 |
|
20-Dec-2009 |
mav |
Add VIA CX700/VX800 chipsets SATA/PATA support.
PR: kern/121521 Tested by: Alex Deiter
|
#
200171 |
|
06-Dec-2009 |
mav |
MFp4: Introduce ATA_CAM kernel option, turning ata(4) controller drivers into cam(4) interface modules. When enabled, this options deprecates all ata(4) peripheral drivers (ad, acd, ...) and interfaces and allows cam(4) drivers (ada, cd, ...) and interfaces to be natively used instead.
As side effect of this, ata(4) mode setting code was completely rewritten to make controller API more strict and permit above change. While doing this, SATA revision was separated from PATA mode. It allows DMA-incapable SATA devices to operate and makes hw.ata.atapi_dma tunable work again.
Also allow ata(4) controller drivers (except some specific or broken ones) to handle larger data transfers. Previous constraint of 64K was artificial and is not really required by PCI ATA BM specification or hardware.
Submitted by: nwitehorn (powerpc part)
|
#
199322 |
|
16-Nov-2009 |
mav |
Change the way in which AHCI+PATA combined controllers, such as JMicron and Marvell handled. Instead of trying to attach two different drivers to single device, wrapping each call, make one of them (atajmicron, atamarvell) attach do device solely, but create child device for AHCI driver, passing it all required resources. It is quite easy, as none of resources are shared, except IRQ.
As result, it: - makes drivers operation more independent and straitforward, - allows to use new ahci(4) driver with such devices, adding support for new features, such as PMP and NCQ, same time keeping legacy PATA support, - will allow to just drop old ataahci driver, when it's time come.
|
#
199259 |
|
13-Nov-2009 |
mav |
Add support for SATA ports on SATA+PATA Marvell controllers. These controllers provide combination of AHCI for SATA and legacy PCI ATA for PATA. Use same solution as used for JMicron controllers. Add IDs of Marvell 88SX6102, 88SX6111. 88SX6141 alike controllers
|
#
199074 |
|
09-Nov-2009 |
mav |
Add more ICH10 chip IDs.
Submitted by: Dmitry S. Luhtionov <mitya@cabletv.dp.ua>
|
#
198818 |
|
02-Nov-2009 |
mav |
Add IDs for nVidia MCP65/77/79/89 SATA conntrollers.
|
#
198700 |
|
30-Oct-2009 |
mav |
Add support for different request block format used by Gen-IIe Marvell SATA. This adds support for Marvell 6042/7042 chips and Adaptec 1430SA controller.
|
#
198481 |
|
26-Oct-2009 |
mav |
Add two more VIA SATA chip IDs.
PR: kern/135057
|
#
194844 |
|
24-Jun-2009 |
raj |
Move non-PCI prototypes from ata-pci.h -> ata-all.h.
This removes unnecessary PCI #includes dependency for systems with ATA controllers living at non-PCI buses.
Submitted by: Piotr Ziecik Obtained from: Semihalf
|
#
193716 |
|
08-Jun-2009 |
ariff |
Add another PCI id for Nvidia nForce MCP67, found in several Acer laptops.
|
#
192105 |
|
14-May-2009 |
jhb |
- Add a void pointer to the ata-pci controller softc to allow chipset-specific code to attach chipset-specific data. - Use chipset-specific data in the acard and promise chipsets rather than changing the ivars of ATA PCI devices. ivars are reserved for use by the parent bus driver and are _not_ available for use by devices directly. This fixes a panic during sysctl -a with certain Promise controllers with ACPI enabled.
Reviewed by: mav Tested by: Magnus Kling (kingfon @ gmail) (on 7) MFC after: 3 days
|
#
191897 |
|
07-May-2009 |
mav |
Add ID of one more SII3132 revision found on adaptec aar-1225sa rev a2.
PR: kern/127289
|
#
191568 |
|
27-Apr-2009 |
jkim |
- Always force AHCI mode on a ATI/AMD SB600/700/800 SATA controller. These controllers may be configured as legacy IDE mode by modifying subclass and progif without actually changing PCI device IDs. Instead of complicating code, we always force AHCI mode while probing. Also we restore AHCI mode while resuming per ATI/AMD register programming/requirement guides. - Fix SB700/800 "combined" mode. Unlike SB600, this PATA controller can combine two SATA ports and emulate one PATA channel as primary or secondary depending on BIOS configuration. When the combined mode is disabled, this channel disappears and it works just like SB600 PATA controller, however. - Add more PCI device IDs for SB700/800 and adjust device descriptions. SB800 shares the same PCI device IDs and added two more SATA IDs.
|
#
190581 |
|
30-Mar-2009 |
mav |
Integrate user/mav/ata branch:
Add ch_suspend/ch_resume methods for PCI controllers and implement them for AHCI. Refactor AHCI channel initialization according to it.
Fix Port Multipliers operation. It is far from perfect yet, but works now. Tested with JMicron JMB363 AHCI + SiI 3726 PMP pair. Previous version was also tested with SiI 4726 PMP.
Hardware sponsored by: Vitsch Electronics / VEHosting.nl
|
#
188903 |
|
21-Feb-2009 |
mav |
Improve ata_reinit(): - protect againtst recursions, - add new devices detection using ata_identify().
Improve ata_identify(): - do not add duplicate device if device already exist.
Rework SATA hot-plug events handling. Instead of unsafe duplicate implementation use common ata_reinit() to handle all state changes.
All together this gives quite stable and robust cold- and hot-plug operation, invariant to false, lost and duplicate events.
|
#
188846 |
|
20-Feb-2009 |
mav |
Handle nForce MCP67 and MCP73 SATA controllers as AHCI. They report itself as ATA RAID, but generic ATAPCI driver unable to detect drives there. AHCI driver reported to handle them fine. Linux does the same.
Submitted by: Andrey V. Elsukov on stable@
|
#
188769 |
|
19-Feb-2009 |
mav |
Quite mechanical ch_detach implementations for all atapci subdrivers. Some dmainit call fixes for previous commit.
|
#
188765 |
|
18-Feb-2009 |
mav |
As soon as they called in only same one place (ata_pcichannel_attach()), join allocate() and dmainit() atapci subdriver's channel initialization methods into single ch_attach() method.
As opposite to ch_attach() add new ch_detach() method to deallocate/disable channel.
|
#
188694 |
|
16-Feb-2009 |
mav |
Give atapci knowledge about set of implemented AHCI ports. It is possible to not allocate them after the recent ata channels enumeration changes. It allows to save some resources, not bother user with unexisting hardware and not check unimplemented ports status on every interrupt.
|
#
188655 |
|
15-Feb-2009 |
mav |
Add initial single-vector MSI support into atapci driver. Works fine with AHCI and theoretically other MSI capable devices.
At this moment support disabled by default. To enable it, set "hint.atapci.X.msi=1" device hint.
|
#
186182 |
|
16-Dec-2008 |
mav |
Call ata_legacy() only once on attach and save it's result. Scanning PCI configuration registers (which are not going to change) on every interrupt looks expensive, especially when interrupt is shared. Profiling shows me 3% of time spent by atapci0 on pure network load due to IRQ sharing with em0.
|
#
185500 |
|
01-Dec-2008 |
mav |
Restore AHCI suspend/resume support, broken with modularization commit (rev 183724).
|
#
185268 |
|
25-Nov-2008 |
rpaulo |
Add support for Marvell PATA M88SX6121.
PR: 129154 Submitted by: João Barros <joao.barros at gmail.com> MFC after: 1 month
|
#
183724 |
|
09-Oct-2008 |
sos |
This is the roumored ATA modulerisation works, and it needs a little explanation.
If you just config KERNEL as usual there should be no apparent changes, you'll get all chipset support code compiled in.
However there is now a way to only compile in code for chipsets needed on a pr vendor basis. ATA now has the following "device" entries:
atacore: ATA core functionality, always needed for any ATA setup
atacard: CARDBUS support atacbus: PC98 cbus support ataisa: ISA bus support atapci: PCI bus support only generic chipset support.
ataahci: AHCI support, also pulled in by some vendor modules.
ataacard, ataacerlabs, ataadaptec, ataamd, ataati, atacenatek, atacypress, atacyrix, atahighpoint, ataintel, ataite, atajmicron, atamarvell, atamicron, atanational, atanetcell, atanvidia, atapromise, ataserverworks, atasiliconimage, atasis, atavia; Vendor support, ie atavia for VIA chipsets
atadisk: ATA disk driver ataraid: ATA softraid driver
atapicd: ATAPI cd/dvd driver atapifd: ATAPI floppy/flashdisk driver atapist: ATAPI tape driver
atausb: ATA<>USB bridge atapicam: ATA<>CAM bridge
This makes it possible to config a kernel with just VIA chipset support by having the following ATA lines in the kernel config file:
device atacore device atapci device atavia
And then you need the atadisk, atapicd etc lines in there just as usual.
If you use ATA as modules loaded at boot there is few changes except the rename of the "ata" module to "atacore", things looks just as usual. However under atapci you now have a whole bunch of vendor specific drivers, that you can kldload individually depending on you needs. Drivers have the same names as used in the kernel config explained above.
|
#
183552 |
|
02-Oct-2008 |
sos |
Add ICH10 PCI id's. Submitted by: Xin Li
Fix the number of PATA ports on newer ICHX chips, they have just 1 port not 2.
|
#
183380 |
|
26-Sep-2008 |
sos |
Add support for the ITE 8213 controller. Thanks goes to ITE who provided docs and feedback and made this possible.
Minor fixups to the Intel ICH code for bugs found while doing this. (ITE8213 is very semilar to an Intel ICH)
MFC after: 1 week
|
#
183141 |
|
18-Sep-2008 |
sos |
Cleanup the AHCI code a bit. Add suspend/resume for AHCI, general methods added.
Inspired by: Andrey V. Elsukov
|
#
182749 |
|
04-Sep-2008 |
mav |
Add one more SII3132 chip PCI ID found on Adaptec Serial ATA II RAID 1220SA.
Submitted by: Dmitry S. Luhtionov <mitya@cabletv.dp.ua>
|
#
180437 |
|
10-Jul-2008 |
remko |
Detect ATA controllers in the Macbook3.
PR: 118135 Submitted by: ed Approved by: imp (mentor, implicit) MFC after: 1 week
|
#
180383 |
|
09-Jul-2008 |
remko |
Add new device id for ICH8M, which supports greater than UDMA33 mode when it worked as generic IDE.
PR: 125422 Submitted by: Andrey V. Elsukov <bu7cher at yandex dot ru> Approved by: imp (mentor, implicit) MFC after: 1 week
|
#
180382 |
|
09-Jul-2008 |
remko |
Add support for the ICH9 in non AHCI mode (RAID mode).
Submitted by: Andrey V. Elsukov <bu7cher at yandex dot ru> Tested by: Vitalij L. Fadeev <fvl at mail dot ru> Approved by: imp (mentor, implicit) MFC after: 1 week
|
#
178375 |
|
21-Apr-2008 |
sos |
Add HW level support for the Adaptec 1420SA controller.
|
#
178156 |
|
12-Apr-2008 |
sos |
Dont call hw.status recursively.
Spotted by: Marcel Moolenaar
|
#
178067 |
|
10-Apr-2008 |
sos |
Add experimental support for SATA Port Multipliers
Support is working on the Silicon Image SiI3124/3132. Support is working on some AHCI chips but far from all.
Remember this is WIP, so test reports and (constructive) suggestions are welcome!
|
#
176891 |
|
07-Mar-2008 |
sos |
Add proper support for the SATA/AHCI part of IXP[67]00
|
#
173734 |
|
18-Nov-2007 |
sos |
Add generic support for chipsets that say they support AHCI. This should catch new chipsets that we dont know but that we should support. Add a few new PCI id's. Misc cleanups.
|
#
172499 |
|
09-Oct-2007 |
delphij |
Add PCI ID for ICH9 AHCI w/ two adapters.
Tested by: Abdullah Ibn Hamad Al-Marri <almarrie gmail com> Approved by: sos Approved by: re (kensmith)
|
#
172446 |
|
04-Oct-2007 |
sos |
Add support for the VIA 8237S Fix the LBA28/LBA48 crossover bug.
Approved by: re@
|
#
172436 |
|
04-Oct-2007 |
phk |
Recognize the CS5536 support chip for the AMD Geode LX CPU to enable UDMA modes.
Please notice that Soekris NET5501 bios versions before 1.32f has a bug that prevents this from working.
Approved by: re (gnn) MFC: 2 weeks
|
#
172134 |
|
10-Sep-2007 |
simon |
Add PCI IDs for Intel ICH9.
PR: kern/114473 Submitted by: Michael Fuckner <michael@fuckner.net> MFC after: 2 weeks OK'ed by: sos Approved by: re (bmah)
|
#
171025 |
|
25-Jun-2007 |
sos |
Add support for the nVidia MCP61 series chipset.
Approved by: re (mux@)
|
#
167386 |
|
09-Mar-2007 |
sos |
Add support for the Silicon Image SiI 3124 and SiI 3132.
HW donated by: Adriaan de Groot
|
#
166901 |
|
23-Feb-2007 |
piso |
o break newbus api: add a new argument of type driver_filter_t to bus_setup_intr()
o add an int return code to all fast handlers
o retire INTR_FAST/IH_FAST
For more info: http://docs.freebsd.org/cgi/getmsg.cgi?fetch=465712+0+current/freebsd-current
Reviewed by: many Approved by: re@
|
#
166477 |
|
03-Feb-2007 |
rink |
Add support for the NetCell NC3000/5000 series SATA RAID cards.
Reviewed by: sos Approved by: imp (mentor) MFC after: 1 week
|
#
165768 |
|
04-Jan-2007 |
sos |
Add support for the Marvell 6101/6145 PATA chips used on many new Intel boards.
HW donated by: Sentex
|
#
165759 |
|
04-Jan-2007 |
sos |
Add new PATA only JMicron chip.
|
#
162230 |
|
11-Sep-2006 |
sos |
Add support for a few more Serverworks and lookalikes chips.
|
#
161883 |
|
02-Sep-2006 |
sos |
Add support for VIA 8237A.
|
#
161291 |
|
14-Aug-2006 |
sos |
Add support for the ICH8 and ESB2 chips, also add a few other missing ICH7 parts.
HW donated by: JMicron
|
#
161227 |
|
11-Aug-2006 |
sos |
Unbreak nForce4 SATA support. Hopefully I dont break something else this time.....
|
#
160999 |
|
05-Aug-2006 |
sos |
Unbreak nForce3 SATA support.
|
#
160616 |
|
24-Jul-2006 |
sos |
Finally fix support for the newer MCP51/MCP55 nVidia chipsets. The register layout has changed since the original NV4 - sigh. Hotplug support has been fixed for all nVidia chipsets that supports it (including the MCP51/55).
HW donated by: Kingsley College
|
#
160096 |
|
04-Jul-2006 |
sos |
Add preliminary support for the Serverworks HT1000 chip.
HW sponsored by: Yahoo!
|
#
156683 |
|
13-Mar-2006 |
sos |
Add support for the JMicron JMB361, 365 and 366 chips.
HW and documentation kindly provided by JMicron.
|
#
155761 |
|
16-Feb-2006 |
sos |
Add support for the JMicron JMB363 dual SATA + single PATA controller. Documentation and HW kindly provided by JMicron.
|
#
154829 |
|
25-Jan-2006 |
sos |
Add support for the JMicron JMB360 SATAII controller. Thanks to JMicron for providing needed info.
HW donated by: Ralf Folkerts
|
#
154515 |
|
18-Jan-2006 |
sos |
Whitespace cleanup.
|
#
154507 |
|
18-Jan-2006 |
sos |
Add support for using DMA on dump, greatly speeds up the dump process. Add dump support in ataraid.
|
#
154063 |
|
05-Jan-2006 |
sos |
Get rid of the advertising clause in the copyright.
|
#
153753 |
|
27-Dec-2005 |
sos |
Add initial support for the Marvell 88SX[56]0[48][01] series of SATA chips.
Hardware donated by: Matthew Jacob Hardware donated by: Y!
|
#
153473 |
|
16-Dec-2005 |
sos |
Cleanup the strings for printing chipset names, saves quite some space.
Add a couble new nVidia chips now we are here.
|
#
153415 |
|
14-Dec-2005 |
sos |
Add support for VIA VT8251 southbridge. SATA support for now in compat mode, but all 4 channels usable.
|
#
153015 |
|
02-Dec-2005 |
sos |
Update the ICH7 support so it deals better with chips without AHCI.
Update Intel MatrixRAID support to be able to pick up RAID0+1 (RAID10) and RAID5 arrays without panic'ing. This has the side effect of now also supporting multiple volumes on MatrixRAID's now I have the metadata better understood..
HW sponsored by: Mullet Scandinavia AB
|
#
151267 |
|
12-Oct-2005 |
sos |
Add support for the ATI IXP[234]00 series chipsets.
HW donated by: sentex
|
#
149565 |
|
29-Aug-2005 |
sos |
Fix support for the VIA 6421 controller.
|
#
149387 |
|
23-Aug-2005 |
sos |
Apply fix for "pr82261 DMA-support on Sparc64 broken" The Acer chip or wiring that SUN uses has problems that this patch tries to work around. Original patch by Marius Strobl, hacked into shape by me..
|
#
148992 |
|
12-Aug-2005 |
sos |
Add support for the Promise PDC4071[89] chips used on fx the Fasttrak TX4300. Docs kindly provided by Promise.
|
#
148731 |
|
05-Aug-2005 |
sos |
Add support for the ITE IT8211F controller.
|
#
147139 |
|
08-Jun-2005 |
sos |
Add support for the Intel 31244. Most code by the submitters, hammered upon to get the right ATA fell by me.
Submitted by: Olivier Houchard Submitted by: Jia-Shiun Li
|
#
146266 |
|
16-May-2005 |
sos |
Change the way ioctls are issue to ATA. The most prominent part is that its now possible to issue ata_requests directly to say acd0, instead of going through the cumbersome /dev/ata device.
|
#
146178 |
|
13-May-2005 |
sos |
Cleanup comments
|
#
146112 |
|
11-May-2005 |
sos |
Add new Intel PCI ID's for the ICH7 chips (untested).
|
#
145713 |
|
30-Apr-2005 |
sos |
Take newbusification one step further, ie use the device_t more consequently all way through the code down the layers, instead of the mix'n'match that resulted from the conversion done earlier.
Sponsored by: pair.com
|
#
145191 |
|
17-Apr-2005 |
sos |
Add one more Promise SATAII/150 chip id.
|
#
144861 |
|
10-Apr-2005 |
sos |
Refine the SATA PHY code so the time consumed during probe is reduced.
Add the older nVidia nForce2 SATA chip to supported HW.
|
#
144808 |
|
08-Apr-2005 |
sos |
Add support for the PHY on nVidia, SiS and VIA chips This code is done blindfolded as I dont have such HW here, so reports of success/failure are most welcome.
More SATA PHY cleanups.
|
#
144790 |
|
08-Apr-2005 |
sos |
Generalise the SATA PHY handling code so it wont be duplicated for each SATA chip. Promise and Silicon Image are the current candidates for this.
|
#
144667 |
|
05-Apr-2005 |
sos |
Add firstshot support for Acer Labs Inc SATA parts Update ALi PATA support to handle ATA133 as well
|
#
144382 |
|
31-Mar-2005 |
sos |
Correct the PCI ID for the SiS 965, and add support for the SATA part that was left our by accident.
Prodded by: Patrik Backlund
|
#
144330 |
|
30-Mar-2005 |
sos |
This is the much rumoured ATA mkIII update that I've been working on.
o ATA is now fully newbus'd and split into modules. This means that on a modern system you just load "atapci and ata" to get the base support, and then one or more of the device subdrivers "atadisk atapicd atapifd atapist ataraid". All can be loaded/unloaded anytime, but for obvious reasons you dont want to unload atadisk when you have mounted filesystems.
o The device identify part of the probe has been rewritten to fix the problems with odd devices the old had, and to try to remove so of the long delays some HW could provoke. Also probing is done without the need for interrupts, making earlier probing possible.
o SATA devices can be hot inserted/removed and devices will be created/ removed in /dev accordingly. NOTE: only supported on controllers that has this feature: Promise and Silicon Image for now. On other controllers the usual atacontrol detach/attach dance is still needed.
o Support for "atomic" composite ATA requests used for RAID.
o ATA RAID support has been rewritten and and now supports these metadata formats: "Adaptec HostRAID" "Highpoint V2 RocketRAID" "Highpoint V3 RocketRAID" "Intel MatrixRAID" "Integrated Technology Express" "LSILogic V2 MegaRAID" "LSILogic V3 MegaRAID" "Promise FastTrak" "Silicon Image Medley" "FreeBSD PseudoRAID"
o Update the ioctl API to match new RAID levels etc.
o Update atacontrol to know about the new RAID levels etc NOTE: you need to recompile atacontrol with the new sys/ata.h, make world will take care of that. NOTE2: that rebuild is done differently from the old system as the rebuild is now done piggybacked on read requests to the array, so atacontrol simply starts a background "dd" to rebuild the array.
o The reinit code has been worked over to be much more robust.
o The timeout code has been overhauled for races.
o Support of new chipsets.
o Lots of fixes for bugs found while doing the modulerization and reviewing the old code.
Missing or changed features from current ATA:
o atapi-cd no longer has support for ATAPI changers. Todays its much cheaper and alot faster to copy those CD images to disk and serve them from there. Besides they dont seem to be made anymore, maybe for that exact reason.
o ATA RAID can only read metadata from all the above metadata formats, not write all of them (Promise and Highpoint V2 so far). This means that arrays can be picked up from the BIOS, but they cannot be created from FreeBSD. There is more to it than just the missing write metadata support, those formats are not unique to a given controller like Promise and Highpoint formats, instead they exist for several types, and even worse, some controllers can have different formats and its impossible to tell which one. The outcome is that we cannot reliably create the metadata of those formats and be sure the controller BIOS will understand it. However write support is needed to update/fail/rebuild the arrays properly so it sits fairly high on the TODO list.
o So far atapicam is not supported with these changes. When/if this will change is up to the maintainer of atapi-cam so go there for questions.
HW donated by: Webveveriet AS HW donated by: Frode Nordahl HW donated by: Yahoo! HW donated by: Sentex Patience by: Vife and my boys (and even the cats)
|
#
138555 |
|
08-Dec-2004 |
sos |
Add support for the ITE IT8212F controller.
HW donated by: Yahoo!
|
#
138553 |
|
08-Dec-2004 |
sos |
Add first shot on support for the new Promise SATAII chips.
HW donated by: pil.dk
|
#
136324 |
|
09-Oct-2004 |
sos |
Add support for the ICH6 in legacy mode. The AHCI part is not supported yet, but is in the works.
5.3 RC1 candidate
|
#
136198 |
|
06-Oct-2004 |
sos |
Fix the PC98 lockups on boot. The interchannel locking for PC98 needed to be updated to match the rest of the locking in ATA.
|
#
134687 |
|
03-Sep-2004 |
sos |
Cleanup the defines used for various chipsets. Add new nVidia controllers.
|
#
130521 |
|
15-Jun-2004 |
sos |
Increase robustness of SATA handling.
|
#
128767 |
|
30-Apr-2004 |
sos |
Spring cleanup of macros
|
#
128530 |
|
21-Apr-2004 |
sos |
Make the test for ATA PCI legacy addressing mode more robust. Add code (currently ifdef'd out) to allow ATA PCI native addressing. Fix the altio offset for ATA PCI devices.
|
#
128183 |
|
13-Apr-2004 |
sos |
Add support for the Promise command sequencer present on all modern Promise controllers (PDC203** PDC206**).
This also adds preliminary support for the Promise SX4/SX4000 but *only* as a "normal" Promise ATA controller (ATA RAID's are supported though but only RAID0, RAID1 and RAID0+1).
This cuts off yet another 5-8% of the command overhead on promise controllers, making them the fastest we have ever had support for.
Work is now continuing to add support for this in ATA RAID, to accellerate ATA RAID quite a bit on these controllers, and especially the SX4/SX4000 series as they have quite a few tricks in there..
This commit also adds a few fixes to the SATA code needed for proper support.
|
#
127080 |
|
16-Mar-2004 |
sos |
Update the SiS support to distinguish older southbridges better.
|
#
127019 |
|
15-Mar-2004 |
sos |
Add support for detaching PCI controllers.
This adds support for cardbus ATA/SATA controllers. I get roughly the same transfer speeds as on true PCI controllers. Nice to be able to add a couble of "real" disks to a laptop :)
|
#
126848 |
|
11-Mar-2004 |
sos |
Add yet another VIA pci id.
|
#
126223 |
|
25-Feb-2004 |
sos |
Add support for the sii3512 SATA chip.
|
#
125326 |
|
02-Feb-2004 |
sos |
Fix support for the Promise TX4 on amd64. Somehow the bridge on there shows up with another PCI id than it does on x86, no idea why...
|
#
125199 |
|
29-Jan-2004 |
sos |
Cleanups/cosmetics.
|
#
124754 |
|
20-Jan-2004 |
sos |
Update the support for the VIA 8237 southbridge.
|
#
124643 |
|
17-Jan-2004 |
sos |
Add support for the Silicon Image 3114 4 channel SATA controller.
|
#
123632 |
|
18-Dec-2003 |
sos |
Add support for the SiS 661 chipset (using SiS 963 south).
|
#
123034 |
|
28-Nov-2003 |
sos |
Workaround for errata on early versions of the sii3112.
Approved by: re@
|
#
122886 |
|
18-Nov-2003 |
sos |
Add support for the SiS964 ATA/SATA southbridge. This could not have been done without the support from kuriyama.
Approved by: re@
|
#
121738 |
|
30-Oct-2003 |
sos |
Add support for the VIA 8237 (both PATA and SATA part). Cleanup the SATA support a bit now we are here anyways.
|
#
119883 |
|
08-Sep-2003 |
sos |
Add another ID for the SiI3112a SATA chip as used on the Adaptec 1210SA. RAID support is still in the works, so for now just normal ATA ops.
Sponsored by: Matt Douhan(www.fruitsalad.org)
|
#
119699 |
|
02-Sep-2003 |
obrien |
Support the nForce3 chip found on Opteron motherboards: atapci0: <nVidia nForce3 UDMA133 controller>
Approved by: sos
|
#
119453 |
|
25-Aug-2003 |
sos |
Cleanup the dma int/alloc/free code.
|
#
119404 |
|
24-Aug-2003 |
sos |
This is a major rework of the ATA driver (ATAng)
Restructure the way ATA/ATAPI commands are processed, use a common ata_request structure for both. This centralises the way requests are handled so locking is much easier to handle.
The driver is now layered much more cleanly to seperate the lowlevel HW access so it can be tailored to specific controllers without touching the upper layers. This is needed to support some of the newer semi-intelligent ATA controllers showing up.
The top level drivers (disk, ATAPI devices) are more or less still the same with just corrections to use the new interface.
Pull ATA out from under Gaint now that locking can be done in a sane way.
Add support for a the National Geode SC1100. Thanks to Soekris engineering for sponsoring a Soekris 4801 to make this support.
Fixed alot of small bugs in the chipset code for various chips now we are around in that corner anyways.
|
#
117155 |
|
02-Jul-2003 |
sos |
Update the SATA support code to work more correctly with real SATA disks now that I can test it.
Add support for the SiI 3112 SATA chip using memory mapped I/O. Update the support for the SiI 0680 to use the memio interface as well.
Sponsored by: David Leimbach <leimy2k@mac.com> (3112 based controller) Sponsored by: FreeBSD Systems (www.FreeBSDsystems.com) (SATA disks)
|
#
115136 |
|
18-May-2003 |
sos |
Support the ICH5 SATA part. Fix HPT374 UDMA133 timing. Fix Promise ID. Cosmetics on probe print for Promise & HPT.
Approved by: re
|
#
114872 |
|
10-May-2003 |
sos |
Add a couble new Intel PCI id's
Approved by: re@
|
#
114784 |
|
06-May-2003 |
jhb |
Add PCI ID's for the Intel ICH5 (82801EB) chipset.
Approved by: re (murray) Sponsored by: The Weather Channel
|
#
114390 |
|
01-May-2003 |
sos |
I'm pleased to announce that Promise is now supporting the FreeBSD project by providing documentation (under NDA) and hardware for testing. This commit is the first result of the cooperation, and adds support for several of their new controllers that we didn't support before (and probably newer would have without this arrangement).
Add support for the Promise SATA150 TX2/TX4 and the Promise TX4000 controllers. This also adds support for various motherboard fitted Promise SATA/ATA chips. Note that this code uses memory mapped registers to minimize overhead. I belive FreeBSD has made another first in the Open Source world by being able to release support for this :)
|
#
113334 |
|
10-Apr-2003 |
sos |
Add a few more older SiS ID's.
|
#
113222 |
|
07-Apr-2003 |
sos |
Third round of updates to the ATA driver.
More DMA cleanups, including fix for breakage on older Promise controllers.
Add more ways of getting to the ATA registers.
|
#
112791 |
|
29-Mar-2003 |
sos |
Second round of updates to the ATA driver.
Clean up the DMA interface too much unneeded stuff crept in with the busdma code back when.
Modify the ATA_IN* / ATA_OUT* macros so that resource and offset are gotten from a table. That allows for new chipsets that doesn't nessesarily have things ordered the good old way. This also removes the need for the wierd PC98 resource functions.
Tested on: i386, PC98, Alpha, Sparc64
|
#
111812 |
|
03-Mar-2003 |
sos |
Minor cleanup of the Promise code.
|
#
111502 |
|
25-Feb-2003 |
sos |
Fix support for Acer chips. The UDMA enable regs wasn't set properly.
|
#
111480 |
|
25-Feb-2003 |
sos |
Fix support for the old CMD 646 chips, interrupt setup was wrong.
|
#
111188 |
|
20-Feb-2003 |
sos |
First round off updates/fixes to the ATA driver.
This moves all chipset specific code to a new file 'ata-chipset.c'. Extensive use of tables and pointers to avoid having the same switch on chipset type in several places, and to allow substituting various functions for different HW arch needs. Added PIO mode setup and all DMA modes. Support for all known SiS chipsets. Thanks to Christoph Kukulies for sponsoring a nice ASUS P4S8X SiS648 based board for this work!
Tested on: i386, PC98, alpha and sparc64
|