---
title: "FreeBSD/ARM プロジェクト"
sidenav: developers
---

include::shared/authors.adoc[]
include::shared/ja/urls.adoc[]

= FreeBSD/ARM プロジェクト

== はじめに

このページは、32 および 64 ビット ARM アーキテクチャとハードウェアへの FreeBSD の移植に関する情報をまとめたものです。 ARM への移植に関する議論は、 https://lists.freebsd.org/mailman/listinfo/freebsd-arm[freebsd-arm] メーリングリストで行われています。

== 目次

* <<status,現在の状況>>
* <<hw,ハードウェアリスト>>
* <<todo,課題>>
* <<links,FreeBSD/ARM に関連したリンク>>
* <<miniinst,短いインストールガイド>>
* <<list,FreeBSD/ARM メーリングリスト>>

[[status]]
== 現在の状況]

32 ビット ARM の主なターゲットが組み込み機器であるため、 link:../../[FreeBSD] プロジェクトは公式的なリリースやコンパイル済みの package をこのプラットフォームに対しては提供していません。 そのため、ARM は、公式的には link:{committers-guide}#archs[Tier 2] プラットフォームです。 しかしながら、FreeBSD/ARM は、積極的に開発、管理され、 サポートされています。 また、ARM ベースのシステムを構築する素晴らしいフレームワークが提供されています。 FreeBSD/arm は、ARMv4 および ARMv5 プロセッサに対応しています。 FreeBSD/armv6 は、ARMv6 および ARMv7 プロセッサに対応しており、 後者は SMP に対応しています。

64 ビット ARM については、最初の対応が終わりました。 64 ビット ARM プラットフォームは、標準的な規約に従っているので、 単一の FreeBSD ビルドが複数ベンダのハードウェアで動きます。 そのため、FreeBSD は FreeBSD/arm64 の公式的なリリースと package を提供することを予定しています。 FreeBSD/arm64 は、 link:{committers-guide}#archs[Tier 1] アーキテクチャとなる道をたどっています。

[[hw]]
== FreeBSD/ARM ハードウェアノート

FreeBSD/arm および FreeBSd/armv6 は、ARM CPU および開発用基板に幅広く対応しています。 すべての CPU もしくはボードがすべての周辺機器に対応しているわけではありませんが、 対応に向けた作業は続いており、貢献者はいつでも歓迎されます。 一方で、一覧にない CPU およびボードの多くは、 最小限の変更で動作するでしょう。

このページですべての CPU およびボードが対応しているすべてのデバイスの一覧を提供することは現実的ではありません。 多くの情報は、メーリングリストおよびそのアーカイブ、 https://wiki.freebsd.org/FreeBSD/arm[FreeBSD/arm Wiki ページ] および https://cgit.freebsd.org/src/tree/sys/arm/conf/[カーネルコンフィグレーションファイル] で見つけることができます。

=== 対応しているコア

* ARM9E
* Most XScale
* Marvel Feroceon
* Marvel Sheeva
* ARM10E
* ARM11J
* Cortex A5
* Cortex A7
* Cortex A8
* Cortex A9
* Cortex A12
* Cortex A15

=== SoCs

* Allwinner A10/A20
* Atmel AT91RM92 and AT91SAM9 families
* Broadcom BCM2835 (used in Raspberry Pi)
* Cavium CNS11xx
* Freescale i.MX51, i.MX53, i.MX6 and Vybrid Family
* Intel XSCALE
* Marvell Orion, Kirkwood and Discovery Innovation families of systems-on-chip
* Marvell Armada 500 (ARMv6) and Armada XP (ARMv7)
* NXP LPC32x0
* Qualcomm Snapdragon
* Rockchip RK3188
* Samsung Exynos5 and S3C24xxx
* Texas Instruments DaVinci Digital Media SoC
* TI OMAP
* Xilinx Zynq7 family

すべての CPU がすべての周辺機器に対応しているわけではありません。

=== ボード

* ArndaleBoard (Samsung Exynos5250)
* Atmel AT91RM9200
* BeagleBoard and BeagleBoard-xM (TI OMAP3)
* BeagleBone
* Colibri VF50 Evaluation Board
* Cubieboard(1,2) (Allwinner A10/A20)
* Device Solutions Quartz
* Gateworks Avila GW2348 and Cambria GW2358
* Genesi Efika MX Smarttop and Smartbook
* Globalscale Technologies OpenRD platform
* Google Chromebook
* Kwikbyte KB9202B (as well as the older KB9202 and KB9202A)
* Linksys NSLU2
* Marvell DB-88F5182, DB-88F5281, DB-88F6281, RD-88F6281, DB-78100
* Marvell DB-88F6781 (ARMv6)
* Marvell DB-78460 (ARMv7)
* Marvell Sheeva Plug and Dream Plug
* Pandaboard (OMAP4)
* Phytec Cosmic Board (Freescale Vybrid Family)
* Raspberry Pi
* Radxa Rock (Work in progress)
* SBC6045 with Atmel at91sam9g45
* Technologic Systems TS-7200 and TS-7800
* Wandboard
* Zedboard (Xilinx Zynq)

すべてのボードがすべての周辺機器に対応しているわけではありません。

[[todo]]
== 課題

* 現在 SATA に非対応のボードに SATA への対応を追加する必要があります。
* ウォッチドッグ、i2c, バス等、他のデバイスを NetBSD から取り込むべきです。

[[links]]
== FreeBSD/ARM に関連したリンク

* http://esd.et.ntust.edu.tw/downloads/2008_Embedded_Programming/2008_ESW/Embedded_3_ARM.pdf[ARM の歴史についての概要]
* http://www.netbsd.org/ports/#ports-by-cpu[NetBSD Arm プロジェクト]

[[miniinst]]
== 短いインストールガイド

{cognet} が、現時点の FreeBSD ソースコード用の短いインストールガイドを書きました。link:https://people.freebsd.org/~cognet/arm.html[ここ] から入手できます。

[[list]]
== FreeBSD/ARM メーリングリスト

このメーリングリストを購読するには、`+<freebsd-arm-subscribe@FreeBSD.org>+` にメールを送るか、 http://lists.FreeBSD.org/mailman/listinfo/freebsd-arm[mailman インターフェース] を参照してください。
