Gentoo Logo
Gentoo Spaceship




Note: Due to technical difficulties, the Archives are currently not up to date. GMANE provides an alternative service for most mailing lists.
c.f. bug 424647
List Archive: gentoo-sparc
Navigation:
Lists: gentoo-sparc: < Prev By Thread Next > < Prev By Date Next >
Headers:
To: gentoo-sparc@g.o
From: Hacking Network Solutions - Gentoo List Subscriptions <gentoo.lists@...>
Subject: Re: Problem booting SPARC64 installcd on Blade2500 systems
Date: Wed, 25 Oct 2006 03:52:46 +0100
Hi,

Further to my previous message I believe I have narrowed the problem
down to the following (see text below) commit.

I am basing this diagnosis on the fact that I can boot any kernel before
version 2.6.14, which was when this change was merged, with all more
recent kernels (up to git-sources-2.6.19_rc1-r3) failing with similar
but random error messages.  Whilst there were other changes which could
have caused this issue it seems like more than a coincidence to me that
this problem appeared in the same version as a re-write of the SPARC64
boot-up sequence.  

Unfortunately I know absolutely no SPARC64 assembler (and what I can
intuit from my, now woefully poorly, recollected knowledge of 6502 is
limited ;-) so I am unable to pursue this issue much further, other than
by filing a simple bug report obviously.

I generally like to be a bit more helpful than that when I file a bug
report though...  Anyone have any ideas?

Max

----------------------------------------------------------------------

commit bff06d552240ba7f5b49482a4865871d7bc03dc2
Author: David S. Miller
Date:   Thu Sep 22 20:11:33 2005 -0700

    [SPARC64]: Rewrite bootup sequence.
    
    Instead of all of this cpu-specific code to remap the kernel
    to the correct location, use portable firmware calls to do
    this instead.
    
    What we do now is the following in position independant
    assembler:
    
        chosen_node = prom_finddevice("/chosen");
        prom_mmu_ihandle_cache = prom_getint(chosen_node, "mmu");
        vaddr = 4MB_ALIGN(current_text_addr());
        prom_translate(vaddr, &paddr_high, &paddr_low, &mode);
        prom_boot_mapping_mode = mode;
        prom_boot_mapping_phys_high = paddr_high;
        prom_boot_mapping_phys_low = paddr_low;
        prom_map(-1, 8 * 1024 * 1024, KERNBASE, paddr_low);
    
    and that replaces the massive amount of by-hand TLB probing and
    programming we used to do here.
    
    The new code should also handle properly the case where the kernel
    is mapped at the correct address already (think: future kexec
    support).
    
    Consequently, the bulk of remap_kernel() dies as does the entirety
    of arch/sparc64/prom/map.S
    
    We try to share some strings in the PROM library with the ones used
    at bootup, and while we're here mark input strings to oplib.h routines
    with "const" when appropriate.
    
    There are many more simplifications now possible.  For one thing, we
    can consolidate the two copies we now have of a lot of cpu setup code
    sitting in head.S and trampoline.S.
    
    This is a significant step towards CONFIG_DEBUG_PAGEALLOC support.
    
    Signed-off-by: David S. Miller

----------------------------------------------------------------------
On Fri, 2006-10-13 at 11:19 +0200, Martin Andersen wrote:
> > Hi,
> > 
> > 
> > I'm trying to get the latest 2006.1 Sparc Universal bootcd (downloaded 
> > yesterday) to run on some Blade2500 machines, without much success. I've tried 
> > the Silver & Non-Silver models, and both the provided kernels (2.6.16 & 2.6.17)
> > 
> > Some basic info regarding the specs (a prtdiag -v is also attached) --
> > 
> > OpenBoot v4.17.1
> > 4096 Mb RAM
> > XVR-1200 GFX module (SUNW,375-3101)
> > Dual UltraSPARC IIIi 1280 Mhz CPUs
> > Broadcom NIC (bge0 in Solaris)
> > 
> > Some have both a XVR-1200 and a XVR-100 module installed (I've tested on both)
> > The problem however seems to be related to the initial ramdisk --
> > 
> > 
> > <..begin BootPROM output..>
> > 
> > Loading initial ramdisk (644214 bytes at 0x133F802000 phys, 0x40C00000 virt)...
> > 
> > 	ERROR: Last Trap: Illegal Instruction
> > 
> > Error -256
> > 
> > 	ERROR: Last Trap: Memory Address not Aligned
> > 
> > 
> > <..end BootPROM output..>
> > 
> > And then it throws you back to the ok prompt.  Any suggestions?  I'll be happy 
> > to test any experimental livecd's and/or possible BootPROM fixes (env. settings, 
> > disabling mem, etc.) I didn't do an asr-disable, as the previous problems seemed 
> > to have to do with having more than 4Gb mem, which isn't the issue here.
> > 
> > 
> > Regards,
> > 
> 
> Hi,
> 
> I have a similar problem trying to boot any kernel more recent than
> 2.6.11.  I am currently net-booting a 2.6.11-r8 kernel which works fine.
> 
> The errors which I have experienced so far include:
> 
> Illegal Instruction
> Memory Address not Aligned
> Data Access Exception
> Fast Instruction Access MMU Miss
> IDPROM: Warning, unknown format type!
> 
> They seem to change depending on the size of the kernel image which I am
> attempting to boot and the version from which it was built.  Other than
> that there is no obvious rhyme nor reason.
> 
> There is a forum post with similar (unresolved) issues here:
> http://forums.gentoo.org/viewtopic-p-3642405.html
> 
> If 2.6.11 was still in portage I would suggest that you tried that but
> as it isn't....
System Configuration:  Sun Microsystems  sun4u
Memory size: 128 Megabytes
System Peripherals (PROM Nodes):

Node 0xf002a63c
    idprom:  01800800.20f5a54e.fe0003da.f5a54e8e.00000000.00000000.00000000.00000000
    scsi-initiator-id:  00000007
    reset-reason: 'S-POR'
    breakpoint-trap:  0000007f
    #size-cells:  00000002
    model: 'SUNW,375-3015'
    name: 'SUNW,UltraAX-i2'
    clock-frequency:  05f5e100
    banner-name: 'Sun Netra X1 (UltraSPARC-IIe 400MHz)'
    compatible: 'sun4u'
    device_type: 'upa'
    stick-frequency:  0054c563

    Node 0xf002d8cc
        name: 'packages'

        Node 0xf0035e10
            iso6429-1983-colors:
            name: 'terminal-emulator'

        Node 0xf0038e30
            disk-write-fix:
            name: 'deblocker'

        Node 0xf0039530
            name: 'obp-tftp'

        Node 0xf00447f8
            name: 'disk-label'

        Node 0xf0059680
            name: 'SUNW,builtin-drivers'

        Node 0xf0061a70
            source: '/pci@1f,0/isa@7/flashprom@1f,0:'
            name: 'dropins'

        Node 0xf00720d0
            name: 'kbd-translator'

    Node 0xf002d93c
        mmu:  fffe7ae0
        memory:  fffe7ce0
        bootargs: 'ip=10.0.0.1 root=/dev/nfs nfsroot=10.0.0.10:/diskless/firewall'
        bootpath: '/pci@1f,0/ethernet@c'
        stdout:  fffbd838
        stdin:  fffbda80
        stdout-#lines:  ffffffff
        name: 'chosen'

    Node 0xf002d9a8
        version: 'OBP 4.0.5 2001/02/02 18:08'
        model: 'SUNW,4.0'
        aligned-allocator:
        relative-addressing:
        name: 'openprom'

        Node 0xf002da38
            name: 'client-services'

    Node 0xf002dae0
        ras-shutdown-enabled?: 'false'
        shutdown-temp: '75'
        warning-temp: '70'
        env-monitor: 'disabled'
        diag-passes: '1'
        diag-continue?: '0'
        diag-targets: '0'
        diag-verbosity: '0'
        keyboard-click?: 'false'
        keymap:
        scsi-initiator-id: '7'
        #power-cycles: '128'
        system-board-serial#:
        system-board-date:
        ttyb-rts-dtr-off: 'false'
        ttyb-ignore-cd: 'true'
        ttya-rts-dtr-off: 'false'
        ttya-ignore-cd: 'true'
        ttyb-mode: '9600,8,n,1,-'
        ttya-mode: '9600,8,n,1,-'
        pci-probe-list: '7,3,c,5,a,d'
        mfg-mode: 'off'
        diag-level: 'max'
        fcode-debug?: 'false'
        output-device: 'ttya'
        input-device: 'ttya'
        load-base: '16384'
        boot-command: 'boot'
        auto-boot?: 'true'
        watchdog-reboot?: 'false'
        diag-file:
        diag-device: 'net'
        boot-file: 'ip=10.0.0.1 root=/dev/nfs nfsroot=10.0.0.10:/diskless/firewall'
        boot-device: 'net disk'
        local-mac-address?: 'false'
        ansi-terminal?: 'true'
        screen-#columns: '80'
        screen-#rows: '34'
        silent-mode?: 'false'
        use-nvramrc?: 'false'
        nvramrc:
        security-mode: 'none'
        security-password:
        security-#badlogins: '0'
        oem-logo:
        oem-logo?: 'false'
        oem-banner:
        oem-banner?: 'false'
        hardware-revision:
        last-hardware-update:
        diag-switch?: 'false'
        name: 'options'

    Node 0xf002db50
        rtc: '/pci@1f,0/isa@7/rtc@0,70'
        usb: '/pci@1f,0/usb@a'
        flash: '/pci@1f,0/isa@7/flashprom@1f,0'
        lom: '/pci@1f,0/isa@7/SUNW,lomh@0,8010'
        i2c-nvram: '/pci@1f,0/pmu@3/i2c@0,0/i2c-nvram@0,aa'
        net1: '/pci@1f,0/ethernet@5'
        dload1: '/pci@1f,0/ethernet@5:,'
        dload: '/pci@1f,0/ethernet@c:,'
        net0: '/pci@1f,0/ethernet@c'
        net: '/pci@1f,0/ethernet@c'
        cdrom: '/pci@1f,0/ide@d/cdrom@2,0:f'
        disk: '/pci@1f,0/ide@d/disk@0,0'
        disk3: '/pci@1f,0/ide@d/disk@3,0'
        disk2: '/pci@1f,0/ide@d/disk@2,0'
        disk1: '/pci@1f,0/ide@d/disk@1,0'
        disk0: '/pci@1f,0/ide@d/disk@0,0'
        ide: '/pci@1f,0/ide@d'
        floppy: '/pci@1f,0/isa@7/dma/floppy'
        ttyb: '/pci@1f,0/isa@7/serial@0,2e8'
        ttya: '/pci@1f,0/isa@7/serial@0,3f8'
        name: 'aliases'

    Node 0xf004fb4c
        reg:  00000000.60000000.00000000.08000000
        available:  00000000.67e80000.00000000.00048000.00000000.67000000.00000000.00e00000.00000000.60000000.00000000.06ffe000
        name: 'memory'

    Node 0xf0050130
        translations:  00000000.fffe0000.00000000.00010000.80000000.67ef00b6.00000000.fffdc000.00000000.00004000.80000000.67ee40b6.00000000.fffd4000.00000000.00004000.80000000.67ede0b6.00000000.fffd2000.00000000.00002000.800001fe.0200808e.00000000.fffd0000.00000000.00002000.80000000.67ed60b6.00000000.fffce000.00000000.00002000.800001fe.0200008e.00000000.fffcc000.00000000.00002000.800001fe.0200208e.00000000.fffca000.00000000.00002000.800001fe.0200408e.00000000.fffc8000.00000000.00002000.80000000.66ffe0b6.00000000.fffc6000.00000000.00002000.80000000.67ed20b6.00000000.fffc4000.00000000.00002000.80000000.67edc0b6.00000000.fffc2000.00000000.00002000.800001fe.0200008e.00000000.fffbc000.00000000.00004000.80000000.67ec80b6.00000000.fff82000.00000000.00010000.800001fe.0000008e.00000000.fff7e000.00000000.00004000.80000000.67ed80b6.00000000.f0000000.00000000.00100000.80000000.67f000b6.00000000.00400000.00000000.00400000.80000000.60400036
        existing:  00000000.00000000.00000800.00000000.fffff800.00000000.00000800.00000000
        available:  fffff800.00000000.000007fc.00000000.00000001.00000000.000007ff.00000000.00000000.ffff0000.00000000.0000e000.00000000.00000000.00000000.f0000000.00000000.fffc0000.00000000.00002000.00000000.fff92000.00000000.0002a000.00000000.fff00000.00000000.0007e000.00000000.f0f80000.00000000.0e080000.00000000.f0800000.00000000.00700000
        page-size:  00002000
        name: 'virtual-memory'

    Node 0xf0068d38
        available:  81000000.00000000.00010230.00000000.00bffdd0.82000000.00000000.00004000.00000000.0003c000.82000000.00000000.000c0000.00000000.00f40000.82000000.00000000.02000000.00000000.5e000000.82000000.00000000.80000000.00000000.40000000.82000000.00000000.e0000000.00000000.10000000
        bus-range:  00000000.00000000
        interrupt-map:  00006800.00000000.00000000.00000001.f0068d38.0000000c.00005000.00000000.00000000.00000001.f0068d38.00000024.00006000.00000000.00000000.00000001.f0068d38.00000006.00002800.00000000.00000000.00000001.f0068d38.0000001c.00003800.00000000.00000000.00000004.f0068d38.0000002b.00003800.00000000.00000000.00000005.f0068d38.00000023.00003800.00000000.00000000.00000001.f0068d38.0000002a.00001800.00000000.00000000.00000001.f0068d38.00000022
        interrupt-map-mask:  00fff800.00000000.00000000.00000007
        #interrupt-cells:  00000001
        virtual-dma:  60000000.20000000
        reg:  000001fe.00000000.00000000.00010000.000001fe.01000000.00000000.00000100
        ranges:  00000000.00000000.00000000.000001fe.01000000.00000000.01000000.01000000.00000000.00000000.000001fe.02000000.00000000.01000000.02000000.00000000.00000000.000001ff.00000000.00000001.00000000.03000000.00000000.00000000.000001ff.00000000.00000001.00000000
        #virtual-dma-size-cells:  00000001
        #virtual-dma-addr-cells:  00000001
        clock-frequency:  03ef1480
        latency-timer:
        button-interrupt:
        no-streaming-cache:
        66mhz-capable:
        interrupts:  00000030.0000002e.0000002f.00000025
        upa-portid:  0000001f
        bus-parity-generated:
        compatible: 'pci108e,a001'
        model: 'SUNW,sabre'
        name: 'pci'
        device_type: 'pci'
        #address-cells:  00000003
        #size-cells:  00000002

        Node 0xf0072e1c
            cache-line-size:  00000000
            latency-timer:  00000000
            #size-cells:  00000001
            #address-cells:  00000002
            name: 'isa'
            ranges:  00000000.00000000.81003810.00000000.00000000.00010000
            reg:  00003800.00000000.00000000.00000000.00000000.81003810.00000000.00000000.00000000.00010000.82003814.00000000.00000000.00000000.00100000
            devsel-speed:  00000001
            class-code:  00060100
            max-latency:  00000000
            min-grant:  00000000
            subsystem-id:  00001533
            subsystem-vendor-id:  000010b9
            revision-id:  00000000
            device-id:  00001533
            vendor-id:  000010b9

            Node 0xf00739cc
                reg:  00000000.00000000.00010000
                interrupts:  00000001
                compatible: 'isadma'
                name: 'dma'

            Node 0xf0073ca4
                address:  fffce070
                reg:  00000000.00000070.00000002
                compatible: 'ds1287'
                model: 'ds1287'
                name: 'rtc'

            Node 0xf00744e8
                compatible: 'acpi-power'
                button:
                interrupts:  00000005
                reg:  00000000.00002000.00000008
                name: 'power'

            Node 0xf007467c
                reg:  00000000.00008010.00000002
                interrupts:  00000001
                device_type: 'block'
                name: 'SUNW,lomh'

            Node 0xf0075ab8
                port-a-ignore-cd:
                nohupcl:  00
                interrupt-priorities:  0000000c.0000000c
                reg:  00000000.000003f8.00000008
                compatible:  73753136.35353000.737500
                device_type: 'serial'
                name: 'serial'
                interrupts:  00000004

            Node 0xf00777a4
                port-b-ignore-cd:
                nohupcl:  00
                interrupt-priorities:  0000000c.0000000c
                reg:  00000000.000002e8.00000008
                compatible:  73753136.35353000.737500
                device_type: 'serial'
                name: 'serial'
                interrupts:  00000004

            Node 0xf00798bc
                model: 'SUNW,258-7883'
                version:  434f5245.20312e30.2e312032.3030312f.30322f30.32203138.3a303800.434f5245.20312e30.2e312032.3030312f.30322f30.32203138.3a303800
                name: 'flashprom'
                reg:  0000001f.00000000.00100000

        Node 0xf007a380
            name: 'pmu'
            ranges:  00000000.00000000.00001800.00000000.00000000.00000100.00000001.00000000.81001810.00000000.00004000.00000100.00000002.00000000.81001814.00000000.00000000.00000100
            reg:  00001800.00000000.00000000.00000000.00000000.81001810.00000000.00004000.00000000.00000010
            compatible:  70636931.3062392c.37313031.00706369.636c6173.732c3030.30303030.00
            #address-cells:  00000002
            #size-cells:  00000001
            devsel-speed:  00000001
            class-code:  00000000
            max-latency:  00000000
            min-grant:  00000000
            revision-id:  00000000
            device-id:  00007101
            vendor-id:  000010b9

            Node 0xf007ab48
                reg:  00000000.00000000.00000100.00000001.00000000.00000100
                #address-cells:  00000002
                #size-cells:  00000000
                interrupts:  00000001
                compatible: 'i2c-smbus'
                name: 'i2c'

                Node 0xf007bfe0
                    compatible: 'i2c-max1617'
                    name: 'temperature'
                    reg:  00000000.00000030

                Node 0xf007c150
                    compatible: 'i2c-at34c02'
                    name: 'dimm'
                    reg:  00000000.000000ae

                Node 0xf007c208
                    reg:  00000000.000000a0
                    #address-cells:  00000001
                    compatible: 'i2c-at24c64'
                    device_type: 'nvram'
                    name: 'i2c-nvram'

                    Node 0xf007cd20
                        reg:  00001fd8.00000028
                        device_type: 'idprom'
                        name: 'idprom'

                Node 0xf007cfd4
                    reg:  00000000.000000a2
                    #address-cells:  00000001
                    compatible: 'i2c-at24c64'
                    name: 'motherboard-fru'

            Node 0xf007db6c
                compatible: 'SUNW,smbus-ppm'
                name: 'ppm'
                register-mask:  00000000.00000001
                reg:  00000000.000000b3.00000001.80000000.000000ba.00000001.00000000.000000bb.00000001

            Node 0xf007dde0
                compatible: 'SUNW,smbus-beep'
                name: 'beep'
                reg:  00000000.000000b2.00000001.00000000.000000d3.00000001.00000002.00000042.00000002.00000002.00000061.00000001

            Node 0xf007def8
                compatible: 'SUNW,smbus-fan-control'
                name: 'fan-control'
                register-mask:  00000000.00000002
                reg:  00000000.000000c8.00000004.80000000.000000ba.00000001

        Node 0xf007e0fc
            name: 'lomp'
            reg:  00001800.00000000.00000000.00000000.00000000.81001810.00004000.00000000.00000000.00000010

        Node 0xf007e524
            mac-address:  080020f5.a54e
            local-mac-address:  080020f5.a54e
            assigned-addresses:  81006010.00000000.00010000.00000000.00000100.82006014.00000000.00000000.00000000.00002000.82006030.00000000.00040000.00000000.00040000
            version: '1.0'
            compatible:  70636934.3535342c.34333465.00706369.31323868.2c393130.32007063.69313238.322c3931.30320070.6369636c.6173732c.30323030.303000
            device_type: 'network'
            subsystem-id:  0000434e
            subsystem-vendor-id:  00004554
            reg:  00006000.00000000.00000000.00000000.00000000.01006010.00000000.00000000.00000000.00000100.02006014.00000000.00000000.00000000.00000100
            name: 'ethernet'
            devsel-speed:  00000001
            class-code:  00020000
            interrupts:  00000001
            max-latency:  00000028
            min-grant:  00000014
            revision-id:  00000031
            device-id:  00009102
            vendor-id:  00001282

        Node 0xf0088070
            local-mac-address:  080020f5.a54f
            assigned-addresses:  81002810.00000000.00010100.00000000.00000100.82002814.00000000.00002000.00000000.00002000.82002830.00000000.00080000.00000000.00040000
            version: '1.0'
            compatible:  70636934.3535342c.34333465.00706369.31323868.2c393130.32007063.69313238.322c3931.30320070.6369636c.6173732c.30323030.303000
            device_type: 'network'
            subsystem-id:  0000434e
            subsystem-vendor-id:  00004554
            reg:  00002800.00000000.00000000.00000000.00000000.01002810.00000000.00000000.00000000.00000100.02002814.00000000.00000000.00000000.00000100
            name: 'ethernet'
            devsel-speed:  00000001
            class-code:  00020000
            interrupts:  00000001
            max-latency:  00000028
            min-grant:  00000014
            revision-id:  00000031
            device-id:  00009102
            vendor-id:  00001282

        Node 0xf0091bbc
            assigned-addresses:  82005010.00000000.01000000.00000000.01000000
            sunw,find-fcode:  f0096db0
            maximum-frame#:  0000ffff
            reg:  00005000.00000000.00000000.00000000.00000000.02005010.00000000.00000000.00000000.01000000
            #size-cells:  00000000
            #address-cells:  00000001
            compatible:  70636931.3062392c.35323337.2e330070.63693130.62392c35.32333700.70636963.6c617373.2c306330.33313000.70636963.6c617373.2c306330.3300
            name: 'usb'
            fast-back-to-back:
            devsel-speed:  00000001
            class-code:  000c0310
            interrupts:  00000001
            max-latency:  00000050
            min-grant:  00000000
            revision-id:  00000003
            device-id:  00005237
            vendor-id:  000010b9

        Node 0xf00979f4
            assigned-addresses:  81006810.00000000.00010200.00000000.00000008.81006814.00000000.00010218.00000000.00000008.81006818.00000000.00010210.00000000.00000008.8100681c.00000000.00010208.00000000.00000008.81006820.00000000.00010220.00000000.00000010
            reg:  00006800.00000000.00000000.00000000.00000000.01006810.00000000.00000000.00000000.00000008.01006814.00000000.00000000.00000000.00000004.01006818.00000000.00000000.00000000.00000008.0100681c.00000000.00000000.00000000.00000004.01006820.00000000.00000000.00000000.00000010
            compatible:  70636931.3062392c.35323239.00706369.636c6173.732c3031.30316666.00
            #address-cells:  00000002
            device_type: 'ide'
            name: 'ide'
            fast-back-to-back:
            devsel-speed:  00000001
            class-code:  000101ff
            interrupts:  00000001
            max-latency:  00000004
            min-grant:  00000002
            revision-id:  000000c3
            device-id:  00005229
            vendor-id:  000010b9

            Node 0xf009a268
                device_type: 'block'
                name: 'disk'
                compatible: 'ide-disk'

            Node 0xf009a914
                device_type: 'block'
                name: 'cdrom'
                compatible: 'ide-cdrom'

    Node 0xf0071d40
        manufacturer#:  00000017
        implementation#:  00000013
        mask#:  00000014
        ecache-size:  00040000
        clock-frequency:  17d78400
        name: 'SUNW,UltraSPARC-IIe'
        sparc-version:  00000009
        ecache-associativity:  00000001
        ecache-line-size:  00000040
        #dtlb-entries:  00000040
        dcache-associativity:  00000001
        dcache-line-size:  00000020
        dcache-size:  00004000
        #itlb-entries:  00000040
        icache-associativity:  00000002
        icache-line-size:  00000020
        icache-size:  00004000
        upa-portid:  00000000
        reg:  000001c0.00000000.00000000.00000008
        device_type: 'cpu'
References:
Problem booting SPARC64 installcd on Blade2500 systems
-- Martin Andersen
Re: Problem booting SPARC64 installcd on Blade2500 systems
-- Hacking Network Solutions - Gentoo List Subscriptions
Navigation:
Lists: gentoo-sparc: < Prev By Thread Next > < Prev By Date Next >
Previous by thread:
Re: Problem booting SPARC64 installcd on Blade2500 systems
Next by thread:
Re: Problem booting SPARC64 installcd on Blade2500 systems
Previous by date:
Re: OT: From gentoo to Solaris
Next by date:
RE: Problem booting SPARC64 installcd on Blade2500systems


Updated Jun 17, 2009

Summary: Archive of the gentoo-sparc mailing list.

Donate to support our development efforts.

Copyright 2001-2013 Gentoo Foundation, Inc. Questions, Comments? Contact us.