* [PATCH 2/2] sh: Add sh_io_port_base check in __ioport_map function
@ 2011-03-27 4:31 Nobuhiro Iwamatsu
2011-03-27 6:37 ` Daniel Palmer
` (4 more replies)
0 siblings, 5 replies; 6+ messages in thread
From: Nobuhiro Iwamatsu @ 2011-03-27 4:31 UTC (permalink / raw)
To: linux-sh
sh_io_port_base is initialized with -1.
When user use sh_io_port_base, IO port address -1 slips off.
This revise it if sh_io_port_base was set -1.
Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
---
arch/sh/kernel/ioport.c | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/arch/sh/kernel/ioport.c b/arch/sh/kernel/ioport.c
index e3ad610..30937e9 100644
--- a/arch/sh/kernel/ioport.c
+++ b/arch/sh/kernel/ioport.c
@@ -19,6 +19,10 @@ void __iomem *__ioport_map(unsigned long addr, unsigned int size)
if (sh_mv.mv_ioport_map)
return sh_mv.mv_ioport_map(addr, size);
+ /* Don't use sh_io_port_base */
+ if (sh_io_port_base = -1)
+ return (void __iomem *)addr;
+
return (void __iomem *)(addr + sh_io_port_base);
}
EXPORT_SYMBOL(__ioport_map);
--
1.7.4.1
^ permalink raw reply related [flat|nested] 6+ messages in thread* Re: [PATCH 2/2] sh: Add sh_io_port_base check in __ioport_map function
2011-03-27 4:31 [PATCH 2/2] sh: Add sh_io_port_base check in __ioport_map function Nobuhiro Iwamatsu
@ 2011-03-27 6:37 ` Daniel Palmer
2011-03-27 7:45 ` Nobuhiro Iwamatsu
` (3 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: Daniel Palmer @ 2011-03-27 6:37 UTC (permalink / raw)
To: linux-sh
Hi,
This patch seems to correct my Landisk HDL-??? board from accessing the
wrong address in 2.6.38 in the pata_artop module;
It was accessing 0x13FF when the IO port for the PATA interface seems to
be at 0x1400. However it still creates an oops.
pci mapping:
[ 0.068000] pci 0000:00:01.0: BAR 4: assigned [io 0x1400-0x140f]
[ 0.068000] pci 0000:00:01.0: BAR 4: set to [io 0x1400-0x140f] (PCI
address [0x1400-0x140f])
vanilla 2.6.38
[ 21.120000] Unable to handle kernel paging request at virtual address
000013ff
[ 21.208000] pc = c00fa28e
[ 21.240000] *pde = 00000000
[ 21.272000] Oops: 0000 [#1]
[ 21.272000] last sysfs file:
[ 21.272000] Modules linked in: pata_artop(+) libata ext3 mbcache jbd
[ 21.272000]
[ 21.272000] Pid : 819, Comm: insmod
[ 21.272000] CPU : 0 Not tainted (2.6.38dgp #1)
[ 21.272000]
[ 21.272000] PC is at artop_init_one+0xee/0x1e0 [pata_artop]
[ 21.272000] PR is at artop_init_one+0xee/0x1e0 [pata_artop]
[ 21.272000] PC : c00fa28e SP : 8f837e58 SR : 40008001 TEA : 000013ff
[ 21.272000] R0 : 000013ff R1 : 8c2dd098 R2 : 00000001 R3 : 00001000
[ 21.272000] R4 : 00001400 R5 : 00000001 R6 : 00000005 R7 : 00000005
[ 21.272000] R8 : 8f837e58 R9 : 8fc54940 R10 : c00fa81c R11 : 8fc54940
[ 21.272000] R12 : 8c003a80 R13 : 8c17f5c0 R14 : 004ae284
[ 21.272000] MACH: 00000099 MACL: 000000cd GBR : 0051c470 PR : c00fa28e
[ 21.272000]
[ 21.272000] Call trace:
[ 21.272000] [<8c14632a>] local_pci_probe+0x4a/0x120
[ 21.272000] [<8c003a80>] arch_local_save_flags+0x0/0x20
[ 21.272000] [<8c003a40>] arch_local_irq_restore+0x0/0x40
[ 21.272000] [<8c12ea50>] kobject_get+0x10/0x20
[ 21.272000] [<8c146862>] pci_device_probe+0x62/0xa0
[ 21.272000] [<8c003a80>] arch_local_save_flags+0x0/0x20
[ 21.272000] [<8c17a8a4>] driver_probe_device+0xa4/0x220
[ 21.272000] [<8c003a40>] arch_local_irq_restore+0x0/0x40
[ 21.272000] [<8c17aaa6>] __driver_attach+0x86/0xa0
[ 21.272000] [<8c258540>] mutex_lock+0x0/0x60
[ 21.272000] [<8c179f4e>] bus_for_each_dev+0x4e/0x80
[ 21.272000] [<8c251880>] klist_next+0x0/0xe0
[ 21.272000] [<8c17aa20>] __driver_attach+0x0/0xa0
[ 21.272000] [<8c179722>] bus_add_driver+0x82/0x240
[ 21.272000] [<8c17ae32>] driver_register+0x52/0x160
[ 21.272000] [<c00fd000>] artop_init+0x0/0x1c [pata_artop]
[ 21.272000] [<c00fd000>] artop_init+0x0/0x1c [pata_artop]
[ 21.272000] [<8c146aae>] __pci_register_driver+0x2e/0xa0
[ 21.272000] [<c00fd000>] artop_init+0x0/0x1c [pata_artop]
[ 21.272000] [<8c002084>] do_one_initcall+0x24/0x1c0
[ 21.272000] [<8c04c992>] sys_init_module+0x92/0x1c0
[ 21.272000] [<8c03a620>] blocking_notifier_call_chain+0x0/0x20
[ 21.272000] [<8c008232>] syscall_call+0xc/0x10
[ 21.272000] [<8c04c900>] sys_init_module+0x0/0x1c0
[ 21.272000]
[ 21.272000] Process: insmod (pid: 819, stack limit = 8f836001)
[ 21.272000] Stack: (0x8f837e58 to 0x8f838000)
[ 21.272000]
7e40: c00fa718
00000000
[ 21.272000] 7e60: 004ae284 8c14632a 8c003a80 8fc54940 8fc5499c
8c003a40 8f837ea4 8c12ea50
[ 21.272000] 7e80: 8c146862 004ae284 c00fa884 8c003a80 8c429ae8
8fc549dc c00fa854 8fc54940
[ 21.272000] 7ea0: 8fc5499c c00fa854 8fc54940 c00fa81c 8c17a8a4
8c003a40 8fc5499c 8f842e60
[ 21.272000] 7ec0: 8c17aaa6 004ae284 00423ae0 00000000 8c258540
8fc549d0 c00fa884 8fc5499c
[ 21.272000] 7ee0: 8c179f4e 8c251880 8c17aa20 8c2e5508 c00fa884
8fc32918 8fc5da10 8c179722
[ 21.272000] 7f00: 00000000 fffffff4 8f842e60 8c2e5508 c00fa884
8c17ae32 004ae284 00423ae0
[ 21.272000] 7f20: fffffff0 c00fd000 8c41b064 c00fa884 c00fa854
c00fd000 8c146aae 00000000
[ 21.272000] 7f40: c00fd000 8c41b064 c00fa884 c00fa854 40008001
8c002084 8c41b064 00000000
[ 21.272000] 7f60: c00fab34 00000000 00000000 8ffcc540 8c04c992
004ae284 00423ae0 00000000
[ 21.272000] 7f80: c00fac30 8c03a620 c00fab34 c00fab34 8c008232
00000000 00000071 00000100
[ 21.272000] 7fa0: 8c04c900 00000000 ffffffff fffffff4 00000080
0051d688 00002046 004e0028
[ 21.272000] 7fc0: 00002050 7be8cec8 004e0028 7be8cd7c 7be8cecc
00000000 00423ae0 004ae284
[ 21.272000] 7fe0: 7be8cc2c 00455006 004b3a28 00008001 0051c470
00000022 ffffe000 00000054
[ 25.208000] ---[ end trace e495e7239fe8e43b ]---
Patched 2.6.38:
[ 22.828000] Unable to handle kernel paging request at virtual address
00001400
[ 22.916000] pc = c00fa28e
[ 22.948000] *pde = 00000000
[ 22.980000] Oops: 0000 [#1]
[ 22.980000] last sysfs file:
[ 22.980000] Modules linked in: pata_artop(+) libata ext3 mbcache jbd
[ 22.980000]
[ 22.980000] Pid : 809, Comm: insmod
[ 22.980000] CPU : 0 Not tainted (2.6.38dgp #1)
[ 22.980000]
[ 22.980000] PC is at artop_init_one+0xee/0x1e0 [pata_artop]
[ 22.980000] PR is at artop_init_one+0xee/0x1e0 [pata_artop]
[ 22.980000] PC : c00fa28e SP : 8f807e58 SR : 40008101 TEA : 00001400
[ 22.980000] R0 : 00001400 R1 : 00000000 R2 : 00000001 R3 : 00001000
[ 22.980000] R4 : 00001400 R5 : 00000001 R6 : 00000005 R7 : 00000005
[ 22.980000] R8 : 8f807e58 R9 : 8fc3b020 R10 : c00fa81c R11 : 8fc3b020
[ 22.980000] R12 : 8c003a80 R13 : 8c182780 R14 : 004ae284
[ 22.980000] MACH: 00000423 MACL: 00000668 GBR : 0051c470 PR : c00fa28e
[ 22.980000]
[ 22.980000] Call trace:
[ 22.980000] [<8c1494ea>] local_pci_probe+0x4a/0x120
[ 22.980000] [<8c003a80>] arch_local_save_flags+0x0/0x20
[ 22.980000] [<8c003a40>] arch_local_irq_restore+0x0/0x40
[ 22.980000] [<8c131c10>] kobject_get+0x10/0x20
[ 22.980000] [<8c149a22>] pci_device_probe+0x62/0xa0
[ 22.980000] [<8c003a80>] arch_local_save_flags+0x0/0x20
[ 22.980000] [<8c17da64>] driver_probe_device+0xa4/0x220
[ 22.980000] [<8c003a40>] arch_local_irq_restore+0x0/0x40
[ 22.980000] [<8c17dc66>] __driver_attach+0x86/0xa0
[ 22.980000] [<8c232a00>] mutex_lock+0x0/0x60
[ 22.980000] [<8c17d10e>] bus_for_each_dev+0x4e/0x80
[ 22.980000] [<8c22bd60>] klist_next+0x0/0xe0
[ 22.980000] [<8c17dbe0>] __driver_attach+0x0/0xa0
[ 22.980000] [<8c17c8e2>] bus_add_driver+0x82/0x240
[ 22.980000] [<8c17dff2>] driver_register+0x52/0x160
[ 22.980000] [<c00fd000>] artop_init+0x0/0x1c [pata_artop]
[ 22.980000] [<8c149c6e>] __pci_register_driver+0x2e/0xa0
[ 22.980000] [<c00fd000>] artop_init+0x0/0x1c [pata_artop]
[ 22.980000] [<8c002084>] do_one_initcall+0x24/0x1c0
[ 22.980000] [<8c04c992>] sys_init_module+0x92/0x1c0
[ 22.980000] [<8c03a620>] blocking_notifier_call_chain+0x0/0x20
[ 22.980000] [<8c008232>] syscall_call+0xc/0x10
[ 22.980000] [<8c04c900>] sys_init_module+0x0/0x1c0
[ 22.980000]
[ 22.980000] Process: insmod (pid: 809, stack limit = 8f806001)
[ 22.980000] Stack: (0x8f807e58 to 0x8f808000)
[ 22.980000]
7e40: c00fa718
00000000
[ 22.980000] 7e60: 004ae284 8c1494ea 8c003a80 8fc3b020 8fc3b07c
8c003a40 8f807ea4 8c131c10
[ 22.980000] 7e80: 8c149a22 004ae284 c00fa884 8c003a80 8c3f9ae8
8fc3b0bc c00fa854 8fc3b020
[ 22.980000] 7ea0: 8fc3b07c c00fa854 8fc3b020 c00fa81c 8c17da64
8c003a40 8fc3b07c 8f8048a0
[ 22.980000] 7ec0: 8c17dc66 004ae284 00423ae0 00000000 8c232a00
8fc3b0b0 c00fa884 8fc3b07c
[ 22.980000] 7ee0: 8c17d10e 8c22bd60 8c17dbe0 8c2b5570 c00fa884
8fc2e918 8fc3f7f0 8c17c8e2
[ 22.980000] 7f00: 00000000 fffffff4 8f8048a0 8c2b5570 c00fa884
8c17dff2 004ae284 00423ae0
[ 22.980000] 7f20: fffffff0 c00fd000 8c3eb064 c00fa884 c00fa854
00000000 8c149c6e 00000000
[ 22.980000] 7f40: c00fd000 8c3eb064 c00fa884 c00fa854 00000000
8c002084 8c3eb064 00000000
[ 22.980000] 7f60: c00fab34 00000000 00000000 8f804400 8c04c992
004ae284 00423ae0 00000000
[ 22.980000] 7f80: c00fac30 8c03a620 c00fab34 c00fab34 8c008232
00000000 00000071 00000100
[ 22.980000] 7fa0: 8c04c900 00000000 ffffffff fffffff4 00000080
0051d688 00002046 004e0028
[ 22.980000] 7fc0: 00002050 7bb84ec8 004e0028 7bb84d7c 7bb84ecc
00000000 00423ae0 004ae284
[ 22.980000] 7fe0: 7bb84c2c 00455006 004b3a28 00008001 0051c470
00000022 ffffe000 00000054
[ 26.848000] ---[ end trace dd8748f036d87de6 ]---
^ permalink raw reply [flat|nested] 6+ messages in thread* Re: [PATCH 2/2] sh: Add sh_io_port_base check in __ioport_map function
2011-03-27 4:31 [PATCH 2/2] sh: Add sh_io_port_base check in __ioport_map function Nobuhiro Iwamatsu
2011-03-27 6:37 ` Daniel Palmer
@ 2011-03-27 7:45 ` Nobuhiro Iwamatsu
2011-03-28 14:08 ` Daniel Palmer
` (2 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: Nobuhiro Iwamatsu @ 2011-03-27 7:45 UTC (permalink / raw)
To: linux-sh
Hi,
2011/3/27 Daniel Palmer <me@danielpalmer.co.uk>:
> Hi,
>
> This patch seems to correct my Landisk HDL-??? board from accessing the
> wrong address in 2.6.38 in the pata_artop module;
> It was accessing 0x13FF when the IO port for the PATA interface seems to be
> at 0x1400. However it still creates an oops.
I think that this is other problem for pata_artop.
This patch fix calculation of address.
Best regards,
Nobuhiro
>
>
> pci mapping:
>
> [ 0.068000] pci 0000:00:01.0: BAR 4: assigned [io 0x1400-0x140f]
> [ 0.068000] pci 0000:00:01.0: BAR 4: set to [io 0x1400-0x140f] (PCI
> address [0x1400-0x140f])
>
>
> vanilla 2.6.38
>
> [ 21.120000] Unable to handle kernel paging request at virtual address
> 000013ff
> [ 21.208000] pc = c00fa28e
> [ 21.240000] *pde = 00000000
> [ 21.272000] Oops: 0000 [#1]
> [ 21.272000] last sysfs file:
> [ 21.272000] Modules linked in: pata_artop(+) libata ext3 mbcache jbd
> [ 21.272000]
> [ 21.272000] Pid : 819, Comm: insmod
> [ 21.272000] CPU : 0 Not tainted (2.6.38dgp #1)
> [ 21.272000]
> [ 21.272000] PC is at artop_init_one+0xee/0x1e0 [pata_artop]
> [ 21.272000] PR is at artop_init_one+0xee/0x1e0 [pata_artop]
> [ 21.272000] PC : c00fa28e SP : 8f837e58 SR : 40008001 TEA : 000013ff
> [ 21.272000] R0 : 000013ff R1 : 8c2dd098 R2 : 00000001 R3 : 00001000
> [ 21.272000] R4 : 00001400 R5 : 00000001 R6 : 00000005 R7 : 00000005
> [ 21.272000] R8 : 8f837e58 R9 : 8fc54940 R10 : c00fa81c R11 : 8fc54940
> [ 21.272000] R12 : 8c003a80 R13 : 8c17f5c0 R14 : 004ae284
> [ 21.272000] MACH: 00000099 MACL: 000000cd GBR : 0051c470 PR : c00fa28e
> [ 21.272000]
> [ 21.272000] Call trace:
> [ 21.272000] [<8c14632a>] local_pci_probe+0x4a/0x120
> [ 21.272000] [<8c003a80>] arch_local_save_flags+0x0/0x20
> [ 21.272000] [<8c003a40>] arch_local_irq_restore+0x0/0x40
> [ 21.272000] [<8c12ea50>] kobject_get+0x10/0x20
> [ 21.272000] [<8c146862>] pci_device_probe+0x62/0xa0
> [ 21.272000] [<8c003a80>] arch_local_save_flags+0x0/0x20
> [ 21.272000] [<8c17a8a4>] driver_probe_device+0xa4/0x220
> [ 21.272000] [<8c003a40>] arch_local_irq_restore+0x0/0x40
> [ 21.272000] [<8c17aaa6>] __driver_attach+0x86/0xa0
> [ 21.272000] [<8c258540>] mutex_lock+0x0/0x60
> [ 21.272000] [<8c179f4e>] bus_for_each_dev+0x4e/0x80
> [ 21.272000] [<8c251880>] klist_next+0x0/0xe0
> [ 21.272000] [<8c17aa20>] __driver_attach+0x0/0xa0
> [ 21.272000] [<8c179722>] bus_add_driver+0x82/0x240
> [ 21.272000] [<8c17ae32>] driver_register+0x52/0x160
> [ 21.272000] [<c00fd000>] artop_init+0x0/0x1c [pata_artop]
> [ 21.272000] [<c00fd000>] artop_init+0x0/0x1c [pata_artop]
> [ 21.272000] [<8c146aae>] __pci_register_driver+0x2e/0xa0
> [ 21.272000] [<c00fd000>] artop_init+0x0/0x1c [pata_artop]
> [ 21.272000] [<8c002084>] do_one_initcall+0x24/0x1c0
> [ 21.272000] [<8c04c992>] sys_init_module+0x92/0x1c0
> [ 21.272000] [<8c03a620>] blocking_notifier_call_chain+0x0/0x20
> [ 21.272000] [<8c008232>] syscall_call+0xc/0x10
> [ 21.272000] [<8c04c900>] sys_init_module+0x0/0x1c0
> [ 21.272000]
> [ 21.272000] Process: insmod (pid: 819, stack limit = 8f836001)
> [ 21.272000] Stack: (0x8f837e58 to 0x8f838000)
> [ 21.272000] 7e40:
> c00fa718 00000000
> [ 21.272000] 7e60: 004ae284 8c14632a 8c003a80 8fc54940 8fc5499c 8c003a40
> 8f837ea4 8c12ea50
> [ 21.272000] 7e80: 8c146862 004ae284 c00fa884 8c003a80 8c429ae8 8fc549dc
> c00fa854 8fc54940
> [ 21.272000] 7ea0: 8fc5499c c00fa854 8fc54940 c00fa81c 8c17a8a4 8c003a40
> 8fc5499c 8f842e60
> [ 21.272000] 7ec0: 8c17aaa6 004ae284 00423ae0 00000000 8c258540 8fc549d0
> c00fa884 8fc5499c
> [ 21.272000] 7ee0: 8c179f4e 8c251880 8c17aa20 8c2e5508 c00fa884 8fc32918
> 8fc5da10 8c179722
> [ 21.272000] 7f00: 00000000 fffffff4 8f842e60 8c2e5508 c00fa884 8c17ae32
> 004ae284 00423ae0
> [ 21.272000] 7f20: fffffff0 c00fd000 8c41b064 c00fa884 c00fa854 c00fd000
> 8c146aae 00000000
> [ 21.272000] 7f40: c00fd000 8c41b064 c00fa884 c00fa854 40008001 8c002084
> 8c41b064 00000000
> [ 21.272000] 7f60: c00fab34 00000000 00000000 8ffcc540 8c04c992 004ae284
> 00423ae0 00000000
> [ 21.272000] 7f80: c00fac30 8c03a620 c00fab34 c00fab34 8c008232 00000000
> 00000071 00000100
> [ 21.272000] 7fa0: 8c04c900 00000000 ffffffff fffffff4 00000080 0051d688
> 00002046 004e0028
> [ 21.272000] 7fc0: 00002050 7be8cec8 004e0028 7be8cd7c 7be8cecc 00000000
> 00423ae0 004ae284
> [ 21.272000] 7fe0: 7be8cc2c 00455006 004b3a28 00008001 0051c470 00000022
> ffffe000 00000054
> [ 25.208000] ---[ end trace e495e7239fe8e43b ]---
>
>
> Patched 2.6.38:
>
> [ 22.828000] Unable to handle kernel paging request at virtual address
> 00001400
> [ 22.916000] pc = c00fa28e
> [ 22.948000] *pde = 00000000
> [ 22.980000] Oops: 0000 [#1]
> [ 22.980000] last sysfs file:
> [ 22.980000] Modules linked in: pata_artop(+) libata ext3 mbcache jbd
> [ 22.980000]
> [ 22.980000] Pid : 809, Comm: insmod
> [ 22.980000] CPU : 0 Not tainted (2.6.38dgp #1)
> [ 22.980000]
> [ 22.980000] PC is at artop_init_one+0xee/0x1e0 [pata_artop]
> [ 22.980000] PR is at artop_init_one+0xee/0x1e0 [pata_artop]
> [ 22.980000] PC : c00fa28e SP : 8f807e58 SR : 40008101 TEA : 00001400
> [ 22.980000] R0 : 00001400 R1 : 00000000 R2 : 00000001 R3 : 00001000
> [ 22.980000] R4 : 00001400 R5 : 00000001 R6 : 00000005 R7 : 00000005
> [ 22.980000] R8 : 8f807e58 R9 : 8fc3b020 R10 : c00fa81c R11 : 8fc3b020
> [ 22.980000] R12 : 8c003a80 R13 : 8c182780 R14 : 004ae284
> [ 22.980000] MACH: 00000423 MACL: 00000668 GBR : 0051c470 PR : c00fa28e
> [ 22.980000]
> [ 22.980000] Call trace:
> [ 22.980000] [<8c1494ea>] local_pci_probe+0x4a/0x120
> [ 22.980000] [<8c003a80>] arch_local_save_flags+0x0/0x20
> [ 22.980000] [<8c003a40>] arch_local_irq_restore+0x0/0x40
> [ 22.980000] [<8c131c10>] kobject_get+0x10/0x20
> [ 22.980000] [<8c149a22>] pci_device_probe+0x62/0xa0
> [ 22.980000] [<8c003a80>] arch_local_save_flags+0x0/0x20
> [ 22.980000] [<8c17da64>] driver_probe_device+0xa4/0x220
> [ 22.980000] [<8c003a40>] arch_local_irq_restore+0x0/0x40
> [ 22.980000] [<8c17dc66>] __driver_attach+0x86/0xa0
> [ 22.980000] [<8c232a00>] mutex_lock+0x0/0x60
> [ 22.980000] [<8c17d10e>] bus_for_each_dev+0x4e/0x80
> [ 22.980000] [<8c22bd60>] klist_next+0x0/0xe0
> [ 22.980000] [<8c17dbe0>] __driver_attach+0x0/0xa0
> [ 22.980000] [<8c17c8e2>] bus_add_driver+0x82/0x240
> [ 22.980000] [<8c17dff2>] driver_register+0x52/0x160
> [ 22.980000] [<c00fd000>] artop_init+0x0/0x1c [pata_artop]
> [ 22.980000] [<8c149c6e>] __pci_register_driver+0x2e/0xa0
> [ 22.980000] [<c00fd000>] artop_init+0x0/0x1c [pata_artop]
> [ 22.980000] [<8c002084>] do_one_initcall+0x24/0x1c0
> [ 22.980000] [<8c04c992>] sys_init_module+0x92/0x1c0
> [ 22.980000] [<8c03a620>] blocking_notifier_call_chain+0x0/0x20
> [ 22.980000] [<8c008232>] syscall_call+0xc/0x10
> [ 22.980000] [<8c04c900>] sys_init_module+0x0/0x1c0
> [ 22.980000]
> [ 22.980000] Process: insmod (pid: 809, stack limit = 8f806001)
> [ 22.980000] Stack: (0x8f807e58 to 0x8f808000)
> [ 22.980000] 7e40:
> c00fa718 00000000
> [ 22.980000] 7e60: 004ae284 8c1494ea 8c003a80 8fc3b020 8fc3b07c 8c003a40
> 8f807ea4 8c131c10
> [ 22.980000] 7e80: 8c149a22 004ae284 c00fa884 8c003a80 8c3f9ae8 8fc3b0bc
> c00fa854 8fc3b020
> [ 22.980000] 7ea0: 8fc3b07c c00fa854 8fc3b020 c00fa81c 8c17da64 8c003a40
> 8fc3b07c 8f8048a0
> [ 22.980000] 7ec0: 8c17dc66 004ae284 00423ae0 00000000 8c232a00 8fc3b0b0
> c00fa884 8fc3b07c
> [ 22.980000] 7ee0: 8c17d10e 8c22bd60 8c17dbe0 8c2b5570 c00fa884 8fc2e918
> 8fc3f7f0 8c17c8e2
> [ 22.980000] 7f00: 00000000 fffffff4 8f8048a0 8c2b5570 c00fa884 8c17dff2
> 004ae284 00423ae0
> [ 22.980000] 7f20: fffffff0 c00fd000 8c3eb064 c00fa884 c00fa854 00000000
> 8c149c6e 00000000
> [ 22.980000] 7f40: c00fd000 8c3eb064 c00fa884 c00fa854 00000000 8c002084
> 8c3eb064 00000000
> [ 22.980000] 7f60: c00fab34 00000000 00000000 8f804400 8c04c992 004ae284
> 00423ae0 00000000
> [ 22.980000] 7f80: c00fac30 8c03a620 c00fab34 c00fab34 8c008232 00000000
> 00000071 00000100
> [ 22.980000] 7fa0: 8c04c900 00000000 ffffffff fffffff4 00000080 0051d688
> 00002046 004e0028
> [ 22.980000] 7fc0: 00002050 7bb84ec8 004e0028 7bb84d7c 7bb84ecc 00000000
> 00423ae0 004ae284
> [ 22.980000] 7fe0: 7bb84c2c 00455006 004b3a28 00008001 0051c470 00000022
> ffffe000 00000054
> [ 26.848000] ---[ end trace dd8748f036d87de6 ]---
>
>
>
--
Nobuhiro Iwamatsu
iwamatsu at {nigauri.org / debian.org}
GPG ID: 40AD1FA6
^ permalink raw reply [flat|nested] 6+ messages in thread* Re: [PATCH 2/2] sh: Add sh_io_port_base check in __ioport_map function
2011-03-27 4:31 [PATCH 2/2] sh: Add sh_io_port_base check in __ioport_map function Nobuhiro Iwamatsu
2011-03-27 6:37 ` Daniel Palmer
2011-03-27 7:45 ` Nobuhiro Iwamatsu
@ 2011-03-28 14:08 ` Daniel Palmer
2011-03-28 23:29 ` Nobuhiro Iwamatsu
2011-03-30 7:37 ` Daniel Palmer
4 siblings, 0 replies; 6+ messages in thread
From: Daniel Palmer @ 2011-03-28 14:08 UTC (permalink / raw)
To: linux-sh
On 27/03/11 08:45, Nobuhiro Iwamatsu wrote:
> I think that this is other problem for pata_artop.
> This patch fix calculation of address.
>
> Best regards,
> Nobuhiro
>
With some advice from another Landisk/USL-5P user..
Changing a line in arch/sh/kernel/ioport.c
const unsigned long sh_io_port_base __read_mostly = 0xfe240000;
Seems to fix PCI.
All PCI seems to be broken in 2.6.38.
Loading 8139cp for the ethernet controller makes the board hang.
Also I have asked on the linux-ide list. PATA_ARTOP is working on other
boards.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 2/2] sh: Add sh_io_port_base check in __ioport_map function
2011-03-27 4:31 [PATCH 2/2] sh: Add sh_io_port_base check in __ioport_map function Nobuhiro Iwamatsu
` (2 preceding siblings ...)
2011-03-28 14:08 ` Daniel Palmer
@ 2011-03-28 23:29 ` Nobuhiro Iwamatsu
2011-03-30 7:37 ` Daniel Palmer
4 siblings, 0 replies; 6+ messages in thread
From: Nobuhiro Iwamatsu @ 2011-03-28 23:29 UTC (permalink / raw)
To: linux-sh
Hi,
2011/3/28 Daniel Palmer <me@danielpalmer.co.uk>:
> On 27/03/11 08:45, Nobuhiro Iwamatsu wrote:
>>
>> I think that this is other problem for pata_artop.
>> This patch fix calculation of address.
>>
>> Best regards,
>> Nobuhiro
>>
>
> With some advice from another Landisk/USL-5P user..
>
> Changing a line in arch/sh/kernel/ioport.c
>
> const unsigned long sh_io_port_base __read_mostly = 0xfe240000;
>
> Seems to fix PCI.
>
> All PCI seems to be broken in 2.6.38.
> Loading 8139cp for the ethernet controller makes the board hang.
>
> Also I have asked on the linux-ide list. PATA_ARTOP is working on other
> boards.
Thanks for your comments.
OK, I have LANDISK and USL-5P. I will check this problem.
Best regards,
Nobuhiro
--
Nobuhiro Iwamatsu
iwamatsu at {nigauri.org / debian.org}
GPG ID: 40AD1FA6
^ permalink raw reply [flat|nested] 6+ messages in thread* Re: [PATCH 2/2] sh: Add sh_io_port_base check in __ioport_map function
2011-03-27 4:31 [PATCH 2/2] sh: Add sh_io_port_base check in __ioport_map function Nobuhiro Iwamatsu
` (3 preceding siblings ...)
2011-03-28 23:29 ` Nobuhiro Iwamatsu
@ 2011-03-30 7:37 ` Daniel Palmer
4 siblings, 0 replies; 6+ messages in thread
From: Daniel Palmer @ 2011-03-30 7:37 UTC (permalink / raw)
To: linux-sh
Small update..
>> All PCI seems to be broken in 2.6.38.
>> Loading 8139cp for the ethernet controller makes the board hang.
>>
>>
I said that all PCI seems to be broken. I don't think that this was the
issue..
I was using the SLOB allocator in my kernel and it was causing issues.
Like plugging in a USB device would lock the machine.
This problem seems to be only for PCI devices that use IO ports.. on the
Landisk that is just pata-artop.
I'm not an expert on PCI but I gather there are IO port devices and
memory mapped ones?
On the USL-5P everything is memory mapped (The USB controller etc) so
it's not an issue.
pata-artop is reading bytes from around 0x1400 in the PCI address space
I guess, and to the CPU that address space starts
at 0xfe240000. So ioremap should map any PCI IO port accesses to address
+ 0xfe240000.
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2011-03-30 7:37 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-03-27 4:31 [PATCH 2/2] sh: Add sh_io_port_base check in __ioport_map function Nobuhiro Iwamatsu
2011-03-27 6:37 ` Daniel Palmer
2011-03-27 7:45 ` Nobuhiro Iwamatsu
2011-03-28 14:08 ` Daniel Palmer
2011-03-28 23:29 ` Nobuhiro Iwamatsu
2011-03-30 7:37 ` Daniel Palmer
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).