![]()
Linux SmartFusion 2
Guía BSP (Paquete de soporte de placa) para a placa Microsemi SF2-DEV-KIT
Versión 1.10.1
Sistemas Emcraft
1. Rematadoview
Este documento é unha guía Linux SmartFusion2 BSP (Paquete de soporte para placas) para a placa Microsemi SF2-DEV-KIT, versión 1.10.1.
O BSP ofrece un ambiente de desenvolvemento de software para a avaliación e desenvolvemento de Linux no núcleo do procesador Cortex-M3 do microcontrolador Microsemi SmartFusion2 utilizando a placa Microsemi SF2-DEV-KIT como plataforma de hardware.
2. Contido do produto
Este produto inclúe os seguintes compoñentes.
2.1. Elementos de hardware enviables
Os seguintes elementos de hardware envíanse aos clientes deste produto:
- Ningún: ESTE É UN PAQUETE SÓ PARA SOFTWARE. Compre a placa SF2-DEV-KIT de Microsemi ou dos seus distribuidores.
2.2. Materiais de hardware descargables
Os seguintes materiais de hardware están dispoñibles para descargar desde Emcraft's web sitio para os clientes deste produto:
- Ningún: obtén materiais de hardware pertinentes para a placa SF2-DEV-KIT directamente de Microsemi.
2.3. Materiais de software descargables
Os seguintes materiais de software están dispoñibles para descargar desde Emcraft's web sitio para os clientes deste produto:
- sf2-dev-kit.stp – SF2-DEV-KIT Libero .stp file coa imaxe U-Boot incrustada, lista para a instalación no SF2-DEV-KIT mediante a ferramenta Microsemi FlashPro;
- sf2-dev-kit.zip – proxecto Liber SF2-DEV-KIT;
- networking.uImage: imaxe de Linux preconstruída lista para ser cargada na placa SF2-DEV-KIT;
- linux-M2S-1.10.1.tar.bz2 - Contorno de desenvolvemento de software Linux SmartFusion2, que inclúe:
a) firmware U-Boot;
b) núcleo de Linux;
c) busybox e outros compoñentes de destino;
d) Contorno de desenvolvemento cruzado aloxado en Linux;
e) Marco para o desenvolvemento de múltiples proxectos (aplicacións embebidas) desde unha única instalación, incluíndo sample permiten iniciar o desenvolvemento de software para Linux SmartFusion2.
2.4. Materiais de documentación descargables
Os seguintes materiais de documentación están dispoñibles para descargar desde Emcraft's web sitio para os clientes deste produto:
- linux-cortexm-um-1.10.1.pdf – Manual de usuario de Linux Cortex-M;
- linux-SF2-DEV-KIT-bspg-1.10.1.pdf – Guía de Linux SmartFusion2 BSP (paquete de soporte para placas) para a placa Microsemi SF2-DEV-KIT (este documento).
3. Funcionalidade do software
3.1. Funcións admitidas
A seguinte lista resume as características e capacidades de Linux SmartFusion2, versión 1.10.1:
- Firmware U-Boot:
- U-Boot v2010.03;
- Inicialización de destino desde o acendido / reinicio;
- Funciona desde o eNVM interno e a SRAM interna (non se precisa memoria externa para o funcionamento autónomo);
- consola serie;
- Controlador Ethernet para cargar imaxes no destino;
- Controlador de serie para cargar imaxes no destino;
- Controlador de dispositivo para Flash integrado (eNVM) e capacidade de actualización automática;
- Controlador de dispositivo para almacenar imaxes do entorno e Linux en Flash externo;
- Función de arranque automático, que permite o arranque de imaxes do SO desde Flash ou outro almacenamento sen intervención do operador;
- Ambiente persistente en Flash para a personalización da operación de destino;
- Interface de comando sofisticada para o mantemento e desenvolvemento do destino.
- Linux:
- kernel uClinux v2.6.33;
- Arranque desde imaxes comprimidas e sen comprimir;
- Capacidade de executar código do núcleo crítico desde o Flash integrado de SmartFusion2;
- controlador de dispositivo en serie e consola Linux;
- Controlador de dispositivos Ethernet e rede (ping, NFS, Telnet, FTP, ntpd, etc.);
- busybox v1.17;
- POSIX pthreads;
- Protección de proceso a núcleo e de proceso a proceso mediante a Unidade de protección de memoria (MPU) do núcleo SmartFusion2;
- Manexo de excepcións endurecido; unha excepción desencadeada por un proceso afecta só ao proceso infractor;
- Módulos do núcleo cargables;
- Demonio de shell seguro (ssh);
- Web servidor;
- Partición Flash baseada en MTD e Flash JFFS2 persistente file sistema para Flash externo;
- Controlador de dispositivo para a interface USB OTG;
- controlador de dispositivo I²C;
- controlador de dispositivo de modo mestre do controlador SPI;
- Controlador de dispositivo para a NVM integrada;
- controlador de dispositivo GPIO.
- Ferramentas de desenvolvemento:
- A cadea de ferramentas GNU optimizada para ARMv7 de CodeSourcery (2010q1) úsase para o desenvolvemento de U-Boot, Linux e aplicacións de espazo de usuario (a cadea de ferramentas debe descargarse por separado de CodeSourcery). web sitio);
- Cross GDB para depurar aplicacións de espazo de usuario;
- Ferramenta mkimage utilizada polo proceso de compilación do núcleo de Linux para crear unha imaxe de Linux que se pode iniciar mediante U-Boot.
- Entorno de desenvolvemento:
- entorno de desenvolvemento cruzado aloxado en Linux;
- Desenvolvemento de múltiples proxectos (aplicacións embebidas) desde unha única instalación;
- ola sample project ("Ola, mundo!" Configuración dun só proceso);
- rede sample project (demostración de ferramentas básicas de xestión de shell, redes e Flash);
- desenvolvedor sample project (proxecto modelo que se pode usar para iniciar o desenvolvemento de aplicacións personalizadas de espazo de usuario e módulos de núcleo cargables).
3.2. Funcións novas e modificadas
Esta sección enumera as funcións novas e modificadas desta versión:
- Resolve o seguinte defecto: a interface Ethernet non funciona con U-boot e uClinux.
Código: RT 82124. - Resolve o seguinte defecto: o comando sf erase U-Boot non admite un intervalo arbitrario.
Código: RT 85334. - Mellora o tempo de arranque das configuracións habilitadas para a rede en Linux Cortex-M3/M4.
Código: RT 85493.
3.3. Problemas coñecidos e limitacións
Esta sección enumera os problemas coñecidos e as limitacións desta versión:
- A interface Ethernet non funciona en redes de 100 Mb.
Código: RT 86022.
Solución: conecte a placa a unha rede de 1000 Mb. - CONFIG_KERNEL_IN_ENVM require desactivar CONFIG_ARM_UNWIND e CONFIG_EARLY_PRINTK.
Código: RT 74683.
Solución: ao activar CONFIG_KERNEL_IN_ENVM no núcleo, desactive CONFIG_ARM_UNWIND e CONFIG_EARLY_PRINTK. - A conexión quente USB non funciona en SmarFusion2 baixo uClinux.
Código: RT 82415.
Solución alternativa: a limitación levantarase na próxima versión.
4. Configuración do hardware
Esta sección explica como configurar a tarxeta Microsemi SF2-DEV-KIT.
4.1. Interfaces de hardware
A placa SF2-DEV-KIT ofrece os seguintes compoñentes e interfaces:

- DC Jack
- Interruptor de encendido
- Cabeceira FP4
- Conector POE
- Interruptor de reinicio
- SmartFusion 2
- Memoria DDR3
- Conector RS232
- Conector USB Micro AB
- Flash SPI
4.2. Puentes
Os seguintes puentes deben configurarse na tarxeta SF2-DEV-KIT. Os puentes que non se mencionan na seguinte táboa deberían estar conectados cos axustes predeterminados descritos na Guía do usuario do SF2-DEV-KIT de Microsemi.
|
Jumper |
Función |
Configuración |
| SPI_0 | ||
| J110 | Jumper para seleccionar entre SPI Flash SCK e FMC_V22. | |
| Pin 1-2 SPI Flash | Pechado | |
| Pin 2-3 FMC | Aberto | |
| J118 | Jumper para seleccionar entre SPI Flash SDO e FMC_W27. | |
| Pin 1-2 SPI Flash | Pechado | |
| Pin 2-3 FMC | Aberto | |
| J119 | Jumper para seleccionar entre SPI Flash SDI e FMC_Y30. | |
| Pin 1-2 SPI Flash | Pechado | |
| Pin 2-3 FMC | Aberto | |
| J121 | Jumper para seleccionar entre SPI Flash SS e FMC_W28. | |
| Pin 1-2 SPI Flash | Pechado | |
| Pin 2-3 FMC | Aberto | |
| SPI_1 | ||
| J20 | Jumper para seleccionar entre ZL30362 SPI_CS e FT4232 SPI_CS. | |
| Pin 1-2 ZL30362 | Pechado | |
| Pin 2-3 FT4232 | Aberto | |
| J21 | Jumper para seleccionar entre ZL30362 SPI_SCL e FT4232 SPI_SCL. | |
| Pin 1-2 ZL30362 | Pechado | |
| Pin 2-3 FT4232 | Aberto | |
| J22 | Jumper para seleccionar entre ZL30362 SPI_SO e FT4232 SPI_SI. | |
| Pin 1-2 ZL30362 | Pechado | |
| Pin 2-3 FT4232 | Aberto | |
| J25 | Jumper para seleccionar entre ZL30362 SPI_SI e FT4232 SPI_SO. | |
| Pin 1-2 ZL30362 | Pechado | |
| Pin 2-3 FT4232 | Aberto | |
| J54 | Jumper para seleccionar entre o restablecemento de ZL30362 e o restablecemento de FT4232 desde VSS do dispositivo SmartFusion2. | |
| Pin 1-2 ZL30362 | Pechado | |
| Pin 2-3 FT4232 | Aberto | |
| USB | ||
| J139 | Jumper para seleccionar entre USB reset e FMC_P24. | |
| Pin 1-2 USB | Pechado | |
| Pin 2-3 FMC | Aberto | |
| J163 | Jumper para seleccionar o modo de funcionamento USB. | |
| Pin 1-2 Modo On-The-Go (OTG). | Pechado | |
| Pin 2-3 Modo host ou dispositivo | Aberto | |
| J164 | Jumper para proporcionar a subministración VBUS a USB cando se usa no modo Host. | 1–2 Pechado |
| MMUART_1 | ||
| J188 | Jumper para seleccionar entre RS232_DIN e FMC_H30. | |
| Pin 1-2 RS232 | Pechado | |
| Pin 2-3 FMC | Aberto | |
| J197 | Jumper para seleccionar entre RS232_ROUT e FMC_G29. | |
| Pin 1-2 RS232 | Pechado | |
| Pin 2-3 FMC | Aberto | |
4.3. Conexións da placa
Para proporcionar alimentación á placa SF2-DEV-KIT, conecte un cable de alimentación á toma de alimentación da placa (J18).
Para proporcionar unha interface en serie a un PC/portátil, conecte un cable RS-232 de módem nulo ao conector J198 da placa. No lado do PC, a ligazón en serie proporciona un dispositivo de consola serie ao SF2-DEV-KIT. O software instalado na placa está configurado para un terminal de 115.2 K. No host Linux, a consola serie está dispoñible usando un dispositivo /dev/ttySn.
Para proporcionar conectividade de rede á placa, conéctaa á súa LAN conectando un cable Ethernet estándar ao conector J4. A placa está preconfigurada cun enderezo IP de 192.168.0.2.
Conecte a placa SF2-DEV-KIT a unha ferramenta programadora Microsemi FlashPro conectando un J estándar.TAG cable no conector J59. En canto instale o firmware U-Boot e un proxecto Libero axeitado na placa (consulte a Sección 5.1), pode eliminar a conexión co programador FlashPro.
Tamén pode conectar un cable USB MicroA ou USB MicroB ao conector P1 USB Micro AB. Pódese usar para conectar un dispositivo USB Flash, para facer visible SmartFusion2 como dispositivo de almacenamento USB nun host USB e para outras aplicacións.
Conecte a alimentación á placa SF2-DEV-KIT mediante o interruptor de alimentación incorporado.
5. Configuración do software Linux da placa SF2-DEV-KIT
5.1. Instalación de U-Boot
U-Boot pódese instalar na placa Microsemi SmartFusion2 SF2-DEV-KIT usando o proxecto Linux SmartFusion2 Libero proporcionado por Emcraft e unha ferramenta Microsemi FlashPro. Aquí está un example de como se pode facer isto:
- Inicie FlashPro nun servidor Windows;
- Desde o IDE de FlashPro, cree un novo proxecto cun nome arbitrario;
- Desde a xanela principal de FlashPro, preme Configurar dispositivo;
- Preme Navegar ao lado para cargar a programación existente file. Navega ata o proxecto Linux SmartFusion2 .stp file para a placa SmartFusion2 SF2-DEV-KIT e escóllea.
- Preme Programa na parte superior da xanela principal para programar o proxecto no dispositivo SmartFusion2 e agarda a que se complete o procedemento de programación. Se a programación se completa con éxito, un próximo restablecemento debería traer as mensaxes de inicio de U-Boot e a interface de liña de comandos na interface da consola serie.
5.2. Ambiente U-Boot
Cando se restableza a placa SF2-DEV-KIT, o arranque de Linux procederá a iniciar o firmware U-Boot desde o Flash incorporado imprimindo a seguinte saída na consola serie:
| U-Boot 2010.03-linux-cortexm-1.10.1 (11 de xuño de 2013 - 19:43:46)
CPU: SmartFusion2 SoC (Cortex-M3 Hard IP) |
| Memoria RAM: 64 MB En: serie Saída: serie Err: serie Rede: M2S_MAC Prema calquera tecla para deter o arranque automático: 0 SF2-DEV-KIT> |
U-boot fai uso das chamadas variables de ambiente para definir varios aspectos da funcionalidade do sistema. Os parámetros definidos polas variables de ambiente U-boot inclúen: enderezo IP de destino, enderezo MAC de destino, enderezo na RAM onde se cargarán imaxes de arranque de Linux e moitos máis. Para examinar a configuración actual das variables de ambiente, execute printenv desde a interface de comandos de U-Boot.
O motivo da advertencia sobre o "mal CRC" é que U-Boot está configurado para almacenar as súas variables de ambiente no Flash externo. Non obstante, sendo esta a primeira vez que arranca Linux SmartFusion2 na placa de desenvolvemento, obviamente non hai ningún ambiente U-Boot programado para o Flash externo. U-Boot vai ao Flash externo, non atopa o seu entorno alí, imprime a mensaxe de aviso e recorre ao uso do ambiente predeterminado integrado na imaxe de U-Boot no momento da construción.
U-Boot ofrece un comando chamado saveenv que almacena o ambiente de execución actualizado no almacenamento persistente, que será o Flash externo para a configuración de U-Boot usada na placa SF2-DEV-KIT. Debe chamar a saveenv en calquera momento cando quere copiar a configuración actual das variables de ambiente ao almacenamento persistente en Flash. Deste xeito podes escribir o ambiente de U-Boot actual no Flash externo:
| SF2-DEV-KIT> saveenv Gardando o ambiente en SPI Flash... Erasing SPI flash…Writing to SPI flash…done SF2-DEV-KIT> |
Restablece a placa SF2-DEV-KIT e comprobe que non hai ningún aviso sobre o CRC incorrecto nas mensaxes de inicio. Isto espérase xa que agora U-Boot atopa con éxito o seu entorno no Flash externo:
| SF2-DEV-KIT> restablecer restablecendo ... U-Boot 2010.03-linux-cortexm-1.10.1 (11 de xuño de 2013 - 19:43:45) … Prema calquera tecla para deter o arranque automático: 0 SF2-DEV-KIT> |
5.3. Enderezo MAC Ethernet
En Linux SmartFusion2, o enderezo MAC da interface Ethernet está definido pola variable de ambiente ethaddr U-Boot. O valor do enderezo MAC pódese examinar desde o monitor da liña de comandos de UBoot do seguinte xeito:
| SF2-DEV-KIT> printenv ethaddr ethaddr=C0:B1:3C:88:88:88 SF2-DEV-KIT> |
O entorno U-Boot predeterminado para a placa SF2-DEV-KIT establece ethaddr nun enderezo MAC fixo. Este enderezo debería funcionar para ti nun caso xeral, non obstante, se tes máis de dúas placas SF2-DEV-KIT na túa LAN, o uso do mesmo enderezo en varias placas pode producir colisións de paquetes na túa LAN e, en xeral, pode render a túa LAN mal funcionamento.
Se tes máis dunha placa SF2-DEV-KIT na túa LAN, tes que asignar un enderezo MAC único a cada placa.
O enderezo MAC pódese cambiar modificando a variable ethaddr do seguinte xeito:
| SF2-DEV-KIT> setenv ethaddr C0:B1:3C:88:88:89 |
Non esquezas almacenar a túa actualización no almacenamento persistente mediante saveenv para que se recorde durante os reinicios e os ciclos de acendido.
5.4. Configuración de rede
Terás que actualizar a configuración de rede do teu taboleiro para que coincida coa configuración do teu ambiente local.
Normalmente, o único que tes que permitir cargar imaxes a través da rede desde un servidor TFTP é actualizar as variables de ambiente de U-Boot ipaddr (o enderezo IP da placa) e serverip (o enderezo IP do servidor TFTP). Velaquí como se fai.
Actualizar ipaddr e serverip:
| SF2-DEV-KIT> setenv ipaddr 192.168.0.2 SF2-DEV-KIT> setenv serverip 192.168.0.1 |
e, a continuación, garda o ambiente actualizado no Flash externo para que os cambios sexan persistentes durante os ciclos de reinicio/encendido.
5.5. Cargando imaxes de Linux
Neste punto, podes cargar imaxes de arranque de Linux no taboleiro a través de TFTP e inicialas directamente ou instalalas no Flash externo para permitir o arranque de Linux desde Flash ao acender/reiniciar.
No servidor, active o ambiente de desenvolvemento Linux SmartFusion2 e constrúe o proxecto de rede:
| -bash-3.2 $. ACTIVAR.sh -bash-3.2$ proxectos de CD/rede/ -bash-3.2$ facer … -bash-3.2 $ |
Copia a imaxe de arranque de Linux no directorio de descargas TFTP:
| -bash-3.2$ cp networking.uImaxe /tftpboot/vlad/ -bash-3.2 $ |
Para cargar a imaxe directamente, use a macro U-Boot de netboot:
| SF2-DEV-KIT> setenv image vlad/networking.uImaxe SF2-DEV-KIT> executa o arranque da rede … TFTP do servidor 172.17.0.1; o noso enderezo IP é 172.17.5.100 Filenome 'vlad/networking.uImage'. … Cargando: ################################################ ################# ##################################################### ############### ############# feito Bytes transferidos = 2084704 (1fcf60 hexadecimal) … Nome da imaxe: Linux-2.6.33-arm1 Tipo de imaxe: Imaxe do núcleo ARM Linux (sen comprimir) … Verificando a suma de comprobación... OK Cargando imaxe do núcleo... Aceptar OKIniciando o kernel...Versión de Linux 2.6.33-arm1 (vlad@ocean.emcraft.com) (versión de gcc 4.4.1 (Sourcery G++ Lite 2010q1-189) ) #1 Mar 11 de xuño 15:43:44 MSK 2013 … |
Para cargar a imaxe no Flash, use a macro de actualización de U-Boot:
| SF2-DEV-KIT> setenv image vlad/networking.uImaxe SF2-DEV-KIT> executar a actualización … TFTP do servidor 172.17.0.1; o noso enderezo IP é 172.17.5.100 Filenome 'vlad/networking.uImage'. … Cargando: ################################################ ################# ##################################################### ############### ############# feito Bytes transferidos = 2084704 (1fcf60 hexadecimal) 16384 KiB S25FL128S 64K ás 0:0 agora é o dispositivo actual Gardando o ambiente en SPI Flash... Erasing SPI flash…Writing to SPI flash…done SF2-DEV-KIT> |
Restablece o taboleiro e verifica que a imaxe recentemente programada se inicia no destino no modo de inicio automático:
| SF2-DEV-KIT> restablecer restablecendo ... U-Boot 2010.03-linux-cortexm-1.10.1 (11 de xuño de 2013 - 17:19:37) … Iniciando o núcleo... … inicio inicio: BusyBox v1.17.0 (11 de xuño de 2013 - 17:19:37) ~ # |
5.6. Construción U-Boot
A distribución BSP vén con U-Boot preconstruído para a placa SF2-DEV-KIT. Non obstante, se precisas reconstruír U-Boot para o teu taboleiro, sigue as instrucións a continuación:
- Instale a distribución Linux SmartFusion2 no host de desenvolvemento, tal e como se describe no Manual do usuario de Linux Cortex-M.
- Desde a parte superior da instalación de Linux SmartFusion2, active o ambiente de compilación cruzada de Linux SmartFusion2 executando . ACTIVAR.sh.
- Vaia ao directorio fonte de U-Boot (cd u-boot/).
- Executa os seguintes comandos:
| [psl@pvr u-boot]$ make sf2-dev-kit_config Configurando para a placa sf2-dev-kit... [psl@pvr u-boot]$ make -s [psl@pvr u-boot]$ make -s u-boot.hex |
6. Outros materiais
Consulte o Manual do usuario de Linux Cortex-M para obter información detallada sobre a arquitectura de software da distribución Linux SmartFusion2.
Visita Emcraft Systems web sitio en www.emcraft.com para obter materiais adicionais relacionados con Linux SmartFusion2.
7. Apoio
Agradecemos a súa review do noso produto e benvido a todos os comentarios. Os comentarios pódense enviar directamente por correo electrónico a:
a2f-linux-support@emcraft.com
Coa compra deste produto inclúese o seguinte nivel de asistencia:
- Soporte por correo electrónico para escenarios de instalación, configuración e uso básico do produto durante 3 meses desde a compra do produto;
- Actualización gratuíta a novas versións dos materiais descargables incluídos no produto durante 3 meses desde a compra do produto.
Se precisas de apoio máis aló do descrito anteriormente, estaremos encantados de proporcionarllo utilizando os recursos do noso equipo de desenvolvemento de contratos. Póñase en contacto connosco para obter máis detalles.
Linux SmartFusion2 BSP Guide for the Microsemi SF2-DEV-KIT Board
Versión 1.10.1
Descargado desde Arrow.com.
Documentos/Recursos
![]() |
arrow Placa SF2-DEV KIT [pdfGuía do usuario Placa KIT SF2-DEV, placa KIT, placa |




