diff options
Diffstat (limited to 'target/linux/oxnas/patches-4.0')
13 files changed, 67 insertions, 125 deletions
diff --git a/target/linux/oxnas/patches-4.0/010-arm_introduce-dma-fiq-irq-broadcast.patch b/target/linux/oxnas/patches-4.0/010-arm_introduce-dma-fiq-irq-broadcast.patch index fb7547f96b..1ce68e8276 100644 --- a/target/linux/oxnas/patches-4.0/010-arm_introduce-dma-fiq-irq-broadcast.patch +++ b/target/linux/oxnas/patches-4.0/010-arm_introduce-dma-fiq-irq-broadcast.patch @@ -1,7 +1,5 @@ -Index: linux-3.18-rc4/arch/arm/include/asm/glue-cache.h -=================================================================== ---- linux-3.18-rc4.orig/arch/arm/include/asm/glue-cache.h -+++ linux-3.18-rc4/arch/arm/include/asm/glue-cache.h +--- a/arch/arm/include/asm/glue-cache.h ++++ b/arch/arm/include/asm/glue-cache.h @@ -156,11 +156,19 @@ static inline void nop_dma_unmap_area(co #define __cpuc_flush_user_range __glue(_CACHE,_flush_user_cache_range) #define __cpuc_coherent_kern_range __glue(_CACHE,_coherent_kern_range) @@ -22,11 +20,9 @@ Index: linux-3.18-rc4/arch/arm/include/asm/glue-cache.h #endif #endif -Index: linux-3.18-rc4/arch/arm/mm/Kconfig -=================================================================== ---- linux-3.18-rc4.orig/arch/arm/mm/Kconfig -+++ linux-3.18-rc4/arch/arm/mm/Kconfig -@@ -843,6 +843,17 @@ config DMA_CACHE_RWFO +--- a/arch/arm/mm/Kconfig ++++ b/arch/arm/mm/Kconfig +@@ -844,6 +844,17 @@ config DMA_CACHE_RWFO in hardware, other workarounds are needed (e.g. cache maintenance broadcasting in software via FIQ). @@ -44,10 +40,8 @@ Index: linux-3.18-rc4/arch/arm/mm/Kconfig config OUTER_CACHE bool -Index: linux-3.18-rc4/arch/arm/mm/flush.c -=================================================================== ---- linux-3.18-rc4.orig/arch/arm/mm/flush.c -+++ linux-3.18-rc4/arch/arm/mm/flush.c +--- a/arch/arm/mm/flush.c ++++ b/arch/arm/mm/flush.c @@ -314,7 +314,11 @@ void flush_dcache_page(struct page *page mapping = page_mapping(page); diff --git a/target/linux/oxnas/patches-4.0/250-add-plxtech-vendor-prefix.patch b/target/linux/oxnas/patches-4.0/250-add-plxtech-vendor-prefix.patch index c495258d30..8eead43c9f 100644 --- a/target/linux/oxnas/patches-4.0/250-add-plxtech-vendor-prefix.patch +++ b/target/linux/oxnas/patches-4.0/250-add-plxtech-vendor-prefix.patch @@ -1,8 +1,6 @@ -Index: linux-3.18-rc4/Documentation/devicetree/bindings/vendor-prefixes.txt -=================================================================== ---- linux-3.18-rc4.orig/Documentation/devicetree/bindings/vendor-prefixes.txt -+++ linux-3.18-rc4/Documentation/devicetree/bindings/vendor-prefixes.txt -@@ -113,6 +113,7 @@ panasonic Panasonic Corporation +--- a/Documentation/devicetree/bindings/vendor-prefixes.txt ++++ b/Documentation/devicetree/bindings/vendor-prefixes.txt +@@ -139,6 +139,7 @@ pericom Pericom Technology Inc. phytec PHYTEC Messtechnik GmbH picochip Picochip Ltd plathome Plat'Home Co., Ltd. diff --git a/target/linux/oxnas/patches-4.0/300-introduce-oxnas-platform.patch b/target/linux/oxnas/patches-4.0/300-introduce-oxnas-platform.patch index 465e5b7c47..078eddc1ec 100644 --- a/target/linux/oxnas/patches-4.0/300-introduce-oxnas-platform.patch +++ b/target/linux/oxnas/patches-4.0/300-introduce-oxnas-platform.patch @@ -1,7 +1,5 @@ -Index: linux-4.0-rc4/arch/arm/Kconfig -=================================================================== ---- linux-4.0-rc4.orig/arch/arm/Kconfig -+++ linux-4.0-rc4/arch/arm/Kconfig +--- a/arch/arm/Kconfig ++++ b/arch/arm/Kconfig @@ -356,6 +356,17 @@ config ARCH_VERSATILE help This enables support for ARM Ltd Versatile board. @@ -20,7 +18,7 @@ Index: linux-4.0-rc4/arch/arm/Kconfig config ARCH_AT91 bool "Atmel AT91" select ARCH_REQUIRE_GPIOLIB -@@ -916,6 +927,8 @@ source "arch/arm/mach-omap2/Kconfig" +@@ -917,6 +928,8 @@ source "arch/arm/mach-omap2/Kconfig" source "arch/arm/mach-orion5x/Kconfig" @@ -29,10 +27,8 @@ Index: linux-4.0-rc4/arch/arm/Kconfig source "arch/arm/mach-picoxcell/Kconfig" source "arch/arm/mach-pxa/Kconfig" -Index: linux-4.0-rc4/arch/arm/Makefile -=================================================================== ---- linux-4.0-rc4.orig/arch/arm/Makefile -+++ linux-4.0-rc4/arch/arm/Makefile +--- a/arch/arm/Makefile ++++ b/arch/arm/Makefile @@ -188,6 +188,7 @@ machine-$(CONFIG_ARCH_NSPIRE) += nspire machine-$(CONFIG_ARCH_OMAP1) += omap1 machine-$(CONFIG_ARCH_OMAP2PLUS) += omap2 @@ -41,10 +37,8 @@ Index: linux-4.0-rc4/arch/arm/Makefile machine-$(CONFIG_ARCH_PICOXCELL) += picoxcell machine-$(CONFIG_ARCH_PXA) += pxa machine-$(CONFIG_ARCH_QCOM) += qcom -Index: linux-4.0-rc4/arch/arm/boot/dts/Makefile -=================================================================== ---- linux-4.0-rc4.orig/arch/arm/boot/dts/Makefile -+++ linux-4.0-rc4/arch/arm/boot/dts/Makefile +--- a/arch/arm/boot/dts/Makefile ++++ b/arch/arm/boot/dts/Makefile @@ -429,6 +429,7 @@ dtb-$(CONFIG_ARCH_ORION5X) += \ orion5x-lacie-ethernet-disk-mini-v2.dtb \ orion5x-maxtor-shared-storage-2.dtb \ @@ -53,10 +47,8 @@ Index: linux-4.0-rc4/arch/arm/boot/dts/Makefile dtb-$(CONFIG_ARCH_PRIMA2) += \ prima2-evb.dtb dtb-$(CONFIG_ARCH_QCOM) += \ -Index: linux-4.0-rc4/arch/arm/tools/mach-types -=================================================================== ---- linux-4.0-rc4.orig/arch/arm/tools/mach-types -+++ linux-4.0-rc4/arch/arm/tools/mach-types +--- a/arch/arm/tools/mach-types ++++ b/arch/arm/tools/mach-types @@ -228,6 +228,7 @@ edb9302a MACH_EDB9302A EDB9302A 1127 edb9307a MACH_EDB9307A EDB9307A 1128 omap_3430sdp MACH_OMAP_3430SDP OMAP_3430SDP 1138 @@ -65,10 +57,8 @@ Index: linux-4.0-rc4/arch/arm/tools/mach-types micro9m MACH_MICRO9M MICRO9M 1169 bug MACH_BUG BUG 1179 at91sam9263ek MACH_AT91SAM9263EK AT91SAM9263EK 1202 -Index: linux-4.0-rc4/drivers/clk/Makefile -=================================================================== ---- linux-4.0-rc4.orig/drivers/clk/Makefile -+++ linux-4.0-rc4/drivers/clk/Makefile +--- a/drivers/clk/Makefile ++++ b/drivers/clk/Makefile @@ -31,6 +31,7 @@ obj-$(CONFIG_COMMON_CLK_MAX77802) += clk obj-$(CONFIG_ARCH_MOXART) += clk-moxart.o obj-$(CONFIG_ARCH_NOMADIK) += clk-nomadik.o diff --git a/target/linux/oxnas/patches-4.0/310-oxnas-clocksource.patch b/target/linux/oxnas/patches-4.0/310-oxnas-clocksource.patch index 73d7285af1..e7bc603382 100644 --- a/target/linux/oxnas/patches-4.0/310-oxnas-clocksource.patch +++ b/target/linux/oxnas/patches-4.0/310-oxnas-clocksource.patch @@ -1,7 +1,5 @@ -Index: linux-4.0-rc4/drivers/clocksource/Kconfig -=================================================================== ---- linux-4.0-rc4.orig/drivers/clocksource/Kconfig -+++ linux-4.0-rc4/drivers/clocksource/Kconfig +--- a/drivers/clocksource/Kconfig ++++ b/drivers/clocksource/Kconfig @@ -172,6 +172,12 @@ config VF_PIT_TIMER help Support for Period Interrupt Timer on Freescale Vybrid Family SoCs. @@ -15,10 +13,8 @@ Index: linux-4.0-rc4/drivers/clocksource/Kconfig config SYS_SUPPORTS_SH_CMT bool -Index: linux-4.0-rc4/drivers/clocksource/Makefile -=================================================================== ---- linux-4.0-rc4.orig/drivers/clocksource/Makefile -+++ linux-4.0-rc4/drivers/clocksource/Makefile +--- a/drivers/clocksource/Makefile ++++ b/drivers/clocksource/Makefile @@ -38,6 +38,7 @@ obj-$(CONFIG_CLKSRC_EFM32) += time-efm32 obj-$(CONFIG_CLKSRC_EXYNOS_MCT) += exynos_mct.o obj-$(CONFIG_CLKSRC_SAMSUNG_PWM) += samsung_pwm_timer.o diff --git a/target/linux/oxnas/patches-4.0/320-oxnas-irqchip.patch b/target/linux/oxnas/patches-4.0/320-oxnas-irqchip.patch index 054c9ddeab..4501263b17 100644 --- a/target/linux/oxnas/patches-4.0/320-oxnas-irqchip.patch +++ b/target/linux/oxnas/patches-4.0/320-oxnas-irqchip.patch @@ -1,7 +1,5 @@ -Index: linux-4.0-rc4/drivers/irqchip/Kconfig -=================================================================== ---- linux-4.0-rc4.orig/drivers/irqchip/Kconfig -+++ linux-4.0-rc4/drivers/irqchip/Kconfig +--- a/drivers/irqchip/Kconfig ++++ b/drivers/irqchip/Kconfig @@ -27,6 +27,11 @@ config ARM_GIC_V3_ITS bool select PCI_MSI_IRQ_DOMAIN @@ -14,10 +12,8 @@ Index: linux-4.0-rc4/drivers/irqchip/Kconfig config ARM_NVIC bool select IRQ_DOMAIN -Index: linux-4.0-rc4/drivers/irqchip/Makefile -=================================================================== ---- linux-4.0-rc4.orig/drivers/irqchip/Makefile -+++ linux-4.0-rc4/drivers/irqchip/Makefile +--- a/drivers/irqchip/Makefile ++++ b/drivers/irqchip/Makefile @@ -30,6 +30,7 @@ obj-$(CONFIG_IMGPDC_IRQ) += irq-imgpdc. obj-$(CONFIG_SIRF_IRQ) += irq-sirfsoc.o obj-$(CONFIG_RENESAS_INTC_IRQPIN) += irq-renesas-intc-irqpin.o @@ -26,10 +22,8 @@ Index: linux-4.0-rc4/drivers/irqchip/Makefile obj-$(CONFIG_VERSATILE_FPGA_IRQ) += irq-versatile-fpga.o obj-$(CONFIG_ARCH_NSPIRE) += irq-zevio.o obj-$(CONFIG_ARCH_VT8500) += irq-vt8500.o -Index: linux-4.0-rc4/drivers/irqchip/irq-gic.c -=================================================================== ---- linux-4.0-rc4.orig/drivers/irqchip/irq-gic.c -+++ linux-4.0-rc4/drivers/irqchip/irq-gic.c +--- a/drivers/irqchip/irq-gic.c ++++ b/drivers/irqchip/irq-gic.c @@ -1086,6 +1086,7 @@ IRQCHIP_DECLARE(arm1176jzf_dc_gic, "arm, IRQCHIP_DECLARE(cortex_a15_gic, "arm,cortex-a15-gic", gic_of_init); IRQCHIP_DECLARE(cortex_a9_gic, "arm,cortex-a9-gic", gic_of_init); diff --git a/target/linux/oxnas/patches-4.0/330-oxnas-pinctrl.patch b/target/linux/oxnas/patches-4.0/330-oxnas-pinctrl.patch index c037d7271d..1183fbe5d0 100644 --- a/target/linux/oxnas/patches-4.0/330-oxnas-pinctrl.patch +++ b/target/linux/oxnas/patches-4.0/330-oxnas-pinctrl.patch @@ -1,7 +1,5 @@ -Index: linux-4.0-rc4/drivers/pinctrl/Kconfig -=================================================================== ---- linux-4.0-rc4.orig/drivers/pinctrl/Kconfig -+++ linux-4.0-rc4/drivers/pinctrl/Kconfig +--- a/drivers/pinctrl/Kconfig ++++ b/drivers/pinctrl/Kconfig @@ -188,6 +188,15 @@ config PINCTRL_COH901 COH 901 335 and COH 901 571/3. They contain 3, 5 or 7 ports of 8 GPIO pins each. @@ -18,10 +16,8 @@ Index: linux-4.0-rc4/drivers/pinctrl/Kconfig config PINCTRL_PALMAS bool "Pinctrl driver for the PALMAS Series MFD devices" depends on OF && MFD_PALMAS -Index: linux-4.0-rc4/drivers/pinctrl/Makefile -=================================================================== ---- linux-4.0-rc4.orig/drivers/pinctrl/Makefile -+++ linux-4.0-rc4/drivers/pinctrl/Makefile +--- a/drivers/pinctrl/Makefile ++++ b/drivers/pinctrl/Makefile @@ -18,6 +18,7 @@ obj-$(CONFIG_PINCTRL_BCM2835) += pinctrl obj-$(CONFIG_PINCTRL_BCM281XX) += pinctrl-bcm281xx.o obj-$(CONFIG_PINCTRL_FALCON) += pinctrl-falcon.o diff --git a/target/linux/oxnas/patches-4.0/340-oxnas-pcie.patch b/target/linux/oxnas/patches-4.0/340-oxnas-pcie.patch index a105f61740..63175cc984 100644 --- a/target/linux/oxnas/patches-4.0/340-oxnas-pcie.patch +++ b/target/linux/oxnas/patches-4.0/340-oxnas-pcie.patch @@ -1,7 +1,5 @@ -Index: linux-4.0-rc4/drivers/pci/host/Kconfig -=================================================================== ---- linux-4.0-rc4.orig/drivers/pci/host/Kconfig -+++ linux-4.0-rc4/drivers/pci/host/Kconfig +--- a/drivers/pci/host/Kconfig ++++ b/drivers/pci/host/Kconfig @@ -106,4 +106,9 @@ config PCI_VERSATILE bool "ARM Versatile PB PCI controller" depends on ARCH_VERSATILE @@ -12,10 +10,8 @@ Index: linux-4.0-rc4/drivers/pci/host/Kconfig + select PCIEPORTBUS + endmenu -Index: linux-4.0-rc4/drivers/pci/host/Makefile -=================================================================== ---- linux-4.0-rc4.orig/drivers/pci/host/Makefile -+++ linux-4.0-rc4/drivers/pci/host/Makefile +--- a/drivers/pci/host/Makefile ++++ b/drivers/pci/host/Makefile @@ -3,6 +3,7 @@ obj-$(CONFIG_PCI_DRA7XX) += pci-dra7xx.o obj-$(CONFIG_PCI_EXYNOS) += pci-exynos.o obj-$(CONFIG_PCI_IMX6) += pci-imx6.o diff --git a/target/linux/oxnas/patches-4.0/350-oxnas-reset.patch b/target/linux/oxnas/patches-4.0/350-oxnas-reset.patch index 0b0f0ae3c8..1cecd28dc7 100644 --- a/target/linux/oxnas/patches-4.0/350-oxnas-reset.patch +++ b/target/linux/oxnas/patches-4.0/350-oxnas-reset.patch @@ -1,7 +1,5 @@ -Index: linux-4.0-rc4/drivers/reset/Kconfig -=================================================================== ---- linux-4.0-rc4.orig/drivers/reset/Kconfig -+++ linux-4.0-rc4/drivers/reset/Kconfig +--- a/drivers/reset/Kconfig ++++ b/drivers/reset/Kconfig @@ -12,4 +12,9 @@ menuconfig RESET_CONTROLLER If unsure, say no. @@ -12,10 +10,8 @@ Index: linux-4.0-rc4/drivers/reset/Kconfig + source "drivers/reset/sti/Kconfig" + -Index: linux-4.0-rc4/drivers/reset/Makefile -=================================================================== ---- linux-4.0-rc4.orig/drivers/reset/Makefile -+++ linux-4.0-rc4/drivers/reset/Makefile +--- a/drivers/reset/Makefile ++++ b/drivers/reset/Makefile @@ -1,4 +1,5 @@ obj-$(CONFIG_RESET_CONTROLLER) += core.o +obj-$(CONFIG_RESET_CONTROLLER_OXNAS) += reset-ox820.o diff --git a/target/linux/oxnas/patches-4.0/400-oxnas-nand.patch b/target/linux/oxnas/patches-4.0/400-oxnas-nand.patch index 555b715501..c59da359ba 100644 --- a/target/linux/oxnas/patches-4.0/400-oxnas-nand.patch +++ b/target/linux/oxnas/patches-4.0/400-oxnas-nand.patch @@ -1,7 +1,5 @@ -Index: linux-4.0-rc4/drivers/mtd/nand/Kconfig -=================================================================== ---- linux-4.0-rc4.orig/drivers/mtd/nand/Kconfig -+++ linux-4.0-rc4/drivers/mtd/nand/Kconfig +--- a/drivers/mtd/nand/Kconfig ++++ b/drivers/mtd/nand/Kconfig @@ -530,4 +530,12 @@ config MTD_NAND_HISI504 help Enables support for NAND controller on Hisilicon SoC Hip04. @@ -15,10 +13,8 @@ Index: linux-4.0-rc4/drivers/mtd/nand/Kconfig + to the STATIC Unit. + endif # MTD_NAND -Index: linux-4.0-rc4/drivers/mtd/nand/Makefile -=================================================================== ---- linux-4.0-rc4.orig/drivers/mtd/nand/Makefile -+++ linux-4.0-rc4/drivers/mtd/nand/Makefile +--- a/drivers/mtd/nand/Makefile ++++ b/drivers/mtd/nand/Makefile @@ -45,6 +45,7 @@ obj-$(CONFIG_MTD_NAND_SOCRATES) += socr obj-$(CONFIG_MTD_NAND_TXX9NDFMC) += txx9ndfmc.o obj-$(CONFIG_MTD_NAND_NUC900) += nuc900_nand.o diff --git a/target/linux/oxnas/patches-4.0/500-oxnas-sata.patch b/target/linux/oxnas/patches-4.0/500-oxnas-sata.patch index c9b11e99d8..af5e66ff03 100644 --- a/target/linux/oxnas/patches-4.0/500-oxnas-sata.patch +++ b/target/linux/oxnas/patches-4.0/500-oxnas-sata.patch @@ -1,7 +1,5 @@ -Index: linux-4.0-rc4/drivers/ata/Kconfig -=================================================================== ---- linux-4.0-rc4.orig/drivers/ata/Kconfig -+++ linux-4.0-rc4/drivers/ata/Kconfig +--- a/drivers/ata/Kconfig ++++ b/drivers/ata/Kconfig @@ -401,6 +401,13 @@ config SATA_VITESSE If unsure, say N. @@ -16,10 +14,8 @@ Index: linux-4.0-rc4/drivers/ata/Kconfig comment "PATA SFF controllers with BMDMA" config PATA_ALI -Index: linux-4.0-rc4/drivers/ata/Makefile -=================================================================== ---- linux-4.0-rc4.orig/drivers/ata/Makefile -+++ linux-4.0-rc4/drivers/ata/Makefile +--- a/drivers/ata/Makefile ++++ b/drivers/ata/Makefile @@ -37,6 +37,7 @@ obj-$(CONFIG_SATA_SVW) += sata_svw.o obj-$(CONFIG_SATA_ULI) += sata_uli.o obj-$(CONFIG_SATA_VIA) += sata_via.o diff --git a/target/linux/oxnas/patches-4.0/800-oxnas-ehci.patch b/target/linux/oxnas/patches-4.0/800-oxnas-ehci.patch index 1272e3dde2..ea47d3bf0c 100644 --- a/target/linux/oxnas/patches-4.0/800-oxnas-ehci.patch +++ b/target/linux/oxnas/patches-4.0/800-oxnas-ehci.patch @@ -1,7 +1,5 @@ -Index: linux-4.0-rc4/drivers/usb/host/Kconfig -=================================================================== ---- linux-4.0-rc4.orig/drivers/usb/host/Kconfig -+++ linux-4.0-rc4/drivers/usb/host/Kconfig +--- a/drivers/usb/host/Kconfig ++++ b/drivers/usb/host/Kconfig @@ -306,6 +306,13 @@ config USB_OCTEON_EHCI USB 2.0 device support. All CN6XXX based chips with USB are supported. @@ -16,10 +14,8 @@ Index: linux-4.0-rc4/drivers/usb/host/Kconfig endif # USB_EHCI_HCD config USB_OXU210HP_HCD -Index: linux-4.0-rc4/drivers/usb/host/Makefile -=================================================================== ---- linux-4.0-rc4.orig/drivers/usb/host/Makefile -+++ linux-4.0-rc4/drivers/usb/host/Makefile +--- a/drivers/usb/host/Makefile ++++ b/drivers/usb/host/Makefile @@ -42,6 +42,7 @@ obj-$(CONFIG_USB_EHCI_HCD_AT91) += ehci- obj-$(CONFIG_USB_EHCI_MSM) += ehci-msm.o obj-$(CONFIG_USB_EHCI_TEGRA) += ehci-tegra.o diff --git a/target/linux/oxnas/patches-4.0/900-more-boards.patch b/target/linux/oxnas/patches-4.0/900-more-boards.patch index 77948c902c..ffc7618e3b 100644 --- a/target/linux/oxnas/patches-4.0/900-more-boards.patch +++ b/target/linux/oxnas/patches-4.0/900-more-boards.patch @@ -1,7 +1,5 @@ -Index: linux-4.0-rc4/arch/arm/boot/dts/Makefile -=================================================================== ---- linux-4.0-rc4.orig/arch/arm/boot/dts/Makefile -+++ linux-4.0-rc4/arch/arm/boot/dts/Makefile +--- a/arch/arm/boot/dts/Makefile ++++ b/arch/arm/boot/dts/Makefile @@ -429,7 +429,10 @@ dtb-$(CONFIG_ARCH_ORION5X) += \ orion5x-lacie-ethernet-disk-mini-v2.dtb \ orion5x-maxtor-shared-storage-2.dtb \ diff --git a/target/linux/oxnas/patches-4.0/999-libata-hacks.patch b/target/linux/oxnas/patches-4.0/999-libata-hacks.patch index 399d821c2c..504bbdb087 100644 --- a/target/linux/oxnas/patches-4.0/999-libata-hacks.patch +++ b/target/linux/oxnas/patches-4.0/999-libata-hacks.patch @@ -1,7 +1,5 @@ -Index: linux-4.0-rc4/drivers/ata/libata-core.c -=================================================================== ---- linux-4.0-rc4.orig/drivers/ata/libata-core.c -+++ linux-4.0-rc4/drivers/ata/libata-core.c +--- a/drivers/ata/libata-core.c ++++ b/drivers/ata/libata-core.c @@ -1586,6 +1586,14 @@ unsigned ata_exec_internal_sg(struct ata return AC_ERR_SYSTEM; } @@ -17,7 +15,7 @@ Index: linux-4.0-rc4/drivers/ata/libata-core.c /* initialize internal qc */ /* XXX: Tag 0 is used for drivers with legacy EH as some -@@ -4749,6 +4757,9 @@ struct ata_queued_cmd *ata_qc_new_init(s +@@ -4760,6 +4768,9 @@ struct ata_queued_cmd *ata_qc_new_init(s if (unlikely(ap->pflags & ATA_PFLAG_FROZEN)) return NULL; @@ -25,22 +23,20 @@ Index: linux-4.0-rc4/drivers/ata/libata-core.c + return NULL; + /* libsas case */ - if (!ap->scsi_host) { + if (ap->flags & ATA_FLAG_SAS_HOST) { tag = ata_sas_allocate_tag(ap); -@@ -4794,6 +4805,8 @@ void ata_qc_free(struct ata_queued_cmd * +@@ -4805,6 +4816,8 @@ void ata_qc_free(struct ata_queued_cmd * qc->tag = ATA_TAG_POISON; - if (!ap->scsi_host) + if (ap->flags & ATA_FLAG_SAS_HOST) ata_sas_free_tag(tag, ap); + if (ap->ops->qc_free) + ap->ops->qc_free(qc); } } -Index: linux-4.0-rc4/include/linux/libata.h -=================================================================== ---- linux-4.0-rc4.orig/include/linux/libata.h -+++ linux-4.0-rc4/include/linux/libata.h -@@ -893,6 +893,8 @@ struct ata_port_operations { +--- a/include/linux/libata.h ++++ b/include/linux/libata.h +@@ -903,6 +903,8 @@ struct ata_port_operations { void (*qc_prep)(struct ata_queued_cmd *qc); unsigned int (*qc_issue)(struct ata_queued_cmd *qc); bool (*qc_fill_rtf)(struct ata_queued_cmd *qc); @@ -49,7 +45,7 @@ Index: linux-4.0-rc4/include/linux/libata.h /* * Configuration and exception handling -@@ -983,6 +985,9 @@ struct ata_port_operations { +@@ -993,6 +995,9 @@ struct ata_port_operations { void (*phy_reset)(struct ata_port *ap); void (*eng_timeout)(struct ata_port *ap); |