====== FreeBSD ARM ====== %%FreeBSD%% supports both 32-bit and 64-bit ARM chips. * On 32-bit, %%FreeBSD%% supports ARMv6 and ARMv7, termed **arm**, **armv6** and **armv7**, respectively. * Support for ARMv5 was dropped because it was slowing down other development. * Our 64-bit port is called **arm64** (alternatively, **aarch64**). Almost all 32-bit implementations are single boards. Some 64-bit implementations are single boards, but a few are full servers. \\ The servers are better [[arm64|documented here]]. The rest of this page applies to single boards. ===== SoC Families ===== %%FreeBSD%% arm support can be thought of as being related to an %%SoC%% 'family': * [[arm/Allwinner|Allwinner (32-bit and 64-bit)]] * [[arm/imx6|NXP i.MX6 (32-bit)]] * [[arm/OMAP|Texas Instruments OMAP]] * [[arm/Raspberry Pi|Raspberry Pi]] * [[arm/RockChip|RockChip (64-bit)]] * [[arm/Kirkwood|Marvell Kirkwood]] (no longer supported) * zynq_7000 ===== Prebuilt Targets ===== %%FreeBSD%% Release Engineering builds specific images for various boards and these can be found in the **ISO-IMAGES** directory on distribution sites. Due to size and workload concerns images for all supported platforms are not available. Alternatively, images for many boards can be built by [[https://github.com/freebsd/crochet/tree/master/board|crochet]] (deprecated) or using [[arm/Build_image_using_release_building_infrastructure|FreeBSD's release build infrastructure]]. For other boards, some development work may be necessary. However, %%FreeBSD%% has preexisting support for [[arm/U-Boot-ports|U-Boot on many popular boards]]. Also see [[arm/Build_image_notes|notes about the prebuilt images]]. ===== Well supported SBCs ===== Rule of thumb is that if there's a u-boot port your SBC should work fine for generic use, you may however encounter bugs and some drivers might be missing. \\ Current list of u-boot ports: [[https://www.freshports.org/search.php?stype=name&method=match&query=u-boot-&num=100&orderby=category&orderbyupdown=asc&search=Search&format=html&branch=head|Freshports]] \\ For more detailed information please refer to %%SoC%%-family specific page(s). Following %%SoCs%% have good support overall and are listed in no particular order: * Allwinner A64/H2+/H3/H5/H6 * Broadcom BCM2837 (see note below about BCM2711) * NXP i.MX6 * Rockchip RK3328/RK3399, RK3566 support in early development see %%SoC%%-family page for more information **Note:** Due to lack of documentation and overall interest by using Broadcom %%SoCs%% your mileage may vary especially Raspberry Pi 4 series and variants compared to other listed platforms. You are likely to run into issues for "everyday" usage. \\ Not all boards support video output and in such cases serial console is used instead, please refer to [[USB/Peripherals/Serial]] for more information. ===== Developer Resources ===== A variety of information useful to people interested in development on or for ARM systems is available on the [[arm/developer|FreeBSD ARM Developer Resources]] page. ===== User Guides ===== The following HOWTO guides have been contributed by the user community: * [[EmbeddedHandbook|Handbook for compiling/contributing FreeBSD for embedded devices]] * [[FreeBSDAvila|Booting FreeBSD on Gateworks Avila/Cambria boards]] * [[arm/Marvell|Booting FreeBSD on Marvell development boards]] * [[http://people.freebsd.org/~dmarion/beaglebone/creating_bootable_sd_card/|Old instructions for booting FreeBSD on the BeagleBone via SD Card]] ===== Sub-Pages ===== * [[arm/Allwinner|Allwinner]] * [[arm/Ampere|Ampere]] * [[arm/ArndaleBoard|ArndaleBoard]] * [[arm/BeagleBone|BeagleBone]] * [[arm/BeagleBoneBlack|BeagleBoneBlack]] * [[arm/BootProcess|BootProcess]] * [[arm/Build_image_notes|Build_image_notes]] * [[arm/Build_image_using_release_building_infrastructure|Build_image_using_release_building_infrastructure]] * [[arm/Chromebook|Chromebook]] * [[arm/Cubieboard|Cubieboard]] * [[arm/DreamPlugBasics|DreamPlugBasics]] * [[arm/Efika_MX|Efika_MX]] * [[arm/Kirkwood|Kirkwood]] * [[arm/Marvell|Marvell]] * [[arm/NewPlatformGuideline|NewPlatformGuideline]] * [[arm/OMAP|OMAP]] * [[arm/Odroid-C1|Odroid-C1]] * [[arm/Quartz|Quartz]] * [[arm/Raspberry Pi|Raspberry Pi]] * [[arm/Raspberry Pi 2 image|Raspberry Pi 2 image]] * [[arm/Raspberry Pi Camera|Raspberry Pi Camera]] * [[arm/RockChip|RockChip]] * [[arm/SDImage|SDImage]] * [[arm/Self-hosting|Self-hosting]] * [[arm/Toradex_Colibri_VF50|Toradex_Colibri_VF50]] * [[arm/U-Boot-ports|U-Boot-ports]] * [[arm/Ventana|Ventana]] * [[arm/Zedboard|Zedboard]] * [[arm/crossbuild|crossbuild]] * [[arm/developer|developer]] * [[arm/eabi|eabi]] * [[arm/hardabi|hardabi]] * [[arm/imx6|imx6]] * [[arm/netboot|netboot]] * [[arm/pine64|pine64]]