Re: FreeBSD/armv6z/clang on Raspberry Pi 512MB (with U-Boot + ubldr)
On Thu, 13 Dec 2012 02:08:50 +0900 Daisuke Aoyama aoy...@peach.ne.jp wrote: Hi, I've created FreeBSD clang world for RPI based on svn 244112 + eabi.diff(NOT USE) + few NetBSD code. I didn't test with -mfloat-abi=softfp but it might work. If you haven't seen there is the start of FreeBSD ARM support in clang: http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20121210/069693.html I'm testing this with the version of clang we have in head and hope to bring in support for clang and ARM soon. Andrew ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org
Re: FreeBSD/armv6z/clang on Raspberry Pi 512MB (with U-Boot + ubldr)
I've created FreeBSD clang world for RPI based on svn 244112 + eabi.diff(NOT USE) + few NetBSD code. I didn't test with -mfloat-abi=softfp but it might work. If you haven't seen there is the start of FreeBSD ARM support in clang: http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20121210/069693.html I'm testing this with the version of clang we have in head and hope to bring in support for clang and ARM soon. I didn't see this, but it's not enough. I already adjusted clang for your EABI patch, so the patched version of clang can be compiled for both OABI(apcs-gnu) and EABI(aapcs). Note that some world code is still broken for EABI w/clang. -- Daisuke Aoyama ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org
FreeBSD/armv6z/clang on Raspberry Pi 512MB (with U-Boot + ubldr)
Hi, I've created FreeBSD clang world for RPI based on svn 244112 + eabi.diff(NOT USE) + few NetBSD code. I didn't test with -mfloat-abi=softfp but it might work. The first version is released at my Japanese blog: http://shell.peach.ne.jp/aoyama/archives/2357 Thank you for many comments to previous versions. Thank you for adding RPI support to FreeBSD. Thank you for porting latest clang to head! It's very useful for RPI developing now. You can get the pre-build image from my archives: http://www.peach.ne.jp/archives/rpi/ (At this time, freebsd-pi-clang-20121213.img.gz is the latest version.) Download and decompress it, then write it to SD. This image requires SD 4GB or more. I'm using as headless server. So, you need a serial console for seeing the boot log. If you need to change the value on it, please mount the second partition (e.g. /dev/da0s2a). If you want the video out, please remove the line of set console=comconsole in /boot/loader.rc. Note: first time, it takes about 2 minutes for generating the SSH keys. This version includes axe(ASIX AX88x7x/760) driver because smsc is not stable. Now cc is clang instead of gcc. If you want to use gcc, specify or edit /etc/make.conf. The initial setup code is taken from NetBSD. Using config is here: http://www.peach.ne.jp/archives/rpi/config/RPI-B-test8 Source and pacth is here: http://www.peach.ne.jp/archives/rpi/patch/ Pre-configured for: MEM 496MB/GPU 16MB/SWAP 512MB I/O: multi-console (primary serial) IP address: 192.168.1.240 Default router: 192.168.1.1 DNS: 192.168.1.1 sshd: enabled User: pi Password: raspberry Password(root): raspberry kernel section limit: TS=256MB, DS=1024MB, SS=256MB example of /etc/make.conf: -- WITHOUT_X11=yes WITH_CLANG=yes WITH_CLANG_IS_CC=yes # Now cc = clang is default #CC=clang #CXX=clang++ #CPP=clang-cpp # For clang NO_WERROR= WERROR= CFLAGS=-O2 -fno-strict-aliasing -pipe -march=armv6z -mtune=arm1176jzf-s -mfloat-abi=soft COPTFLAGS=-O1 -fno-strict-aliasing -pipe -march=armv6z -mtune=arm1176jzf-s -mfloat-abi=soft # For gcc #CC=gcc #CXX=g++ #CPP=cpp -- How to use GPT USB stick in RPI: (if you use something, delete/destory it before doing) # gpart delete -i NN da0 # gpart destroy -F da0 (create new partition and format) # gpart create -s gpt da0 # gpart add -t freebsd-ufs da0 # gpart show # newfs -U -j /dev/da0p1 (mount it) # mount /dev/da0p1 /mnt -- Known problems: o SD card is not configured correctly. (power on/off need if it's failed) o hang the system. (unknown reason) o smsc is not stable. o alignment/padding is not same as gcc. (temporary avoid strict alignment now) o call both IDCACHE_WBINV_ALL and DCACHE_WB_RANGE at switch. (can't work without both) o still depend on GNU as (gas syntax). TODO: o modify/replace bcm2835 drivers. o using clang -integrated-as. o fix alignment with clang. o self build. o use EABI if possible. o create build script :-) Enjoy clang world in Raspberry Pi! Thank you. -- Daisuke Aoyama ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org
Re: FreeBSD/armv6z/clang on Raspberry Pi 512MB (with U-Boot + ubldr)
On 12/12/2012 9:08 AM, Daisuke Aoyama wrote: Hi, I've created FreeBSD clang world for RPI based on svn 244112 + eabi.diff(NOT USE) + few NetBSD code. I didn't test with -mfloat-abi=softfp but it might work. The first version is released at my Japanese blog: http://shell.peach.ne.jp/aoyama/archives/2357 Thank you for many comments to previous versions. Thank you for adding RPI support to FreeBSD. Thank you for porting latest clang to head! It's very useful for RPI developing now. You can get the pre-build image from my archives: http://www.peach.ne.jp/archives/rpi/ (At this time, freebsd-pi-clang-20121213.img.gz is the latest version.) Download and decompress it, then write it to SD. This image requires SD 4GB or more. I'm using as headless server. So, you need a serial console for seeing the boot log. If you need to change the value on it, please mount the second partition (e.g. /dev/da0s2a). If you want the video out, please remove the line of set console=comconsole in /boot/loader.rc. Note: first time, it takes about 2 minutes for generating the SSH keys. This version includes axe(ASIX AX88x7x/760) driver because smsc is not stable. Now cc is clang instead of gcc. If you want to use gcc, specify or edit /etc/make.conf. The initial setup code is taken from NetBSD. Using config is here: http://www.peach.ne.jp/archives/rpi/config/RPI-B-test8 Source and pacth is here: http://www.peach.ne.jp/archives/rpi/patch/ Pre-configured for: MEM 496MB/GPU 16MB/SWAP 512MB I/O: multi-console (primary serial) IP address: 192.168.1.240 Default router: 192.168.1.1 DNS: 192.168.1.1 sshd: enabled User: pi Password: raspberry Password(root): raspberry kernel section limit: TS=256MB, DS=1024MB, SS=256MB example of /etc/make.conf: -- WITHOUT_X11=yes WITH_CLANG=yes WITH_CLANG_IS_CC=yes # Now cc = clang is default #CC=clang #CXX=clang++ #CPP=clang-cpp # For clang NO_WERROR= WERROR= CFLAGS=-O2 -fno-strict-aliasing -pipe -march=armv6z -mtune=arm1176jzf-s -mfloat-abi=soft COPTFLAGS=-O1 -fno-strict-aliasing -pipe -march=armv6z -mtune=arm1176jzf-s -mfloat-abi=soft # For gcc #CC=gcc #CXX=g++ #CPP=cpp -- How to use GPT USB stick in RPI: (if you use something, delete/destory it before doing) # gpart delete -i NN da0 # gpart destroy -F da0 (create new partition and format) # gpart create -s gpt da0 # gpart add -t freebsd-ufs da0 # gpart show # newfs -U -j /dev/da0p1 (mount it) # mount /dev/da0p1 /mnt -- Known problems: o SD card is not configured correctly. (power on/off need if it's failed) o hang the system. (unknown reason) o smsc is not stable. o alignment/padding is not same as gcc. (temporary avoid strict alignment now) o call both IDCACHE_WBINV_ALL and DCACHE_WB_RANGE at switch. (can't work without both) o still depend on GNU as (gas syntax). TODO: o modify/replace bcm2835 drivers. o using clang -integrated-as. o fix alignment with clang. o self build. o use EABI if possible. o create build script :-) Enjoy clang world in Raspberry Pi! Amazing! Thank you for working on it ___ freebsd-current@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org