X-001 FriendlyARM Tiny4412 uboot移植前奏

版权声明:本文为博主原创文章,转载请注明出处

开发环境:win7 64位 + VMware12 + Ubuntu14.04 64位

工具链:linaro提供的gcc-linaro-6.1.1-2016.08-x86_64_arm-linux-gnueabi

要移植的u-boot版本:u-boot-2016-09

参考u-boot版本:友善之臂提供的 u-boot-2010-12

Tiny4412开发板硬件版本为

    底板:  Tiny4412/Super4412SDK 1506

       核心板:Tiny4412 – 1412

1、下载u-boot源代码,建立u-boot代码仓库

可以参考:http://www.cnblogs.com/AP0904225/p/5804901.html

从u-boot源码FTP(ftp://ftp.denx.de/pub/u-boot/)上下载u-boot-2016.09.tar.bz2,拷贝到ubuntu14.04系统开发目录下,解压u-boot-2016.09.tar.bz2 :

$ tar -xvf u-boot-2016.09.tar.bz2

在解压后的u-boot源码目录下初始化git仓库,使用git来管理代码:

$ cd u-boot-2016.09-tiny4412

$ git init

查看git状态:

$ git status

On branch master

Initial commit

Untracked files:

(use "git add <file>..." to include in what will be committed)

.gitignore

.mailmap

Kbuild

Kconfig

Licenses/

MAINTAINERS

Makefile

README

api/

arch/

board/

cmd/

common/

config.mk

configs/

disk/

doc/

drivers/

dts/

examples/

fs/

include/

lib/

net/

post/

scripts/

snapshot.commit

test/

tools/

nothing added to commit but untracked files present (use "git add" to track)

把u-boot-2016.09-tiny4412目录下的代码使用git来管理,并提交到git本地仓库中:

$ git add .

$ git commit -s -m "Import u-boot-2016.09 source code for FriendlyARM Tiny4412"

2、注册GitHub帐号,创建GitHub项目代码仓库

2.1、注册GitHub帐号

在使GitHub之前,需要先登录其官网注册一个免费使用的账号。登录 https://github.com/join?source=header-home进行注册。

2.2 在GitHub上添加SSH Key

使用如下命令生成 SSH Key:

X-001 FriendlyARM Tiny4412 uboot移植前奏

执行上述命令以后,会确认是否将 SSH Key 文件存放到~/.ssh 目录,如果已经存在该目录,且该目录已经有了SSH Key,会询问用户是否覆盖。接下来让你连续两次输入密码,注意输入密码的时候没有回显,两次密码都是注册 GitHub 时候的登陆密码。如果一切正常,会出现如图 1-1 所示的信息,然后在~/.ssh 目录会生成 id_rsa 和 id_rsa.pub 两个文件, 它们是 SSH Key 的秘钥对。 id_rsa是私钥,不能泄露出去; id_rsa.pub是公钥,可以放心地告诉任何人。

X-001 FriendlyARM Tiny4412 uboot移植前奏

图 1-1 生成 SSH Key 成功

用文本编辑器打开id_rsa.pub 文件,将里面的内容全部复制(注意不要修改任何内容)。在GitHub主页面右上角点击下拉箭头,如图 1-2 所示。

X-001 FriendlyARM Tiny4412 uboot移植前奏

图 1-2 添加 SSH Key 的入口

然后点击 seetings,在新页面左侧选择 SSH Keys,在右侧点击“New SSH key”,在下方输入 Title 以及 Key, Title 随便填写,Key 选项的输入框就粘贴刚刚从 id_rsa.pub 复制的内容。如图 1-3 所示,然后单击“Add SSH key” 按钮,接下来会弹出一个窗口让你输入GitHub帐号的密码,输入确认后即可添加一个 public key。

X-001 FriendlyARM Tiny4412 uboot移植前奏

图 1-3 添加Public SSH Key

设置完SSH key以后,可用如下命令检测公钥、秘钥以及上述步骤的设置是否正确:

X-001 FriendlyARM Tiny4412 uboot移植前奏

2.3、GitHub上新建repository

点击https://github.com/主页右上角的加号(+)按钮, 然后选择“New Repository”,如图 1-4 所示

X-001 FriendlyARM Tiny4412 uboot移植前奏

图 1-4 新建repository页面

依次填入repository名称以及对项目的描述和选择项目是否公开,这里要选择Public,还可以选择项目遵循的许可协议,我们选择的是 GPLv3(可以不选),具体的设置如图 1-5 所示,最后点击“Create repository”完成开源项目的创建。

X-001 FriendlyARM Tiny4412 uboot移植前奏

图 1-5 创建一个 GitHub 项目repository

3、上传代码到GitHub仓库

首先要配置git邮箱和用户名:

X-001 FriendlyARM Tiny4412 uboot移植前奏

接下来需要获取在GitHub上的项目仓库的URL。在GitHub主页面上,单击右下方的仓库标签,如图 1-6所示:

X-001 FriendlyARM Tiny4412 uboot移植前奏

如果是一个空的仓库,会弹出如下页面:

X-001 FriendlyARM Tiny4412 uboot移植前奏

我们可以按照提示把代码上传到GitHub仓库。如果本地已经有一个git仓库,我们可以在本地git仓库目录下执行红色框中的命令把代码上传到GitHub仓库中去。

$ git remote add origin git@github.com:AP0904225/u-boot-2016.09-FriendlyARMTiny4412.git

这个命令将本地代码库和 GitHub 远程代码库关联起来,其中origin表示的是远程代码库的仓库名字;

$ git push -u origin master

这个命令将本地版本库主分支(master)中的文件上传到 GitHub,其中-u 选项是第一次push的时候使用,将本地和远程的master分支关联起来,并同步文件,以后就可以用命令git push origin master来推送代码到GitHub仓库。

执行如下命令git branch -a查看所有分支,会发现多了 remotes/origin/master 远程版本库分支。代码上传成功后,打开 GitHub 的项目主页面,刷新一下即可看见刚刚上传的文件。

X-001 FriendlyARM Tiny4412 uboot移植前奏

上一篇:剑指Offer面试题:29.丑数


下一篇:X-008 FriendlyARM tiny4412 uboot移植之copy u-boot到DDR内存