Port-arm archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
aarch64 support added
Hi! all,
I have committed about adding initial support for aarch64.
booting log on RaspberryPI3:
boot NetBSD/evbarm (aarch64)
Drop to EL1...OK
Creating VA=PA tables
Creating KSEG tables
Creating KVA=PA tables
Creating devmap tables
MMU Enable...OK
VSTART = ffffffc000001ff4
FDT<3ab46000> devmap cpufunc bootstrap consinit ok
uboot: args 0x3ab46000, 0, 0, 0
NetBSD/evbarm (fdt) booting ...
FDT /memory [0] @ 0x0 size 0x3b000000
MEM: add 0-3b000000
MEM: res 0-1000
MEM: res 3ab46000-3ab4a000
Usable memory:
1000 - 3ab45fff
3ab4a000 - 3affffff
initarm: kernel phys start 1000000 end 17bd000
MEM: res 1000000-17bd000
bootargs: root=axe0
1000 - ffffff
17bd000 - 3ab45fff
3ab4a000 - 3affffff
------------------------------------------
kern_vtopdiff = 0xffffffbfff000000
physical_start = 0x0000000000001000
kernel_start_phys = 0x0000000001000000
kernel_end_phys = 0x00000000017bd000
physical_end = 0x000000003ab45000
VM_MIN_KERNEL_ADDRESS = 0xffffffc000000000
kernel_start_l2 = 0xffffffc000000000
kernel_start = 0xffffffc000000000
kernel_end = 0xffffffc0007bd000
kernel_end_l2 = 0xffffffc000800000
(kernel va area)
(devmap va area)
VM_MAX_KERNEL_ADDRESS = 0xffffffffffe00000
------------------------------------------
Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017,
2018 The NetBSD Foundation, Inc. All rights reserved.
Copyright (c) 1982, 1986, 1989, 1991, 1993
The Regents of the University of California. All rights reserved.
NetBSD 8.99.14 (RPI64) #11: Fri Mar 30 12:34:19 JST 2018
ryo@moveq:/usr/home/ryo/tmp/netbsd-src-ryo-wip/sys/arch/evbarm/compile/RPI64
total memory = 936 MB
avail memory = 877 MB
armfdt0 (root)
fdt0 at armfdt0: Raspberry Pi 3 Model B
fdt1 at fdt0
fdt2 at fdt0
fdt3 at fdt0
fclock0 at fdt2: 19200000 Hz fixed clock
fclock1 at fdt2: 480000000 Hz fixed clock
cpus0 at fdt0
cpu0 at cpus0: Cortex-A53 r0p4 (Cortex V8-A core)
cpu0: CPU Affinity 0-0-0-0
cpu0: IC enabled, DC enabled, EL0/EL1 stack Alignment check enabled
cpu0: Cache Writeback Granule 16B, Exclusives Reservation Granule 16B
cpu0: Dcache line 64, Icache line 64
cpu0: L1 32KB/64B 2-way read-allocate VIPT Instruction cache
cpu0: L1 32KB/64B 4-way write-back read-allocate write-allocate PIPT Data cache
cpu0: L2 512KB/64B 16-way write-back read-allocate write-allocate PIPT Unified cache
cpu0: revID=0x80, PMCv3, 4k table, 64k table, 16bit ASID
cpu0: auxID=0x10000, FP, CRC32, NEON, rounding, NaN propagation, denormals, 32x64bitRegs, Fused Multiply-Add
cpu1 at cpus0: disabled (uniprocessor kernel)
cpu2 at cpus0: disabled (uniprocessor kernel)
cpu3 at cpus0: disabled (uniprocessor kernel)
bcmicu0 at fdt1
bcmicu1 at fdt1
bcmcprman0 at fdt1: BCM283x Clock Controller
gtmr0 at fdt0: Generic Timer
gtmr0: interrupting on local_intc irq 3
armgtmr0 at gtmr0: ARMv7 Generic 64-bit Timer (19200 kHz)
bcmaux0 at fdt1
/soc/thermal@7e212000 at fdt1 not configured
/soc/dsi@7e209000 at fdt1 not configured
bcmgpio0 at fdt1: GPIO controller
gpio0 at bcmgpio0: 32 pins
gpio1 at bcmgpio0: 22 pins
bcmdmac0 at fdt1: DMA0 DMA2 DMA4 DMA5 DMA8 DMA9 DMA10
/soc/power at fdt1 not configured
bsciic0 at fdt1: Broadcom Serial Controller
iic0 at bsciic0: I2C bus
/phy at fdt0 not configured
bcmmbox0 at fdt1: VC mailbox
bcmmbox0: interrupting on icu irq 193
vcmbox0 at bcmmbox0
/soc/firmware at fdt1 not configured
/framebuffer@3daf0000 at fdt0 not configured
gpioleds0 at fdt0: ACT
/soc/timer@7e003000 at fdt1 not configured
watchdog0 at fdt1: Power management, Reset and Watchdog controller
bcmrng0 at fdt1: RNG
plcom0 at fdt1
plcom0: txfifo disabled
sdhost0 at fdt1: SD HOST controller
sdhost0: interrupting on icu irq 184
bsciic1 at fdt1: Broadcom Serial Controller
iic1 at bsciic1: I2C bus
/soc/pixelvalve@7e206000 at fdt1 not configured
/soc/pixelvalve@7e207000 at fdt1 not configured
com0 at fdt1: BCM AUX UART, working fifo
com0: console
com0: interrupting on icu irq 157
/soc/pwm@7e20c000 at fdt1 not configured
sdhc0 at fdt1: SDHC controller
sdhc0: interrupting on icu irq 190
/soc/hvs@7e400000 at fdt1 not configured
bsciic2 at fdt1: Broadcom Serial Controller
iic2 at bsciic2: I2C bus
/soc/vec@7e806000 at fdt1 not configured
/soc/pixelvalve@7e807000 at fdt1 not configured
/soc/hdmi@7e902000 at fdt1 not configured
dwctwo0 at fdt1: USB controller
dwctwo0: interrupting on icu irq 137
/soc/v3d@7ec00000 at fdt1 not configured
/soc/gpu at fdt1 not configured
genfb0 at fdt1rpi_fb_init: addr = 0xfd876000 size = 3686400
rpi_fb_init: depth = 32
rpi_fb_init: pitch = 5120
rpi_fb_init: width = 1280 height = 720
rpi_fb_init: vwidth = 1280 vheight = 720
wsdisplay0 at genfb0 kbdmux 1
/soc/vchiq at fdt1 not configured
sdmmc0 at sdhost0
sdhc0: SDHC 3.0, rev 153, platform DMA, 250000 kHz, HS 3.3V, re-tuning mode 1, 1024 byte blocks
sdmmc1 at sdhc0 slot 0
usb0 at dwctwo0: USB revision 2.0
sdhc0: cmd timeout error
ld0 at sdmmc0: <0x03:0x5344:SU02G:0x80:0x10f597b8:0x076>
uhub0 at usb0: vendor 0000 (0000) DWC2 root hub (0000), class 9/0, rev 2.00/1.00, addr 1
ld0: 1938 MB, 984 cyl, 64 head, 63 sec, 512 bytes/sect x 3970048 sectors
ld0: 4-bit width, 25.000 MHz
(manufacturer 0x2d0, product 0xa9a6) at sdmmc1 function 1 not configured
(manufacturer 0x2d0, product 0xa9a6) at sdmmc1 function 2 not configured
uhub1 at uhub0 port 1: vendor 0424 (0x424) product 9514 (0x9514), class 9/0, rev 2.00/2.00, addr 2
uhub1: multiple transaction translators
usmsc0 at uhub1 port 1
usmsc0: vendor 0424 (0x424) product ec00 (0xec00), rev 2.00/2.00, addr 3
usmsc0: Ethernet address b8:27:eb:da:55:5e
ukphy0 at usmsc0 phy 1: OUI 0x00800f, model 0x000c, rev. 3
ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
axe0 at uhub1 port 3
axe0: ASIX Elec. Corp. (0xb95) AX887 (0x7720), rev 2.00/0.01, addr 4
axe0: Ethernet address 00:90:cc:e5:2b:39
ukphy1 at axe0 phy 16: OUI 0x007063, model 0x0006, rev. 1
ukphy1: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
uhub0: illegal enable change, port 1
WARNING: 1 error while detecting hardware; check system log.
boot device: ld0
root on axe0
nfs_boot: trying static
nfs_boot: client_addr=172.17.4.63
nfs_boot: gateway=172.17.4.40
nfs_boot: netmask=255.255.0.0
nfs_boot: server=172.17.4.40
nfs_boot: root=172.17.4.40:/usr/home/ryo/tmp/netbsd-src-ryo-wip/work.evbarm64-el/tree
root on 172.17.4.40:/usr/home/ryo/tmp/netbsd-src-ryo-wip/work.evbarm64-el/tree
root file system type: nfs
kern.module.path=/stand/evbarm/8.99.14/modules
WARNING: no TOD clock present
WARNING: using filesystem time
WARNING: CHECK AND RESET THE DATE!
Fri Mar 30 12:35:14 JST 2018
Not checking /: fs_passno = 0 in /etc/fstab
Starting file system checks:
random_seed: /var/db/entropy-file: Not present
Setting tty flags.
Setting sysctl variables:
ddb.onpanic: 1 -> 0
machdep.cpu.frequency.target: 600 -> 1200
Starting network.
Hostname: rpi3
IPv6 mode: host
Configuring network interfaces:.
Adding interface aliases:.
add net default: gateway 172.17.4.1
Waiting for DAD to complete for statically configured addresses...
Building databases: dev, utmp, utmpx.
Starting syslogd.
Mounting all file systems...
Clearing temporary files.
Checking quotas: done.
Setting securelevel: kern.securelevel: 0 -> 1
/etc/rc: WARNING: No swap space configured!
/etc/rc.d/swap2 exited with code 1
Starting virecover.
Checking for core dump...
savecore: (null): _dumplo not in namelist
Starting local daemons:.
Updating motd.
Starting sshd.
Starting inetd.
Starting cron.
The following components reported failures:
/etc/rc.d/swap2
See /var/run/rc.log for more information.
Fri Mar 30 12:35:31 JST 2018
NetBSD/evbarm (rpi3) (console)
login: root
dLast login: Fri Mar 30 12:30:24 2018 on console
Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017,
2018 The NetBSD Foundation, Inc. All rights reserved.
Copyright (c) 1982, 1986, 1989, 1991, 1993
The Regents of the University of California. All rights reserved.
NetBSD 8.99.14 (RPI64) #11: Fri Mar 30 12:34:19 JST 2018
Welcome to NetBSD!
This system is running a development snapshot of the NetBSD operating system,
also known as NetBSD-current. It is very possible that it has serious bugs,
regressions, broken features or other problems. Please bear this in mind
and use the system with care.
You are encouraged to test this version as thoroughly as possible. Should you
encounter any problem, please report it back to the development team using the
send-pr(1) utility (requires a working MTA). If yours is not properly set up,
use the web interface at: http://www.NetBSD.org/support/send-pr.html
Thank you for helping us test and improve NetBSD.
We recommend that you create a non-root account and use su(1) for root access.
rpi3# uname -ap
NetBSD rpi3 8.99.14 NetBSD 8.99.14 (RPI64) #11: Fri Mar 30 12:34:19 JST 2018 ryo@moveq:/usr/home/ryo/tmp/netbsd-src-ryo-wip/sys/arch/evbarm/compile/RPI64 evbarm aarch64
rpi3#
Now, multiuser mode works stably on fdt based boards (RPI3,SUNXI,TEGRA).
But there are still some problems, more time is required for release.
also SMP is not yet. See sys/arch/aarch64/aarch64/TODO for more detail.
Especially the problems around TLS of rtld, and C++ stack unwindings are
too difficult for me to solve, I give up and need someone's help \(^o^)/
Since C++ doesn't work, ATF also doesn't work. If the ATF works, it will
clarify more issues.
sys/arch/evbarm64 is gone and integrated into sys/arch/evbarm. One
evbarm/conf/GENERIC64 kernel binary supports all fdt (bcm2837,sunxi,tegra)
based boards. While on 32bit, sys/arch/evbarm/conf/GENERIC will support all
fdt based boards...but doesn't work yet. (WIP)
My deepest appreciation goes to Tohru Nishimura (nisimura@) whose writes vector
handlers, context switchings, and so on. and his comments and suggestions were
innumerably valuable. I would also like to thank Nick Hudson (skrll@) and
Jared McNeill (jmcneill@) whose added support FDT and integrated into evbarm.
Finally, I would like to thank Matt Thomas (matt@) whose commited aarch64
toolchains and preliminary support for aarch64.
Thanks,
--
ryo shimizu
Home |
Main Index |
Thread Index |
Old Index