Chen,
What I can say is that omap's kernel accesses number of devices not
actually listed in device-tree.
Yes, omap has real problems with support via dt, it still has a lot of
stuff buried in board files. So you have to do manual mappings of IOMEM
ranges like it is done in exynos5_specific_mapping().
Andrii Anisov | Software Engineer
GlobalLogic
Kyiv, 03038, Protasov Business Park, M.Grinchenka, 2/1
P +38.044.492.9695x3664 M +380505738852 S andriyanisov
www.globallogic.com
http://www.globallogic.com/email_disclaimer.txt
On Mon, Aug 12, 2013 at 3:47 PM, Julien Grall wrote:
> On 08/12/2013 01:24 PM, Chen Baozi wrote:
> > Hi Ian & Julien,
> >
> > I've added SMP "cpu kicking" & "mode switching" codes for OMAP5 today and
> > trying to boot Xen on my board again. And it looks that I still got some
> > work to do to boot my board.
> >
> > I attach the log in the end of mail. Any ideas for what I should have
> > missed?
> >
> > Cheers,
> >
> > Baozi
> >
> > ---
> > Starting kernel ...
> >
> > - UART enabled -
> > - CPU 00000000 booting -
> > - Machine ID 00000ec1 -
> > - Started in Hyp mode -
> > - Zero BSS -
> > - Setting up control registers -
> > - Turning on paging -
> > - Ready -
> > fdt: node `cpu@0': invalid #address-cells or #size-cellsfdt: node `cpu@1
> ':
> > - invalid #addref
>
> Hum ... this is why Xen can't find the other cpus. Could you paste the
> content of the node cpus here?
>
> > MODULE[1]: 00000000a0000000 - 00000000a0400000
> > Placing Xen at 0x00000000fee00000-0x00000000ff000000
> > Xen heap: 262144 pages Dom heap: 258048 pages
> > Looking for UART console serial2
> > __ __ _ _ _ _ _ _ _
> > \ \/ /___ _ __ | || | | || | _ _ _ __ ___| |_ __ _| |__ | | ___
> > \ // _ \ '_ \ | || |_| || |_ __| | | | '_ \/ __| __/ _` | '_ \| |/ _
> \
> > / \ __/ | | | |__ _|__ _|__| |_| | | | \__ \ || (_| | |_) | |
> __/
> > /_/\_\___|_| |_| |_|(_) |_| \__,_|_|
> |_|___/\__\__,_|_.__/|_|\___|
> >
> > (XEN) Xen version 4.4-unstable (cbz@) (arm-linux-gnueabihf-gcc
> (crosstool-NG
> > linaro-1.13.3
> > (XEN) Latest ChangeSet: Wed Aug 7 11:38:25 2013 +0800 git:47f28d7-dirty
> > (XEN) Processor: "ARM Limited", variant: 0x2, part 0xc0f, rev 0x2
> > (XEN) 32-bit Execution:
> > (XEN) Processor Features: 00001131:00011011
> > (XEN) Instruction Sets: AArch32 Thumb Thumb-2 ThumbEE Jazelle
> > (XEN) Extensions: GenericTimer Security
> > (XEN) Debug Features: 02010555
> > (XEN) Auxiliary Features: 00000000
> > (XEN) Memory Model Features: 10201105 20000000 01240000 02102211
> > (XEN) ISA Features: 02101110 13112111 21232041 11112131 10011142
> 00000000
> > (XEN) Platform: TI OMAP5
> > (XEN) Generic Timer IRQ: phys=30 hyp=26 virt=27
> > (XEN) Using generic timer at 6144 KHz
> > (XEN) GIC initialization:
> > (XEN) gic_dist_addr=0000000048211000
> > (XEN) gic_cpu_addr=0000000048212000
> > (XEN) gic_hyp_addr=0000000048214000
> > (XEN) gic_vcpu_addr=0000000048216000
> > (XEN) gic_maintenance_irq=25
> > (XEN) GIC: 192 lines, 2 cpus, secure (IID 0000043b).
> > (XEN) Waiting for 0 other CPUs to be ready
> > (XEN) Using scheduler: SMP Credit Scheduler (credit)
> > (XEN) Allocated console ring of 16 KiB.
> > (XEN) VFP implementer 0x41 architecture 4 part 0x30 variant 0xf rev 0x0
> > (XEN) Brought up 1 CPUs
> > (XEN) *** LOADING DOMAIN 0 ***
> > (XEN) Populate P2M 0x80000000->0x90000000
> > (XEN) Loading kernel from boot module 1
> > (XEN) Loading zImage from 00000000a0000000 to
> > 0000000080008000-00000000803f6d70
> > (XEN) Loading dom0 DTB to 0x000000008fe00000-0x000000008fe04e46
> > (XEN) Std. Loglevel: All
> > (XEN) Guest Loglevel: All
> > (XEN) *** Serial input -> DOM0 (type 'CTRL-a' three times to switch
> input to
> > Xen)
> > (XEN) Freed 220kB init memory.
> > (XEN) Guest data abort: Translation fault at level 3
> > (XEN) gva=fce06704
> > (XEN) gpa=000000004ae06704
>
> Dom0 is trying to access to 4ae06704 which is not mapped. Do you know
> where does this address come from (device tree, hardcoded, ...)?
>
> > (XEN) size=2 sign=0 write=0 reg=0
> > (XEN) eat=0 cm=0 s1ptw=0 dfsc=7
> > (XEN) dom0 IPA 0x000000004ae06704
> > (XEN) P2M @ 02fdbf80 mfn:0xfedfc
> > (XEN) 1ST[0x1] = 0x00000000fedfe6ff
> > (XEN) 2ND[0x57] = 0x00000000ac9796ff
> > (XEN) 3RD[0x6] = 0x0000000000000000
> > (XEN) ----[ Xen-4.4-unstable arm32 debug=y Not tainted ]----
> > (XEN) CPU: 0
> > (XEN) PC: c0033410
>
> To help you, you can use "addr2line -e vmlinux address" to find the
> faulty line in linux. Where address is your pc.
>
> Cheers,
>
> --
> Julien Grall
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xen.org
> http://lists.xen.org/xen-devel
>