- 30 5月, 2017 3 次提交
-
-
由 Linus Walleij 提交于
ata_host_alloc_pinfo() assigns the host pointer to the struct device * drvdata, do not assign it a second time. Signed-off-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NTejun Heo <tj@kernel.org>
-
由 Linus Walleij 提交于
ata_host_alloc_pinfo() assigns the host pointer to the struct device * drvdata, do not assign drv_data like this. Since ata_host_alloc_pinfo() is called after this site, the correct value is set eventually, but this assignment is just plain pointless. Signed-off-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NTejun Heo <tj@kernel.org>
-
由 Linus Walleij 提交于
ata_host_alloc_pinfo() assigns the host pointer to the struct device * drvdata, do not assign it a second time. Signed-off-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NTejun Heo <tj@kernel.org>
-
- 16 5月, 2017 3 次提交
-
-
由 Mauro Carvalho Chehab 提交于
The libata documentation is now using ReST. Update references to it to point to the new place. Signed-off-by: NMauro Carvalho Chehab <mchehab@s-opensource.com> Acked-by: NBartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Signed-off-by: NTejun Heo <tj@kernel.org>
-
由 Mauro Carvalho Chehab 提交于
Sphinx got confused with the markup identation: ./drivers/ata/libata-scsi.c:3402: ERROR: Unexpected indentation. No functional changes. Signed-off-by: NMauro Carvalho Chehab <mchehab@s-opensource.com> Signed-off-by: NTejun Heo <tj@kernel.org>
-
由 Tycho Andersen 提交于
The XPFO [1] patchset may unmap pages from physmap if they happened to be destined for userspace. If such a page is unmapped, it needs to be remapped. Rather than test if a page is in the highmem/xpfo unmapped state, Christoph suggested [2] that we simply always map the page. v2: * drop comment about bounce buffer * don't save IRQs before kmap/unmap * formatting [1]: https://lkml.org/lkml/2016/11/4/245 [2]: https://lkml.org/lkml/2016/11/4/253Suggested-and-reviewed-by: NChristoph Hellwig <hch@infradead.org> Signed-off-by: NTycho Andersen <tycho@docker.com> CC: Juerg Haefliger <juerg.haefliger@hpe.com> Signed-off-by: NTejun Heo <tj@kernel.org>
-
- 29 4月, 2017 2 次提交
-
-
由 Christoph Hellwig 提交于
This was already disabled a while ago because it caused I/O errors, and it's severly getting into the way of the discard / write zeroes rework. Signed-off-by: NChristoph Hellwig <hch@lst.de> Reviewed-by: NMartin K. Petersen <martin.petersen@oracle.com> Signed-off-by: NTejun Heo <tj@kernel.org>
-
由 Christoph Hellwig 提交于
The WRITE SAME to TRIM translation rewrites the DATA OUT buffer. While the SCSI code accomodates for this by passing a read-writable buffer userspace applications don't cater for this behavior. In fact it can be used to rewrite e.g. a readonly file through mmap and should be considered as a security fix. Signed-off-by: NChristoph Hellwig <hch@lst.de> Cc: stable@vger.kernel.org Reviewed-by: NMartin K. Petersen <martin.petersen@oracle.com> Signed-off-by: NTejun Heo <tj@kernel.org>
-
- 11 4月, 2017 1 次提交
-
-
由 Ondrej Zary 提交于
Commit 57e5568f ("sata_via: Implement hotplug for VT6421") adds hotplug IRQ handler for VT6421 but enables hotplug on all chips. This is a bug because it causes "irq xx: nobody cared" error on VT6420 when hot-(un)plugging a drive: [ 381.839948] irq 20: nobody cared (try booting with the "irqpoll" option) [ 381.840014] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 4.10.0-rc5+ #148 [ 381.840066] Hardware name: P4VM800/P4VM800, BIOS P1.60 05/29/2006 [ 381.840117] Call Trace: [ 381.840167] <IRQ> [ 381.840225] ? dump_stack+0x44/0x58 [ 381.840278] ? __report_bad_irq+0x14/0x97 [ 381.840327] ? handle_edge_irq+0xa5/0xa5 [ 381.840376] ? note_interrupt+0x155/0x1cf [ 381.840426] ? handle_edge_irq+0xa5/0xa5 [ 381.840474] ? handle_irq_event_percpu+0x32/0x38 [ 381.840524] ? handle_irq_event+0x1f/0x38 [ 381.840573] ? handle_fasteoi_irq+0x69/0xb8 [ 381.840625] ? handle_irq+0x4f/0x5d [ 381.840672] </IRQ> [ 381.840726] ? do_IRQ+0x2e/0x8b [ 381.840782] ? common_interrupt+0x2c/0x34 [ 381.840836] ? mwait_idle+0x60/0x82 [ 381.840892] ? arch_cpu_idle+0x6/0x7 [ 381.840949] ? do_idle+0x96/0x18e [ 381.841002] ? cpu_startup_entry+0x16/0x1a [ 381.841057] ? start_kernel+0x319/0x31c [ 381.841111] ? startup_32_smp+0x166/0x168 [ 381.841165] handlers: [ 381.841219] [<c12a7263>] ata_bmdma_interrupt [ 381.841274] Disabling IRQ #20 Seems that VT6420 can do hotplug too (there's no documentation) but the comments say that SCR register access (required for detecting hotplug events) can cause problems on these chips. For now, just keep hotplug disabled on anything other than VT6421. Signed-off-by: NOndrej Zary <linux@rainbow-software.org> Signed-off-by: NTejun Heo <tj@kernel.org>
-
- 30 3月, 2017 3 次提交
-
-
Clear IORDYINT, INTRSTAT and DMAERROR bits of BMISP register (value '1' needs to be written to the bit to clear it). Suggested-by: NSergei Shtylyov <sergei.shtylyov@cogentembedded.com> Acked-by: NSergei Shtylyov <sergei.shtylyov@cogentembedded.com> Acked-by: NTejun Heo <tj@kernel.org> Signed-off-by: NBartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Signed-off-by: NSekhar Nori <nsekhar@ti.com>
-
Disable IORDY Timer as the driver doesn't handle IORDY Timer interrupt anyway. Suggested-by: NSergei Shtylyov <sergei.shtylyov@cogentembedded.com> Acked-by: NSergei Shtylyov <sergei.shtylyov@cogentembedded.com> Acked-by: NTejun Heo <tj@kernel.org> Signed-off-by: NBartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Signed-off-by: NSekhar Nori <nsekhar@ti.com>
-
Add Palmchip BK3710 PATA controller driver. Acked-by: NSergei Shtylyov <sergei.shtylyov@cogentembedded.com> Acked-by: NTejun Heo <tj@kernel.org> Signed-off-by: NBartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Signed-off-by: NSekhar Nori <nsekhar@ti.com>
-
- 28 3月, 2017 1 次提交
-
-
由 Tejun Heo 提交于
This reverts commit 5946fdae. The original commit's assumption that the secondary port is unconnected turns out to be false. Signed-off-by: NTejun Heo <tj@kernel.org> Reported-by: NMarkku Pesonen <tourula@gmail.com> Fixes: 5946fdae ("pata_atiixp: Don't use unconnected secondary port on SB600/SB700") Cc: Darren Stevens <darren@stevens-zone.net>
-
- 24 3月, 2017 1 次提交
-
-
由 Bartosz Golaszewski 提交于
This SATA controller is quite similar to the one present on the DA850 SoC, but the PHY configuration is different and it supports two HBA ports. The IP suffers from the same PMP issue the DA850 does - if we enable PMP but don't use it - softreset fails. Appropriate workaround was implemented in this driver as well. Signed-off-by: NBartosz Golaszewski <bgolaszewski@baylibre.com> Signed-off-by: NTejun Heo <tj@kernel.org>
-
- 17 3月, 2017 1 次提交
-
-
由 Boris Brezillon 提交于
This driver is orphan since commit b2026f70 ("ARM: at91: remove at91sam9260/at91sam9g20 legacy board support"). Given that nobody cared adding DT support to it, it probably means it's no longer used and is thus a good candidate for removal. Signed-off-by: NBoris Brezillon <boris.brezillon@free-electrons.com> Acked-by: NBartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Acked-by: NNicolas Ferre <nicolas.ferre@microchip.com> Signed-off-by: NTejun Heo <tj@kernel.org>
-
- 14 3月, 2017 2 次提交
-
-
由 Jason Yan 提交于
Fixes the following sparse warning: drivers/ata/libata-core.c:4913:6: warning: symbol 'ata_sg_clean' was not declared. Should it be static? Signed-off-by: NJason Yan <yanaijie@huawei.com>
-
由 Geliang Tang 提交于
Use setup_deferrable_timer() instead of init_timer_deferrable() to simplify the code. Signed-off-by: NGeliang Tang <geliangtang@gmail.com> Signed-off-by: NTejun Heo <tj@kernel.org>
-
- 10 3月, 2017 1 次提交
-
-
由 Yuantian Tang 提交于
Sata ecc is controlled by only 1 bit which is 24bit in big-endian in ecc register. So only setting 24bit to disable sata ecc prevents other bits from being overwritten in ecc register. Signed-off-by: NTang Yuantian <andy.tang@nxp.com> Signed-off-by: NTejun Heo <tj@kernel.org>
-
- 08 3月, 2017 1 次提交
-
-
Both archs should work just fine with libata subsystem nowadays. Suggested-by: NChristoph Hellwig <hch@infradead.org> Signed-off-by: NBartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Signed-off-by: NTejun Heo <tj@kernel.org>
-
- 07 3月, 2017 4 次提交
-
-
由 Belen Sarabia 提交于
Delete error handling from the result of a call to platform_get_resource() when the value is immediately passed to devm_ioremap_resource(). Signed-off-by: NBelen Sarabia <belensarabia@gmail.com> Signed-off-by: NTejun Heo <tj@kernel.org>
-
由 Tejun Heo 提交于
ata_sff_qc_issue() expects upper layers to never issue commands on a command protocol that it doesn't implement. While the assumption holds fine with the usual IO path, nothing filters based on the command protocol in the passthrough path (which was added later), allowing the warning to be tripped with a passthrough command with the right (well, wrong) protocol. Failing with AC_ERR_SYSTEM is the right thing to do anyway. Remove the unnecessary WARN. Reported-by: NDmitry Vyukov <dvyukov@google.com> Link: http://lkml.kernel.org/r/CACT4Y+bXkvevNZU8uP6X0QVqsj6wNoUA_1exfTSOzc+SmUtMOA@mail.gmail.comSigned-off-by: NTejun Heo <tj@kernel.org>
-
由 Gwendal Grignou 提交于
Without this patch, failed probe would not free resources like irq. ata port tdev object currently hold a reference to the ata port object. Therefore the ata port object release function will not get called until the ata_tport_release is called. But that would never happen, releasing the last reference of ata port dev is done by scsi_host_release, which is called by ata_host_release when the ata port object is released. The ata device objects actually do not need to explicitly hold a reference to their real counterpart, given the transport objects are the children of these objects and device_add() is call for each child. We know the parent will not be deleted until we call the child's device_del(). Reported-by: NMatthew Whitehead <tedheadster@gmail.com> Tested-by: NMatthew Whitehead <tedheadster@gmail.com> Suggested-by: NTejun Heo <tj@kernel.org> Signed-off-by: NGwendal Grignou <gwendal@chromium.org> Signed-off-by: NTejun Heo <tj@kernel.org>
-
由 Bhumika Goyal 提交于
Declare of_device_id structures as const as they are either passed to the macro MODULE_DEVICE_TABLE or stored in the of_match_table field of a device_driver structure. This field is of type const, so of_device_id structures having this property can be made const too. Cross compiled the files drivers/ata/pata_macio.c and drivers/ata/pata_mpc52xx.c for powerpc architecture. Signed-off-by: NBhumika Goyal <bhumirks@gmail.com> Signed-off-by: NTejun Heo <tj@kernel.org>
-
- 28 2月, 2017 1 次提交
-
-
由 Masahiro Yamada 提交于
Fix typos and add the following to the scripts/spelling.txt: followings||following While we are here, add a missing colon in the boilerplate in DT binding documents. The "you SoC" in allwinner,sunxi-pinctrl.txt was fixed as well. I reworded "as the followings:" to "as follows:" for drivers/usb/gadget/udc/renesas_usb3.c. Link: http://lkml.kernel.org/r/1481573103-11329-32-git-send-email-yamada.masahiro@socionext.comSigned-off-by: NMasahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
- 24 2月, 2017 1 次提交
-
-
由 Christoph Hellwig 提交于
All but one caller want the decoded sense header, so offer the existing __scsi_execute helper as the public scsi_execute API to simply the callers. Signed-off-by: NChristoph Hellwig <hch@lst.de> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
- 07 2月, 2017 1 次提交
-
-
由 Christoph Hellwig 提交于
Instead define the timeout behavior purely based on the host_template eh_timed_out method and wire up the existing transport implementations in the host templates. This also clears up the confusion that the transport template method overrides the host template one, so some drivers have to re-override the transport template one. Signed-off-by: NChristoph Hellwig <hch@lst.de> Reviewed-by: NHannes Reinecke <hare@suse.com> Reviewed-by: NTyrel Datwyler <tyreld@linux.vnet.ibm.com> Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
-
- 01 2月, 2017 1 次提交
-
-
由 Christoph Hellwig 提交于
This can be used to check for fs vs non-fs requests and basically removes all knowledge of BLOCK_PC specific from the block layer, as well as preparing for removing the cmd_type field in struct request. Signed-off-by: NChristoph Hellwig <hch@lst.de> Signed-off-by: NJens Axboe <axboe@fb.com>
-
- 31 1月, 2017 6 次提交
-
-
由 Bartosz Golaszewski 提交于
All platforms using this driver now register the SATA refclk. Remove the hardcoded default value from the driver and instead read the rate of the external clock and calculate the required MPY value from it. Signed-off-by: NBartosz Golaszewski <bgolaszewski@baylibre.com> Acked-by: NTejun Heo <tj@kernel.org> [nsekhar@ti.com: fix checkpatch warning about an unneeded else] Signed-off-by: NSekhar Nori <nsekhar@ti.com>
-
由 Bartosz Golaszewski 提交于
We have a use case with the da850 SATA controller where at PLL0 frequency of 456MHz (needed to properly service the LCD controller) the chip becomes unstable and the hardreset operation is ignored the first time 50% of times. The sata core driver already retries to resume the link because some controllers ignore writes to the SControl register, but just retrying the resume operation doesn't work - we need to issue he phy/wake reset again to make it work. Reimplement ahci_hardreset() in the driver and poke the controller a couple times before really giving up. Signed-off-by: NBartosz Golaszewski <bgolaszewski@baylibre.com> Acked-by: NTejun Heo <tj@kernel.org> Signed-off-by: NSekhar Nori <nsekhar@ti.com>
-
由 Bartosz Golaszewski 提交于
We need a way to retrieve the information about the online state of the link in the ahci-da850 driver. Create a new function: ahci_do_hardreset() which is called from ahci_hardreset() for backwards compatibility, but has an additional argument: 'online' - which can be used to check if the link is online after this function returns. The new routine will be used in the ahci-da850 driver to avoid code duplication when implementing a workaround for tha da850 SATA controller quirk/instability. Signed-off-by: NBartosz Golaszewski <bgolaszewski@baylibre.com> Acked-by: NTejun Heo <tj@kernel.org> Signed-off-by: NSekhar Nori <nsekhar@ti.com>
-
由 Bartosz Golaszewski 提交于
There's an issue with the da850 SATA controller: if port multiplier support is compiled in, but we're connecting the drive directly to the SATA port on the board, the drive can't be detected. To make SATA work on the da850-lcdk board: first try to softreset with pmp - if the operation fails with -EBUSY, retry without pmp. Signed-off-by: NBartosz Golaszewski <bgolaszewski@baylibre.com> Acked-by: NTejun Heo <tj@kernel.org> Signed-off-by: NSekhar Nori <nsekhar@ti.com>
-
由 Bartosz Golaszewski 提交于
We're using device tree for da850-lcdk. Add the match table to allow to probe the driver. Signed-off-by: NBartosz Golaszewski <bgolaszewski@baylibre.com> Acked-by: NTejun Heo <tj@kernel.org> Signed-off-by: NSekhar Nori <nsekhar@ti.com>
-
由 Bartosz Golaszewski 提交于
In preparation for using two clocks in the driver (the sysclk2-based clock and the external REFCLK), check if we got the functional clock after calling ahci_platform_get_resources(). If not, retry calling clk_get() with con_id specified. Signed-off-by: NBartosz Golaszewski <bgolaszewski@baylibre.com> Acked-by: NTejun Heo <tj@kernel.org> Signed-off-by: NSekhar Nori <nsekhar@ti.com>
-
- 28 1月, 2017 1 次提交
-
-
由 Christoph Hellwig 提交于
And require all drivers that want to support BLOCK_PC to allocate it as the first thing of their private data. To support this the legacy IDE and BSG code is switched to set cmd_size on their queues to let the block layer allocate the additional space. Signed-off-by: NChristoph Hellwig <hch@lst.de> Signed-off-by: NJens Axboe <axboe@fb.com>
-
- 25 1月, 2017 1 次提交
-
-
由 Kefeng Wang 提交于
Using better of_property_read_u32() than generic of_get_property(). Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Cc: Hans de Goede <hdegoede@redhat.com> Cc: Tejun Heo <tj@kernel.org> Signed-off-by: NKefeng Wang <wangkefeng.wang@huawei.com> Signed-off-by: NTejun Heo <tj@kernel.org>
-
- 24 1月, 2017 3 次提交
-
-
由 Darren Stevens 提交于
The SB600 and SB700 southbridge chips from ATI/AMD only have connections for the primary IDE port. As these chips have unique pci device ID's use these to mark the secondary port as 'dummy' Signed-off-by: NDarren Stevens <darren@stevens-zone.net> Signed-off-by: NTejun Heo <tj@kernel.org>
-
由 Darren Stevens 提交于
libata-sff.c checks for legacy mode by testing if both primary and secondary ports on a controller are in legacy mode and selects legacy if either one is. However on some south bridge chips (e.g AMD SB600/SB700) the secondary port is not wired, and when it is disabled by setting the disable bit in the PCI header it appears as a fixed legacy port. Prevent incorrect detection by not testing ports that are marked as 'dummy' tj: Addressed Sergei's review points. Other style edits. Signed-off-by: NDarren Stevens <darren@stevens-zone.net> Signed-off-by: NTejun Heo <tj@kernel.org> Cc: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
-
由 Tejun Heo 提交于
@t1 and @t2i are calculated along with @T2 but never used. Drop them. Signed-off-by: NTejun Heo <tj@kernel.org> Reported-by: NDavid Binderman <dcb314@hotmail.com>
-
- 20 1月, 2017 2 次提交
-
-
由 Tang Yuantian 提交于
Ls2088a is new introduced arm-based soc with sata support with following features: 1. Complies with the serial ATA 3.0 specification and the AHCI 1.3.1 specification 2. Contains a high-speed descriptor-based DMA controller 3. Supports the following: a. Speeds of 1.5 Gb/s (first-generation SATA), 3 Gb/s (second-generation SATA), and 6 Gb/s (third-generation SATA) b. FIS-based switching c. Native command queuing (NCQ) commands d. Port multiplier operation e. Asynchronous notification f. SATA BIST mode Signed-off-by: NTang Yuantian <yuantian.tang@nxp.com> Signed-off-by: NTejun Heo <tj@kernel.org>
-
由 Tang Yuantian 提交于
For ls1021a, and armv8 chasis 2 socs, sata ecc must be disabled. If ecc register is not found in sata node in dts, report error. This is a chip erratum described as bellow: The Read DMA operations get early termination indication from the controller. This issue is observed as CRC error in the status registers. The issue is due to address collision at address 0 in the dual port memory. The read is a dummy read to flush out the header, but due to collision the controller logs the mbit error reported by the ECC check logic. This results in the early termination of the Read DMA operation by the controller. The issue happens to all the interface speeds(GEN1/2/3) for all the products. Workaround: Disable ECC feature on those platforms. Signed-off-by: NTang Yuantian <yuantian.tang@nxp.com> Signed-off-by: NTejun Heo <tj@kernel.org>
-