Bug#651215: Kernel fails to boot on NSLU2

2011-12-14 Thread Jochen Friedrich

Hi Arnaud,


I've uploaded a 3.1.5-1 with a patch which should fix the boot failure
at http://www.rtp-net.org/misc/deb/. Can you please test it ?


Yes, this fixed the problem.

nslu2:~# uname -a
Linux nslu2 3.1.0-1-ixp4xx #1 Tue Dec 13 05:00:03 CET 2011 armv5tel GNU/Linux
nslu2:~#

Thanks,
Jochen



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org



Bug#651215: Kernel fails to boot on NSLU2

2011-12-13 Thread Rtp
Hi,

I've uploaded a 3.1.5-1 with a patch which should fix the boot failure
at http://www.rtp-net.org/misc/deb/. Can you please test it ?

Thanks,
Arnaud



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org



Bug#651215: Kernel fails to boot on NSLU2

2011-12-07 Thread Nicolas Pitre
On Wed, 7 Dec 2011, Russell King - ARM Linux wrote:

> On Wed, Dec 07, 2011 at 11:05:58PM +0100, Arnaud Patard wrote:
> > I may be wrong but it seems that arm_dma_zone_size is used before being
> > set. It would be interesting if someone can boot test a nslu2 kernel with
> > appended patch.
> 
> It does look like that's the case - arm_dma_zone_size is used in
> arm_bootmem_free(), which is called from bootmem_init() and in turn
> paging_init().
> 
> So, arm_dma_zone_size needs to be set before paging_init() is called.

Oops, indeed.

> I'd actually suggest moving it before:
> 
> if (mdesc->restart_mode)
> reboot_setup(&mdesc->restart_mode);
> 
> so that it's set real early, to avoid any future problems with this.
> The earlier these kinds of things are set, the less likely this kind
> of bug will happen.

Arnaud: please resubmit your patch moving the call as suggested by 
Russell and mark it with:

Acked-by: Nicolas Pitre 

and

CC: sta...@kernel.org

Thanks


Nicolas



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org



Bug#651215: Kernel fails to boot on NSLU2

2011-12-07 Thread Russell King - ARM Linux
On Wed, Dec 07, 2011 at 11:05:58PM +0100, Arnaud Patard wrote:
> I may be wrong but it seems that arm_dma_zone_size is used before being
> set. It would be interesting if someone can boot test a nslu2 kernel with
> appended patch.

It does look like that's the case - arm_dma_zone_size is used in
arm_bootmem_free(), which is called from bootmem_init() and in turn
paging_init().

So, arm_dma_zone_size needs to be set before paging_init() is called.

I'd actually suggest moving it before:

if (mdesc->restart_mode)
reboot_setup(&mdesc->restart_mode);

so that it's set real early, to avoid any future problems with this.
The earlier these kinds of things are set, the less likely this kind
of bug will happen.



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org



Bug#651215: Kernel fails to boot on NSLU2

2011-12-07 Thread Rtp
Ben Hutchings  writes:
Hi,

> On Tue, 2011-12-06 at 20:40 +0100, Jochen Friedrich wrote:
>> Package: linux-image-3.1.0-1-ixp4xx
>> Severity: normal
>> 
>> While 3.0.0-6 booted OK on NSLU2 platform, 3.1.0-1 or -4 fails to do so.
>> 
>> Boot log:
> [...]
>> [0.00] Linux version 3.1.0-1-ixp4xx (Debian 3.1.4-1) 
>> (wa...@debian.org)
>> (gcc version 4.6.2 (Debian 4.6.2-4) ) #1 Wed Nov 30 06:35:38 UTC 2011
>> [0.00] CPU: XScale-IXP42x Family [690541f1] revision 1 (ARMv5TE),
>> cr=397f
>> [0.00] CPU: VIVT data cache, VIVT instruction cache
>> [0.00] Machine: Linksys NSLU2
> [...]
>> [3.269860] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
>> [3.350596] PCI: enabling device :00:01.2 (0140 -> 0142)
>> [3.356553] ehci_hcd :00:01.2: EHCI Host Controller
>> [3.452053] ehci_hcd :00:01.2: new USB bus registered, assigned bus
>> number 1
>> [3.459646] ehci_hcd :00:01.2: coherent DMA mask 0x3ff is smaller
>> than system GFP_DMA mask 0x
>> [3.570085] ehci_hcd :00:01.2: coherent DMA mask 0x3ff is smaller
>> than system GFP_DMA mask 0x
>> [3.680189] ehci_hcd :00:01.2: coherent DMA mask 0x3ff is smaller
>> than system GFP_DMA mask 0x
>> (repeated over and over)
>
> I assume that this has something to do with:
>
> commit 650320181a08b64d4421c65c639cf47ad8cc2cd6
> Author: Nicolas Pitre 
> Date:   Mon Jul 18 15:05:10 2011 -0400
>
> ARM: change ARM_DMA_ZONE_SIZE into a variable
>
> commit 7553ee777b513c3bc8f45bb9fc75fb1bbc584ba1
> Author: Nicolas Pitre 
> Date:   Tue Jul 5 22:28:09 2011 -0400
>
> ARM: mach-ixp4xx: move from ARM_DMA_ZONE_SIZE to mdesc->dma_zone_size
>
> It's clear that the DMA zone size is supposed to be 64 MB on this
> machine and I don't see why the DMA mask hasn't propagated correctly.
> Any idea, Nicholas?

I may be wrong but it seems that arm_dma_zone_size is used before being
set. It would be interesting if someone can boot test a nslu2 kernel with
appended patch.


Thanks,
Arnaud

Index: linux-2.6-3.2~rc4/arch/arm/kernel/setup.c
===
--- linux-2.6-3.2~rc4.orig/arch/arm/kernel/setup.c	2011-12-01 23:56:01.0 +0100
+++ linux-2.6-3.2~rc4/arch/arm/kernel/setup.c	2011-12-07 23:04:39.0 +0100
@@ -921,6 +921,12 @@ void __init setup_arch(char **cmdline_p)
 	sanity_check_meminfo();
 	arm_memblock_init(&meminfo, mdesc);
 
+#ifdef CONFIG_ZONE_DMA
+	if (mdesc->dma_zone_size) {
+		extern unsigned long arm_dma_zone_size;
+		arm_dma_zone_size = mdesc->dma_zone_size;
+	}
+#endif
 	paging_init(mdesc);
 	request_standard_resources(mdesc);
 
@@ -934,12 +940,6 @@ void __init setup_arch(char **cmdline_p)
 
 	tcm_init();
 
-#ifdef CONFIG_ZONE_DMA
-	if (mdesc->dma_zone_size) {
-		extern unsigned long arm_dma_zone_size;
-		arm_dma_zone_size = mdesc->dma_zone_size;
-	}
-#endif
 #ifdef CONFIG_MULTI_IRQ_HANDLER
 	handle_arch_irq = mdesc->handle_irq;
 #endif


Bug#651215: Kernel fails to boot on NSLU2

2011-12-06 Thread Ben Hutchings
On Tue, 2011-12-06 at 20:40 +0100, Jochen Friedrich wrote:
> Package: linux-image-3.1.0-1-ixp4xx
> Severity: normal
> 
> While 3.0.0-6 booted OK on NSLU2 platform, 3.1.0-1 or -4 fails to do so.
> 
> Boot log:
[...]
> [0.00] Linux version 3.1.0-1-ixp4xx (Debian 3.1.4-1) 
> (wa...@debian.org)
> (gcc version 4.6.2 (Debian 4.6.2-4) ) #1 Wed Nov 30 06:35:38 UTC 2011
> [0.00] CPU: XScale-IXP42x Family [690541f1] revision 1 (ARMv5TE),
> cr=397f
> [0.00] CPU: VIVT data cache, VIVT instruction cache
> [0.00] Machine: Linksys NSLU2
[...]
> [3.269860] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
> [3.350596] PCI: enabling device :00:01.2 (0140 -> 0142)
> [3.356553] ehci_hcd :00:01.2: EHCI Host Controller
> [3.452053] ehci_hcd :00:01.2: new USB bus registered, assigned bus
> number 1
> [3.459646] ehci_hcd :00:01.2: coherent DMA mask 0x3ff is smaller
> than system GFP_DMA mask 0x
> [3.570085] ehci_hcd :00:01.2: coherent DMA mask 0x3ff is smaller
> than system GFP_DMA mask 0x
> [3.680189] ehci_hcd :00:01.2: coherent DMA mask 0x3ff is smaller
> than system GFP_DMA mask 0x
> (repeated over and over)

I assume that this has something to do with:

commit 650320181a08b64d4421c65c639cf47ad8cc2cd6
Author: Nicolas Pitre 
Date:   Mon Jul 18 15:05:10 2011 -0400

ARM: change ARM_DMA_ZONE_SIZE into a variable

commit 7553ee777b513c3bc8f45bb9fc75fb1bbc584ba1
Author: Nicolas Pitre 
Date:   Tue Jul 5 22:28:09 2011 -0400

ARM: mach-ixp4xx: move from ARM_DMA_ZONE_SIZE to mdesc->dma_zone_size

It's clear that the DMA zone size is supposed to be 64 MB on this
machine and I don't see why the DMA mask hasn't propagated correctly.
Any idea, Nicholas?

Ben.

-- 
Ben Hutchings
Absolutum obsoletum. (If it works, it's out of date.) - Stafford Beer


signature.asc
Description: This is a digitally signed message part


Bug#651215: Kernel fails to boot on NSLU2

2011-12-06 Thread Jochen Friedrich
Package: linux-image-3.1.0-1-ixp4xx
Severity: normal

While 3.0.0-6 booted OK on NSLU2 platform, 3.1.0-1 or -4 fails to do so.

Boot log:

Ethernet eth0: MAC address 00:14:bf:xx:yy:zz
IP: 192.168.0.1/255.255.255.0, Gateway: 192.168.0.1
Default server: 0.0.0.0, DNS server IP: 0.0.0.0

RedBoot(tm) bootstrap and debug environment [ROMRAM]
Red Hat certified release, version 1.92 - built 15:16:07, Feb  3 2004

Platform: IXDP425 Development Platform (XScale)
Copyright (C) 2000, 2001, 2002, Red Hat, Inc.

RAM: 0x-0x0200, 0x000723a0-0x01ff3000 available
FLASH: 0x5000 - 0x5080, 64 blocks of 0x0002 bytes each.
== Executing boot script in 2.000 seconds - enter ^C to abort
RedBoot> boot;exec 0x01d0
have eRcOmM
copy kernel code from flash to RAM
copy ramdisk file from flash to RAM
run kernel
Using base address 0x01d0 and length 0xdc20
Ans

APEX Boot Loader 1.6.10 -- Copyright (c) 2004-2008 Marc Singer
  compiled for Debian NSLU2 on 2009.Oct.06-18:59:32

APEX comes with ABSOLUTELY NO WARRANTY.  It is free software and
you are welcome to redistribute it under certain circumstances.
For details, refer to the file COPYING in the program source.

  apex => mem:0x0020+0xdc10   (56336 bytes)
  env  => nor:0x7c000+15k (empty)

Use the command 'help help' to get started.

# sdram-init
 1 bank of 2 128Mib chips
# memscan -u 0+256m
 0x0 0x0200 (32 MiB)
# copy -s $kernelsrc $bootaddr
# copy -s fis://kernel 0x8000
|/-\|/-1441760 bytes transferred
# copy -s $ramdisksrc $ramdiskaddr
# copy -s fis://ramdisk 0x0100
\|/-\|/-\|/-\|/-\|/-\|6291440 bytes transferred
# wait 10 Type ^C key to cancel autoboot.
Type ^C key to cancel autoboot.
/-\|/-\|# boot
ARCH_ID: 597 (0x255)
ATAG_HEADER
ATAG_MEM: start 0x  size 0x0200
ATAG_CMDLINE: (32 bytes) 'console=ttyS0,115200 noirqdebug'
ATAG_INITRD2: start 0x0100  size 0x0050
ATAG_END
Booting kernel at 0x8000...
Uncompressing Linux... done, booting the kernel.
[0.00] Initializing cgroup subsys cpuset
[0.00] Initializing cgroup subsys cpu
[0.00] Linux version 3.1.0-1-ixp4xx (Debian 3.1.4-1) (wa...@debian.org)
(gcc version 4.6.2 (Debian 4.6.2-4) ) #1 Wed Nov 30 06:35:38 UTC 2011
[0.00] CPU: XScale-IXP42x Family [690541f1] revision 1 (ARMv5TE),
cr=397f
[0.00] CPU: VIVT data cache, VIVT instruction cache
[0.00] Machine: Linksys NSLU2
[0.00] Memory policy: ECC disabled, Data cache writeback
[0.00] Built 1 zonelists in Zone order, mobility grouping on.  Total
pages: 8128
[0.00] Kernel command line: console=ttyS0,115200 noirqdebug
[0.00] IRQ lockup detection disabled
[0.00] PID hash table entries: 128 (order: -3, 512 bytes)
[0.00] Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
[0.00] Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
[0.00] Memory: 32MB = 32MB total
[0.00] Memory: 22160k/22160k available, 10608k reserved, 0K highmem
[0.00] Virtual kernel memory layout:
[0.00] vector  : 0x - 0x1000   (   4 kB)
[0.00] fixmap  : 0xfff0 - 0xfffe   ( 896 kB)
[0.00] DMA : 0xffc0 - 0xffe0   (   2 MB)
[0.00] vmalloc : 0xc280 - 0xff00   ( 968 MB)
[0.00] lowmem  : 0xc000 - 0xc200   (  32 MB)
[0.00] modules : 0xbf00 - 0xc000   (  16 MB)
[0.00]   .text : 0xc0008000 - 0xc03712b4   (3493 kB)
[0.00]   .init : 0xc0372000 - 0xc0391000   ( 124 kB)
[0.00]   .data : 0xc0392000 - 0xc03c2e00   ( 196 kB)
[0.00].bss : 0xc03c2e24 - 0xc040aa94   ( 288 kB)
[0.00] NR_IRQS:64
[0.00] sched_clock: 32 bits at 66MHz, resolution 15ns, wraps every
65075ms
[0.00] Console: colour dummy device 80x30
[0.000569] Calibrating delay loop... 265.42 BogoMIPS (lpj=1327104)
[0.070823] pid_max: default: 32768 minimum: 301
[0.071350] Security Framework initialized
[0.071595] Mount-cache hash table entries: 512
[0.072597] Initializing cgroup subsys cpuacct
[0.072673] Initializing cgroup subsys memory
[0.072755] Initializing cgroup subsys devices
[0.072789] Initializing cgroup subsys freezer
[0.072819] Initializing cgroup subsys net_cls
[0.072851] Initializing cgroup subsys blkio
[0.073088] CPU: Testing write buffer coherency: ok
[0.073890] hw perfevents: enabled with xscale2 PMU driver, 5 counters
available
[0.077148] devtmpfs: initialized
[0.081279] print_constraints: dummy:
[0.082011] NET: Registered protocol family 16
[0.083651] IXP4xx: Using 16MiB expansion bus window size
[0.085289] NSLU2: Using MAC address 00:14:bf:xx:yy:zz for port 0
[0.085540] PCI: IXP4xx is host
[0.085568] PCI: IXP4xx Using direct access for memory space
[0.087363] PCI: bus0: Fast back to back transfers disabled
[0.087449] pci :00:01.0: dmaboun