mirror of
				https://github.com/qemu/qemu.git
				synced 2025-10-31 04:06:46 +00:00 
			
		
		
		
	 e351b82611
			
		
	
	
		e351b82611
		
	
	
	
	
		
			
			This adds the SAS1068 device, a SAS disk controller used in VMware that is oldish but widely supported and has decent performance. Unlike megasas, it presents itself as a SAS controller and not as a RAID controller. The device corresponds to the mptsas kernel driver in Linux. A few small things in the device setup are based on Don Slutz's old patch, but the device emulation was written from scratch based on Don's SeaBIOS patch and on the FreeBSD and Linux drivers. It is 2400 lines shorter than Don's patch (and roughly the same size as MegaSAS---also because it doesn't support the similar SPI controller), implements SCSI task management functions (with asynchronous cancellation), supports big-endian hosts, has complete support for migration and follows the QEMU coding standards much more closely. To write the driver, I first split Don's patch in two parts, with the configuration bits in one file and the rest in a separate file. I first left mptconfig.c in place and rewrote the rest, then deleted mptconfig.c as well. The configuration pages are still based mostly on VirtualBox's, though not exactly the same. However, the implementation is completely different. The contents of the pages themselves should not be copyrightable. Signed-off-by: Don Slutz <Don@CloudSwitch.com> Message-Id: <1347382813-5662-1-git-send-email-Don@CloudSwitch.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
		
			
				
	
	
		
			15 lines
		
	
	
		
			537 B
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			15 lines
		
	
	
		
			537 B
		
	
	
	
		
			Makefile
		
	
	
	
	
	
| common-obj-y += scsi-disk.o
 | |
| common-obj-y += scsi-generic.o scsi-bus.o
 | |
| common-obj-$(CONFIG_LSI_SCSI_PCI) += lsi53c895a.o
 | |
| common-obj-$(CONFIG_MPTSAS_SCSI_PCI) += mptsas.o mptconfig.o mptendian.o
 | |
| common-obj-$(CONFIG_MEGASAS_SCSI_PCI) += megasas.o
 | |
| common-obj-$(CONFIG_VMW_PVSCSI_SCSI_PCI) += vmw_pvscsi.o
 | |
| common-obj-$(CONFIG_ESP) += esp.o
 | |
| common-obj-$(CONFIG_ESP_PCI) += esp-pci.o
 | |
| obj-$(CONFIG_PSERIES) += spapr_vscsi.o
 | |
| 
 | |
| ifeq ($(CONFIG_VIRTIO),y)
 | |
| obj-y += virtio-scsi.o virtio-scsi-dataplane.o
 | |
| obj-$(CONFIG_VHOST_SCSI) += vhost-scsi.o
 | |
| endif
 |