一、烧录

1)先在官网 http://www.at91.com/linux4sam/bin/view/Linux4SAM/Sama5d3XplainedMainPage

下载  linux4sam-poky-sama5d3_xplained-5.7.zip 和 SAM-BA 3.x release

2)将Demo镜像解压到sam-ba工具的example/sama5d3目录

3)windows终端cmd进入sam-ba_3.2.1\examples\sama5d3\linux4sam-poky-sama5d3_xplained-5.7目录运行sam-ba就启动烧录了。

设备管理器里可能会缺少gadget serial v2.4驱动

下载USB-CDC driver: https://www.kernel.org/doc/Documentation/usb/linux-cdc-acm.inf

放在sam-ba_3.2.1\driver目录,安装即可烧录

C:\Users\15019\Desktop\sam-ba_3.2.1\examples\sama5d3\linux4sam-poky-sama5d3_xplained-5.7>

取下JP5,复位板子,运行如下指令

..\..\..\sam-ba -x demo_linux_nandflash_usb.qml

二、编译

1、How to build Buildroot for AT91

http://www.at91.com/linux4sam/bin/view/Linux4SAM/BuildRootBuild

1)自定义交叉工具链 toolchain

│ │                                                                  Toolchain type (External toolchain)  --->                                                                                                     │ │  
  │ │                                                                  *** Toolchain External Options ***                                                                                                               │ │  
  │ │                                                                  Toolchain (Custom toolchain)  --->                                                                                                             │ │  
  │ │                                                                  Toolchain origin (Pre-installed toolchain)  --->                                                                                            │ │  
  │ │                                                                  (/usr/local/gcc-linaro-arm-linux-gnueabihf) Toolchain path                                                                         │ │  
  │ │                                                                  ($(ARCH)-linux-gnueabihf) Toolchain prefix                                                                                               │ │  
  │ │                                                                  External toolchain gcc version (4.7.x)  --->                                                                                                 │ │  
  │ │                                                                  External toolchain kernel headers series (3.2.x)  --->                                                                                 │ │  
  │ │                                                                  External toolchain C library (glibc/eglibc)  --->

2)自定义内核版本 Kernel

Linux Kernel YES
Kernel version Custom Git tree
URL of custom Git repository https://github.com/raspberrypi/linux
Custom Git version rpi-3.6.y
Kernel configuration Using a defconfig
Defconfig name bcmrpi
Kernel binary format zImage

3)添加NFS支持(Target packages -> FileSystem and flash utilities -> nfs-utils)

3)单独编译内核

下载源码

https://github.com/linux4sam/linux-at91/tree/linux-4.9-at91

编译文档

http://www.at91.com/linux4sam/bin/view/Linux4SAM/Sama5d3XplainedMainPage#Configure_and_Build_the_Linux_ke

添加编译器路径 /usr/local/gcc-linaro-arm-linux-gnueabihf/arm-linux-gnueabihf-

先要安装个uboot的小工具

sudo apt-get install uboot-mkimage

更改Makefile

#ARCH        ?= $(SUBARCH)
#CROSS_COMPILE    ?= $(CONFIG_CROSS_COMPILE:"%"=%)
ARCH        = arm
CROSS_COMPILE    = arm-linux-gnueabihf-

然后如下三条指令编译

make ARCH=arm sama5_defconfig

make ARCH=arm

make ARCH=arm uImage LOADADDR=0x20008000

make ARCH=arm dtbs

4) 挂载SD卡

(1)确保sd卡加载成功
fdisk -l

(2)挂载SD卡

mount /dev/mmcblk0p1 /mnt/mmc

或者

mount -t vfat  /dev/mmcblk0p1 /mnt/mmc

(3)卸载SD卡

umount /mnt/mmc

注意,当前目录不能是/mnt,否则会出现“umount can't umount /mnt device or resource busy”的错误提示信息。

(4)Linux 如何上电挂载SD卡

编辑/etc/init.d/目录下的rcS文件:vi /etc/init.d/rcS
在里面加入一行:mount -t vfat /dev/mmcblk0p1 /mnt/mmc
这样上电后开发板就会自动挂载SD卡到主目录的mmc文件夹

5) 挂载U盘也类似

# mount /dev/sda1 /media                                                        
FAT-fs (sda1): Volume was not properly unmounted. Some data may be corrupt. Ple.
# cd /media/                                                                    
# ls                                                                            
Image                      uImage                                               
at91-sama5d3_xplained.dtb  zImage                                               
#

二、其他

1)资料收集

http://www.at91.com/linux4sam/bin/view/Linux4SAM/Sama5d3XplainedMainPage

http://www.microchip.com/DevelopmentTools/ProductDetails.aspx?PartNO=ATSAMA5D3-XPLD

http://www.eewiki.net/display/linuxonarm/SAMA5D3

http://www.at91.com/linux4sam/bin/view/Linux4SAM/

之前没用过这款IC,有个卖板子的也整理了些基本操作。

http://www.myir-tech.com/product/myd-sama5d3x.htm#loc

2)编译内核会报个错误

"mkimage" command not found - U-Boot images will not be built

http://blog.csdn.net/eibo51/article/details/51901480

3) Sama5d36ek_Device Tree

https://wenku.baidu.com/view/d4c3cf7fbed5b9f3f80f1c5d.html

http://blog.csdn.net/iefswang/article/details/27096393

4) gpio

http://www.myir-tech.com/bbs/forum.php?mod=viewthread&tid=7860

x) 刷机涉及到 openssl-1.1.0f.tar.gz 的安装

https://blog.csdn.net/xiatiancc/article/details/78913163

wget http://www.openssl.org/source/openssl-1.1.0f.tar.gz
tar -zxvf openssl-1.1.0f.tar.gz
cd openssl-1.1.0f
./config shared zlib
make

sudo make install

默认的安装路径

installing libcrypto.a
installing libssl.a
installing libcrypto.so.1.0.0
installing libssl.so.1.0.0
make[1]: Entering directory `/usr/local/ssl/lib64'
make[2]: Entering directory `/usr/local/ssl/lib64'
make[2]: Leaving directory `/usr/local/ssl/lib64'
make[2]: Entering directory `/usr/local/ssl/lib64'
make[2]: Leaving directory `/usr/local/ssl/lib64'
make[1]: Leaving directory `/usr/local/ssl/lib64'
OpenSSL shared libraries have been installed in:
/usr/local/ssl cp libcrypto.pc /usr/local/ssl/lib64/pkgconfig
chmod 644 /usr/local/ssl/lib64/pkgconfig/libcrypto.pc
cp libssl.pc /usr/local/ssl/lib64/pkgconfig
chmod 644 /usr/local/ssl/lib64/pkgconfig/libssl.pc
cp openssl.pc /usr/local/ssl/lib64/pkgconfig
chmod 644 /usr/local/ssl/lib64/pkgconfig/openssl.pc

#修改历史的OpenSSL文件设置备份
sudo mv /usr/bin/openssl /usr/bin/openssl.old
sudo mv /usr/include/openssl /usr/include/openssl.old

#设置软连接使其使用新的OpenSSL版本 刚刚安装的OpenSSL默认安装在/usr/local/ssl
sudo ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
sudo ln -s /usr/local/ssl/include/openssl /usr/include/openssl

#更新动态链接库数据
//echo "/usr/local/ssl/lib" >> /etc/ld.so.conf
sudo sh -c "echo '/usr/local/ssl/lib' >> /etc/ld.so.conf"
sudo ldconfig -v
我们再来看看 OpenSSL 版本信息.

安装到指定路径--prefix=/usr/local/openssl

./config shared zlib  --prefix=/usr/local/openssl && make && make install

[root@localhost src]# tar -xzvf openssl-1.0.1s.tar.gz
[root@localhost src]# cd openssl-1.0.1s
[root@localhost openssl-1.0.1s]# ./config -fPIC --prefix=/usr/local/openssl enable-shared
[root@localhost openssl-1.0.1s]# ./config -t
[root@localhost openssl-1.0.1s]# make && make install

tar -xzvf openssl-1.0.0.tar.gz
cd openssl-1.0.0
./config -fPIC --prefix=$(pwd)/_install enable-shared
./config -t
make
rm -f /usr/bin/pod2man
sudo make install

y) usb模拟网卡挂载nfs

//ubuntu主机
sudo nano /etc/exports
/home/dong/nfs *(rw,sync,no_root_squash,no_subtree_check)

sudo /etc/init.d/nfs-kernel-server restart
sudo /etc/init.d/rpcbind restart

sudo ifconfig usb0 192.168.10.1

//设备端
modprobe g_multi file=/dev/mmcblk0p5,/dev/mmcblk0p6 ro=0,1 luns=2 stall=0 removable=1,1 iSerialNumber=3000111
ifconfig usb1 192.168.10.2
mount -t nfs -o nolock 192.168.10.1:/home/dong/nfs /home/tmp

SAMA5D3 Xplained Board的更多相关文章

  1. (转载)跟Classic ARM 处理器说拜拜——Atmel SAMA5D3 Xplained开发板评测

    2014 年 4 月 10 日 时间: 下午 3:15 作者: 幸得安然 电子产业的蓬勃发展带来了史无前例的生活.生产大跃进,但是,人们在享受发展喜悦的同时又不得不面临现实现状的囧境--在以移动电子设 ...

  2. Linux内核DTB文件启动的几种方式

      版权:  凌云物网智科实验室< www.iot-yun.com > 声明:  本文档由凌云物网智科实验室郭工编著! 作者:  郭文学< QQ: 281143292  guowen ...

  3. [LeetCode] Battleships in a Board 平板上的战船

    Given an 2D board, count how many different battleships are in it. The battleships are represented w ...

  4. UP Board 串口使用心得

    前言 原创文章,转载引用务必注明链接. 本文使用Markdown写成,为获得更好的阅读体验和正常的图片.链接,请访问我的博客: http://www.cnblogs.com/sjqlwy/p/up_s ...

  5. UP Board 网络设置一本通

    前言 原创文章,转载引用务必注明链接,水平有限,欢迎指正. 本文环境:ubilinux 3.0 on UP Board 本文使用Markdown写成,为获得更好的阅读体验和正常的图片.链接,请访问我的 ...

  6. UP Board USB无线网卡一贴通

    前言 原创文章,转载引用务必注明链接,水平有限,欢迎指正. 本文环境:ubilinux 3.0 kernel 4.4.0 本文使用Markdown写成,为获得更好的阅读体验和正常的图片.链接,请访问我 ...

  7. 在UP Board 上搭建M——L服务器

    前言 原创文章,转载引用务必注明链接,水平有限,欢迎指正. 本文环境:ubilinux 3.0 on UP Board 初识免流 所谓免流,就是免除手机访问网络产生的流量费用.其原理在乌云网上有过报道 ...

  8. UP Board 妄图启动ubilinux失败

    前言 原创文章,转载引用务必注明链接. 经历了上次的上电开机失败,我们终于发现需要手动为UP板安装系统,因为没有显示器的Headless模式时,使用Linux比较方便,另外熟悉Debian系的,所以选 ...

  9. UP Board 人若有大胆,板子就很惨:首次上电开机失败

    前言 原创文章,转载引用务必注明链接. 注意:拍照自带抖动功能,画质大家凑合着看.冬日天气干燥,手触摸板子前建议流水洗手或者握持大体积导电体将静电放走. 本文使用Markdown写成,为获得更好的阅读 ...

随机推荐

  1. javascript不可用的问题探究

    昨天在Twitter上的一些有趣的讨论中, 我发现人们对于Web应用和站点对javascript的依赖普遍存在一种疑惑. 这种疑惑一直都存在, 而对我而言, 这个问题随着浏览技术的飞跃发展而集中爆发了 ...

  2. boost 互斥体和锁

    1.共享资源是一个自动锁住的房间,互斥体是钥匙,进入房间必须取钥匙,离开房间应该还钥匙.这就对应着互斥体的lock(取钥匙)和unlock(还钥匙). 2.考虑下面的场景:还钥匙的时候出现异常,会发生 ...

  3. 第二百八十节,MySQL数据库-外键链表之一对多,多对多

    MySQL数据库-外键链表之一对多,多对多 外键链表之一对多 外键链表:就是a表通过外键连接b表的主键,建立链表关系,需要注意的是a表外键字段类型,必须与要关联的b表的主键字段类型一致,否则无法创建索 ...

  4. Abstract可以将子类的共性最大限度的抽取出来,放在父类中,以提高程序的简洁性

    Abstract可以将子类的共性最大限度的抽取出来,放在父类中,以提高程序的简洁性. Abstract虽然不能生成对象,但是可以声明,作为编译时类型,但不能作为运行时类型. Final和abstrac ...

  5. TrustZone——开源库—Linaro—OP-TEE

    想研究安全系统源代码的有福气了.曾经OVOS的代码缺少TA相关的实现. 这次的版本号,基本框架都有了.先看看架构图吧. 几家大公司做的,可能是ST牵头.页面有ST的LOGO. 代码质量较高. 未来也会 ...

  6. Visual Studio Code调试node.js:无法在PATH上找到运行时的node

    首先,环境变量Path中加入nodejs的路径: 验证nodejs是否已经加入环境变量: 接着,重新启动Visual Studio Code, 试一下,是不是好了~   附录:Visual Studi ...

  7. 一道money计算题引发的思考

    网友提出一个问题如下 是小学和中学时候学到了增长折线问题,有点像数学问题,不过这个要求用编程来实现,恐怕还是有些逻辑要处理的,话不多说看代码吧 我给出的代码如下 代码清单: <?php func ...

  8. JSP状态管理 及 Cookie实例

    HTTP协议的无状态性 无状态是指,当浏览器发送请求给服务器的时候,服务器响应客户端的请求. 但是当同一个浏览器再次发送请求给了服务器的时候,服务器并不知道它就是刚才那个浏览器. 简单地说,就是服务器 ...

  9. codevs 5962 [SDOI2017]数字表格

    输入描述 Input Description  [题解] 对于蓝色部分预处理前缀积. 然后在用除法分块搞一下. O(Q*sqrt(min(n,m))*logn+nlogn) #include<c ...

  10. 六 Android Studio打包Eegret App (解决开机黑屏问题)

    因为android studio中的SplashActivity并没有什么卵用,只是开机1s显示开机画面,1s后面还是黑屏. 在主文件中加入以下代码,就是开始游戏时显示一个居中填满屏幕的图片,游戏加载 ...