aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | [SG] Get rid of __sg_mark_end()Jens Axboe2007-11-028-19/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | sg_mark_end() overwrites the page_link information, but all users want __sg_mark_end() behaviour where we just set the end bit. That is the most natural way to use the sg list, since you'll fill it in and then mark the end point. So change sg_mark_end() to only set the termination bit. Add a sg_magic debug check as well, and clear a chain pointer if it is set. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
| * | | | cleanup asm/scatterlist.h includesAdrian Bunk2007-11-0235-35/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Not architecture specific code should not #include <asm/scatterlist.h>. This patch therefore either replaces them with #include <linux/scatterlist.h> or simply removes them if they were unused. Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
| * | | | SG: Make sg_init_one() use general table init functionsJens Axboe2007-11-021-22/+18
| |/ / / | | | | | | | | | | | | | | | | | | | | Don't open code sg_init_one(), make it reuse sg_init_table(). Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
* | | | Merge branch 'v2.6.24-rc1-lockdep' of ↵Linus Torvalds2007-11-0310-15/+61
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/peterz/linux-2.6-lockdep * 'v2.6.24-rc1-lockdep' of git://git.kernel.org/pub/scm/linux/kernel/git/peterz/linux-2.6-lockdep: lockdep: fix a typo in the __lock_acquire comment sched: fix unconditional irq lock lockdep: fixup irq tracing
| * | | | lockdep: fix a typo in the __lock_acquire commentGautham R Shenoy2007-10-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix a typo in the __lock_acquire comment. Signed-off-by: Gautham R Shenoy <ego@in.ibm.com> Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Signed-off-by: Ingo Molnar <mingo@elte.hu>
| * | | | sched: fix unconditional irq lockPeter Zijlstra2007-10-251-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Lockdep noticed that this lock can also be taken from hardirq context, and can thus not unconditionally disable/enable irqs. WARNING: at kernel/lockdep.c:2033 trace_hardirqs_on() [show_trace_log_lvl+26/48] show_trace_log_lvl+0x1a/0x30 [show_trace+18/32] show_trace+0x12/0x20 [dump_stack+22/32] dump_stack+0x16/0x20 [trace_hardirqs_on+405/416] trace_hardirqs_on+0x195/0x1a0 [_read_unlock_irq+34/48] _read_unlock_irq+0x22/0x30 [sched_debug_show+2615/4224] sched_debug_show+0xa37/0x1080 [show_state_filter+326/368] show_state_filter+0x146/0x170 [sysrq_handle_showstate+10/16] sysrq_handle_showstate+0xa/0x10 [__handle_sysrq+123/288] __handle_sysrq+0x7b/0x120 [handle_sysrq+40/64] handle_sysrq+0x28/0x40 [kbd_event+1045/1680] kbd_event+0x415/0x690 [input_pass_event+206/208] input_pass_event+0xce/0xd0 [input_handle_event+170/928] input_handle_event+0xaa/0x3a0 [input_event+95/112] input_event+0x5f/0x70 [atkbd_interrupt+434/1456] atkbd_interrupt+0x1b2/0x5b0 [serio_interrupt+59/128] serio_interrupt+0x3b/0x80 [i8042_interrupt+263/576] i8042_interrupt+0x107/0x240 [handle_IRQ_event+40/96] handle_IRQ_event+0x28/0x60 [handle_edge_irq+175/320] handle_edge_irq+0xaf/0x140 [do_IRQ+64/128] do_IRQ+0x40/0x80 [common_interrupt+46/52] common_interrupt+0x2e/0x34 Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Signed-off-by: Ingo Molnar <mingo@elte.hu>
| * | | | lockdep: fixup irq tracingPeter Zijlstra2007-10-258-12/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ensure we fixup the IRQ state before we hit any locking code. Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Signed-off-by: Ingo Molnar <mingo@elte.hu>
* | | | | Merge master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh64-2.6Linus Torvalds2007-11-036-182/+154
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh64-2.6: sh64: Update defconfigs. sh64: fix dma_cache_sync() compilation sh64: Move DMA macros from pci.h to scatterlist.h.
| * | | | | sh64: Update defconfigs.Paul Mundt2007-11-023-171/+142
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | sh64: fix dma_cache_sync() compilationAdrian Bunk2007-10-301-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes the following compile error caused by commit 622a9edd919de98ef59571ae6c40c7458244e3f2: <-- snip --> ... CC init/main.o In file included from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/dma-mapping.h:52, from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/dmaengine.h:29, from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/skbuff.h:29, from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/netlink.h:155, from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/genetlink.h:4, from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/net/genetlink.h:4, from /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/taskstats_kern.h:12, from /home/bunk/linux/kernel-2.6/git/linux-2.6/init/main.c:46: include2/asm/dma-mapping.h: In function 'dma_cache_sync': include2/asm/dma-mapping.h:46: error: invalid operands to binary & (have 'void *' and 'int') make[2]: *** [init/main.o] Error 1 <-- snip --> Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | sh64: Move DMA macros from pci.h to scatterlist.h.Robert P. J. Day2007-10-302-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to be more consistent with other architectures, move two DMA-related scatterlist macros from pci.h to scatterlist.h. Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* | | | | | Merge master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6Linus Torvalds2007-11-0324-387/+390
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6: (24 commits) sh: Update r7785rp defconfig. sh: mach-type updates. sh: Fix up r7780rp highlander CF access size. sh: Terminate .eh_frame in VDSO with a 4-byte 0. sh: Correct SUBARCH matching. sh: Decouple 4k and soft/hardirq stacks. sh: Fix optimized __copy_user() movca.l usage. sh: Clean up SR.RB Kconfig mess. sh: Kill off dead ipr_irq_demux(). sh: Make SH7750 oprofile compile again. sh: Provide a __read_mostly section wrapper. sh: linker script tidying. sh: Move zero page param defs somewhere sensible. sh: Use generic SMP_CACHE_BYTES/L1_CACHE_ALIGN. sh: Kill off legacy embedded ramdisk section. sh: Fix up early mem cmdline parsing. sh: Enable USBF on MS7722SE. sh: Add resource of USBF for SH7722. maple: Fix maple bus compiler warning sh: fix zImage build with >=binutils-2.18 ...
| * | | | | | sh: Update r7785rp defconfig.Paul Mundt2007-11-021-198/+101
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | | sh: mach-type updates.Paul Mundt2007-11-021-8/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds in the x3proto and magicpanelr2 mach types, plugs in highlander and rts7751r2d groups, and also hooks up the r2d subtypes. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | | sh: Fix up r7780rp highlander CF access size.Paul Mundt2007-11-021-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | R7780RP can't do byte-sized accesses to CF, so needs to do word sized access with low-byte masking. This same problem exists on older versions of the R2D, with the same workaround having been implemented in 43f4b8c7578b928892b6f01d374346ae14e5eb70 there. Follow that change for the highlander boards. This does not impact R7780MP or SH7785 based Highlander modules. If you're unfortunate enough to be stuck with an R7780RP, this patch is for you! Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | | sh: Terminate .eh_frame in VDSO with a 4-byte 0.Kaz Kojima2007-11-021-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's assumed that .eh_frame is terminated with 4-byte 0 in shared libraries and executable. It seems to be the case for VDSOs too. Without this terminator, I saw failures when unwinding from VDSO, though I don't know how other architectures handle this issue. For the normal libs, crtendS.o gives this terminator. We can use such terminating objects. Or we can add a 4-byte 0 with modifying the linker script like as the patch below. Signed-off-by: Kaz Kojima <kkojima@rr.iij4u.or.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | | sh: Correct SUBARCH matching.Paul Mundt2007-11-021-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When configuring the kernel natively the uname matching is off, so fix up the uname mangling to get the proper SUBARCH. Needs an explicit range so that SH-5 doesn't break. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | | sh: Decouple 4k and soft/hardirq stacks.Paul Mundt2007-11-023-5/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While using separate IRQ stacks can cut down on stack consumption, many users can also use 4k stacks directly without the additional need of separate stacks for soft and hardirqs. With this split, we support the same rationale for 4KSTACKS as m68knommu, with the IRQSTACKS abstraction as per ppc64. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | | sh: Fix optimized __copy_user() movca.l usage.Stuart Menefy2007-11-021-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | movca.l is restricted to SH-4 and up only, though compilers that are unable to support ISA tuning (especially older versions of binutils) will happily compile in the bogus opcode on older parts. Conditionalize it to fix SH-3 regressions noted by Kristoffer. Signed-off-by: Stuart Menefy <stuart.menefy@st.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | | sh: Clean up SR.RB Kconfig mess.Paul Mundt2007-10-311-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CPU_HAS_SR_RB is selected by both CPU_SH3 and CPU_SH4, so having a dependency and default y on those additionally doesn't make much sense. The select also has to be special cased for CPUs that don't support this. This is also something that has been abused too much as a result of being user-visible, hence the addition of the select in the first place. So just kill the user-visibility entirely while we're at it. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | | sh: Kill off dead ipr_irq_demux().Paul Mundt2007-10-311-9/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | | sh: Make SH7750 oprofile compile again.Paul Mundt2007-10-301-15/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Converts from the profile notifier to the timer hook. Follows the generic timer interrupt-based change. This really wants to be converted to perfmon.. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | | sh: Provide a __read_mostly section wrapper.Paul Mundt2007-10-301-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | | sh: linker script tidying.Paul Mundt2007-10-301-93/+104
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some cleanups to the SH linker script. This reorders some of the data sections for more optimal placement, general tabification, and plugging in omitted generic definitions. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | | sh: Move zero page param defs somewhere sensible.Paul Mundt2007-10-302-16/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Follows s390 and others. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | | sh: Use generic SMP_CACHE_BYTES/L1_CACHE_ALIGN.Paul Mundt2007-10-302-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | | sh: Kill off legacy embedded ramdisk section.Paul Mundt2007-10-302-22/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the SH kernel used to support embedding a ramdisk in the pre-initramfs days it was placed in a special section and made to look like a regular initrd. Since that was removed ages ago, kill off the remaining cruft that was missed. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | | sh: Fix up early mem cmdline parsing.Paul Mundt2007-10-301-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | memory_end was being clobbered by whatever the kernel config had specified, rather than obeying the setup option. Fix this up so that memory_end is only initialized if nothing has been set on the command line. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | | sh: Enable USBF on MS7722SE.Yoshihiro Shimoda2007-10-301-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | | sh: Add resource of USBF for SH7722.Yoshihiro Shimoda2007-10-301-0/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | | maple: Fix maple bus compiler warningAdrian McMenamin2007-10-301-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The uevent API has changed from 2.6.22 and this patch eliminates annoying compiler errors Signed off by: Adrian McMenamin <adrian@mcmen.demon.co.uk> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | | sh: fix zImage build with >=binutils-2.18Manuel Lauss2007-10-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Starting with binutils somewhere around 2.17.50.14 the vmlinux file contains a ".note.gnu.build-id" section which doesn't get removed when the zImage is built; resulting in a 2GB intermediate file and a broken zImage. Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | | sh: ARRAY_SIZE() cleanupAlejandro Martinez Ruiz2007-10-301-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I'm converting most array size calculations under arch/ to use the ARRAY_SIZE() macro. This is the (tiny) patch for sh. Signed-off-by: Alejandro Martinez Ruiz <alex@flawedcode.org> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | | sh: Correct pte_page() breakage.Paul Mundt2007-10-302-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As noted by David: pte_page() is a macro defined as follows; include/asm-sh/pgtable.h #define pte_page(x) phys_to_page(pte_val(x)&PTE_PHYS_MASK) include/asm-sh/page.h #define phys_to_page(phys) (pfn_to_page(phys >> PAGE_SHIFT)) So as you can see the phys_to_page() macro doesn't wrap the 'phys' parameter in parentheses so we end up with; pte_val(x)&PTE_PHYS_MASK >> PAGE_SHIFT Which is not what we wanted as '>>' has a higher precedence than bitwise AND. I dug into the git repository and I believe this bug was added with this commit (104b8deaa5c0144cccfc7d914413ff80c7176af1); 2006-03-27 KAMEZAWA Hiroyuki [PATCH] unify pfn_to_page: sh pfn_to_page -#define phys_to_page(phys) (mem_map + (((phys)-__MEMORY_START) >> PAGE_SHIFT)) -#define page_to_phys(page) (((page - mem_map) << PAGE_SHIFT) + __MEMORY_START) +#define phys_to_page(phys) (pfn_to_page(phys >> PAGE_SHIFT)) +#define page_to_phys(page) (page_to_pfn(page) << PAGE_SHIFT) Reported-by: David ADDISON <david.addison@st.com> Reported-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | | sh: Clean up Kconfig entry for Dreamcast.Adrian McMenamin2007-10-301-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove reference to out of date/rotting websites. Signed-off-by: Adrian McMenamin <adrian@mcmen.demon.co.uk> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | | | | sh: add support for ax88796 and 93cx6 to highlander boardsMagnus Damm2007-10-301-0/+40
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for the ax88796 driver on highlander boards. Implemented using the 93cx6 EEPROM support introduced by commit-id 89e536a190f90d038bae7905a0c582cb7089b739. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* | | | | | Merge branch 'upstream-linus' of ↵Linus Torvalds2007-11-036-206/+149
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev * 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev: (23 commits) libata: don't configure downstream links faster than the upstream link libata: request PHY speed configuration on SControl access failure libata: consider errors not associated with commands for speed down libata: more robust reset failure handling libata: cosmetic clean up / reorganization of ata_eh_reset() libata: fix timing computation in ata_eh_reset() libata: increase 128 KB / cmd limit for ATAPI tape drives sata_promise: fix endianess bug in ASIC PRD bug workaround libata: fix docbook make ata_scsi_lpm_get() static libata: suppress two warnings ata/sata_fsl: Remove ata_scsi_suspend/resume callbacks ata/sata_fsl: Remove sending LOG EXT command in sata_fsl_softreset() ata/sata_fsl: Move MPC8315DS link speed limit workaround to specific ifdef ata/sata_fsl: cleanup style problem ata/sata_fsl: remove unneeded sata_fsl_hardreset() ata/sata_fsl: remove unneeded on-stack copy of FIS ata/sata_fsl: cleanup needless casts to/from void __iomem * ata/sata_fsl: Remove unnecessary SCR cases ata/sata_fsl: Kill ata_sg_is_last() ...
| * | | | | | libata: don't configure downstream links faster than the upstream linkTejun Heo2007-11-031-6/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There's nothing to be gained by configuring downstream links faster than the upstream link and such configurations cause problems on certain PMPs. Limit downstream link speed by the upstream link speed. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * | | | | | libata: request PHY speed configuration on SControl access failureTejun Heo2007-11-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In sata_set_spd_needed(), if SControl read failed, it returned 0 and skipped PHY speed configuration. However, if SControl access fails, it's far more logical to request PHY speed configuration. Reverse the logic. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * | | | | | libata: consider errors not associated with commands for speed downTejun Heo2007-11-031-6/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | libata EH used to ignore errors not associated with commands when determining whether speed down is necessary or not. This leads to the following problems. * Errors not associated with commands can occur indefinitely without libata EH taking corrective actions. * Upstream link errors don't trigger speed down when PMP is attached to it and commands issued to downstream device trigger errors on the upstream link. This patch makes ata_eh_link_autopsy() consider errors not associated with command for speed down. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * | | | | | libata: more robust reset failure handlingTejun Heo2007-11-031-9/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reset failure is a critical error. It results in disabling the link requiring user intervention to re-enable it. Make reset failure handling more robust such that libata EH doesn't give up too early. * Temporary glitches during hardreset may lead to classification failure when there's no softreset available. Retry instead of giving up. * Initial softreset or follow up softreset may fail classification. Move classification error handling block out of followup softreset block such that both cases are handled and retry instead of giving up. Also, on the last try, give ATA class a blind shot. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * | | | | | libata: cosmetic clean up / reorganization of ata_eh_reset()Tejun Heo2007-11-031-56/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clean up and reorganize ata_eh_reset() to ease further changes. * Cache ARRAY_SIZE(ata_eh_reset_timeouts) in @max_tries. * Cache link->flags in @lflags. * Move failure handling block to the end of the function and unnest both success and failure handling blocks. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * | | | | | libata: fix timing computation in ata_eh_reset()Tejun Heo2007-11-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As jiffies changes asynchronously, it needs to be cached if unchanging timestamp is needed. The code in ata_eh_reset() intended to do that with @now but never actually did it. Fix it. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * | | | | | libata: increase 128 KB / cmd limit for ATAPI tape drivesTony Battersby2007-11-032-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commands sent to ATAPI tape drives via the SCSI generic (sg) driver are limited in the amount of data that they can transfer by the max_sectors value. The max_sectors value is currently calculated according to the command set for disk drives, which doesn't apply to tape drives. The default max_sectors value of 256 limits ATAPI tape drive commands to 128 KB. This patch against 2.6.24-rc1 increases the max_sectors value for tape drives to 65535, which permits tape drive commands to transfer just under 32 MB. Tested with a SuperMicro PDSME motherboard, AHCI, and a Sony SDX-570V SATA tape drive. Note that some of the chipset drivers also set their own max_sectors value, which may override the value set in libata-core. I don't have any of these chipsets to test, so I didn't go messing with them. Also, ATAPI devices other than tape drives may benefit from similar changes, but I have only tape drives and disk drives to test. Signed-off-by: Tony Battersby <tonyb@cybernetics.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * | | | | | sata_promise: fix endianess bug in ASIC PRD bug workaroundMikael Pettersson2007-11-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The original workaround for the Promise ASIC PRD bug contained an endianess bug which I failed to detect: the adjustment of the last PRD entry's length field applied host arithmetic to little-endian data, which is incorrect on big-endian machines. We have the length available in host-endian format, so do the adjustment on host-endian data and then convert and store it in the PRD entry's little-endian data field. Thanks to an anonymous reviewer for detecting this bug. Signed-off-by: Mikael Pettersson <mikpe@it.uu.se> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * | | | | | libata: fix docbookStephen Hemminger2007-11-031-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix docbook format in the comments. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * | | | | | make ata_scsi_lpm_get() staticAdrian Bunk2007-11-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ata_scsi_lpm_get() can become static. Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * | | | | | libata: suppress two warningsStephen Rothwell2007-11-031-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | drivers/ata/libata-core.c:768: warning: 'ata_lpm_enable' defined but not used drivers/ata/libata-core.c:784: warning: 'ata_lpm_disable' defined but not used Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * | | | | | ata/sata_fsl: Remove ata_scsi_suspend/resume callbacksashish kalra2007-11-031-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: ashish kalra <ashish.kalra@freescale.com> Signed-off-by: Li Yang <leoli@freescale.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
| * | | | | | ata/sata_fsl: Remove sending LOG EXT command in sata_fsl_softreset()ashish kalra2007-11-031-70/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: ashish kalra <ashish.kalra@freescale.com> Signed-off-by: Li Yang <leoli@freescale.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>