���ã��gӭ�M(j��n)�������зf���¿Ƽ�����˾�ٷ��W(w��ng)վ��
һ��(g��)������Ƕ��ʽlinuxϵ�y(t��ng)����4���փ�(n��i)�ݣ�Bootloader��Parameters��Kernel��Root File System��3��4��5��6����Ԕ��(x��)��B���@4���ֵă�(n��i)�����@��Linux��ܛ���_(k��i)�l(f��)�ˆT��(y��ng)ԓ���յ���ͨ�^(gu��)�W(xu��)��(x��)�@Щ�¹�(ji��)��������Ԕ��(x��)�˽�����һ��(g��)����ϲÜp����ֲLinux����Θ�(g��u)���Լ��ĸ��ļ�ϵ�y(t��ng)����ξ���(xi��)�m�Ͽ͑�������(q��)��(d��ng)����——�(q��)��(d��ng)�����@���Y(ji��)�ώׂ�(g��)��(j��ng)����(q��)��(d��ng)�����M(j��n)���v������߀�����˽������nand flash�ϵķdz����е�yaffs�ļ�ϵ�y(t��ng)����ι�����������(sh��)���Y(ji��)��yaffs���aԔ��(x��)��Byaffs�ļ�ϵ�y(t��ng)��
BIOS��Ӣ��"Basic Input Output System"�Ŀs���Z(y��)��ֱ�g�^(gu��)��(l��i)���������Q����"����ݔ��ݔ��ϵ�y(t��ng)"���䌍(sh��)������һ�M�̻���Ӌ(j��)��C(j��)��(n��i)������һ��(g��)ROMоƬ�ϵij�������������Ӌ(j��)��C(j��)����Ҫ�Ļ���ݔ��ݔ���ij�����ϵ�y(t��ng)�O(sh��)����Ϣ���_(k��i)�C(j��)���ԙz�����ϵ�y(t��ng)�Ԇ���(d��ng)������ ����Ҫ�����Ǟ�Ӌ(j��)��C(j��)�ṩ��ӵ�����ֱ�ӵ�Ӳ���O(sh��)�úͿ�����
BootLoader
BootLoader��һ��С�����������������PC�C(j��)linux�ϵ�GRUB/LILO����(d��o)������ֻ���^(gu��)��Ƕ��ʽlinux�У��](m��i)��BIOS������ֱ�ӏ�flash���\(y��n)������(l��i)�b�d��(n��i)�ˡ������Գ�ʼ��Ӳ���O(sh��)�����Ķ���ϵ�y(t��ng)��ܛӲ���h(hu��n)������һ��(g��)���m�Ġ�B(t��i)���Ա����K�{(di��o)�ò���ϵ�y(t��ng)���Ü�(zh��n)����
һ��(g��)Ƕ��ʽϵ�y(t��ng)��ܛ���Ƕȁ�(l��i)���֞�����(g��)�ӴΣ�
1.����(d��o)���d����
�����̻��ڹ̻��е�boot�����x������BootLoader�ɴ�
2.linux��(n��i)��
�ض���Ƕ��ʽƽ�_(t��i)�Ķ��ƃ�(n��i)��
3.�ļ�ϵ�y(t��ng)
������ϵ�y(t��ng)����͑�(y��ng)�ó���
--------------------------------------------------------------------------------
BootLoader-->Boot Parameters-->Kernel-->Root Filesystem
--------------------------------------------------------------------------------
��ʲô��Ҫ�M(j��n)��bootloader��ֲ��
��1.��?y��n)�ÿ�N��ͬ��CPU�wϵ�Y(ji��)��(g��u)���в�ͬ��BootLoader
2.BootLoader��ه�ھ��w��Ƕ��ʽ�弉(j��)�O(sh��)�������
--------------------------------------------------------------------------------
BootLoader����(d��ng)�^(gu��)�̿ɷ֞���A�κͶ��A��(stage1��stage2),����stage1��ɳ�ʼ��Ӳ������CPU�Ĵ�������(n��i)�����������stage2��(zh��n)���(n��i)����g��һ��stage1�ǿ���ֱ����nor flash���\(y��n)�е�������stage2��(f��)�Ƶ���(n��i)��RAM�����O(sh��)�öї���Ȼ�����D(zhu��n)��stage2(���@Ҳ���Կ���stage2����RAM���\(y��n)�е����cstage1��ͬ)
BootLoader��stage1ͨ���������²��E��
1.Ӳ���O(sh��)���ʼ�� ��CPU�Ĵ�������(n��i)�������
2.����dBootLoader��stage2��(zh��n)��RAM���g
3.��ؐBootLoader��stage2��RAM���g��
4.�O(sh��)�úöї� ��ʲô���������D(zhu��n)��stage2���������?y��n)�stage2�����(sh��)����C�Z(y��)�Ԍ�(xi��)��
5.���D(zhu��n)��stage2��C����c(di��n)
BootLoader��stage2ͨ���������²��E��
1.��ʼ�����A��Ҫʹ�õ���Ӳ���O(sh��)�� ���N�O(sh��)�䣬��W(w��ng)��
2.����(n��i)��ӳ����ļ�ϵ�y(t��ng)ӳ���flash���x��RAM��ȥ
3.�{(di��o)��(n��i)��
--------------------------------------------------------------------------------
uboot
Uboot���ڶ�NǶ��ʽCPU��BootLoader����
֧�ֶ�NǶ��ʽ����ϵ�y(t��ng)������(d��o)
UBOOTĿ䛽Y(ji��)��(g��u)
1.Borad �c�_(k��i)�l(f��)�����P(gu��n)���ļ�����һ��(g��)�_(k��i)�l(f��)�嶼��һ��(g��)��Ŀ䛳��F(xi��n)�ڮ�(d��ng)ǰĿ���
2.Common ��(sh��)�F(xi��n)Uboot֧�ֵ�����
3.Cpu �c�ض�CPU�ܘ�(g��u)���P(gu��n)�Ĵ��a��֧�ֵ�CPU��(du��)��(y��ng)һ��(g��)��Ŀ�(ע��CPU�c�_(k��i)�l(f��)��ą^(q��)�e)
3.Disk ��(du��)�űP(p��n)��֧��
4.Doc �ęnĿ�
5.Drivers Uboot֧�ֵ��O(sh��)���(q��)��(d��ng)���� ����N�W(w��ng)������Ʒ��USB��֧��CFI��Flash
6.Fs �ļ�ϵ�y(t��ng)��֧��
7.Iclude Ubootʹ�õ��^�ļ���ԓĿ���configsĿ����c�_(k��i)�l(f��)�����P(gu��n)�������^�ļ� ԓĿ��µ�asmĿ����cCPU�wϵ�Y(ji��)��(g��u)���P(gu��n)���^�ļ�
8.Net �c�W(w��ng)�j(lu��)�f(xi��)�h���P(gu��n)�Ĵ��a ��·�f(xi��)�h�Č�(sh��)�F(xi��n)
9.Tools ����Uboot�Ĺ��ߣ��磺mkimage,crc�ȵ�
Uboot���g�֞�ɲ�
1.��(zh��)��ÿ�Nboard���P(gu��n)������ �磺make amdk_2420
2.���g����uboot.bin�ļ� �磺make CROSS_COMPILE=arm-linux-(ָ�����_·��)
--------------------------------------------------------------------------------
UBOOT���چΰ�C(j��)�ṩ���S�����������
UBOOT����
printenv�鿴�h(hu��n)��׃��(�ஔ(d��ng)ȫ��׃����)
setenv �����������h���h(hu��n)��׃��
1.setenv name value
set environment variable 'name' to 'value...'
2.setenv name
delete environment variable 'name'
saveenv����h(hu��n)��׃��
����(d��ng)ǰ���x������׃������ֵ����flash��
--------------------------------------------------------------------------------
---------------------����d------------------------------------
tftp ͨ�^(gu��)�W(w��ng)�j(lu��)���d�ļ� ʹ��ǰ�����úþW(w��ng)�j(lu��)
���þW(w��ng)�j(lu��)��1.setenv ethaddr 12:34:56:78:8A:BC
2.setenv ipaddr 192.168.1.1
3.setenv serverip 192.168.1.254 (tftp����(w��)���ĵ�ַ)
�B�����d��tftp 32000000 uImage
��server(IP=�h(hu��n)��׃�����O(sh��)�õ�serverip)����(w��)Ŀ��µ�uImageͨ�^(gu��)tftp�x�뵽0x32000000̎
md �@ʾ��(n��i)��^(q��)�ă�(n��i)��
md[.b,.w,.l]address ��:md.w 1000000
mm[.b,.w,.l]address �磺mm.w 100000
mm �ă�(n��i)������ַ�Ԅ�(d��ng)�f�� �ṩ��һ�N����(d��ng)�Ĵ惦(ch��)����(n��i)�ݵķ���������](m��i)��ݔ���κ�ֵ������܇(ch��)��(n��i)�ݱ��ֲ�׃��ݔ��ո�Ȼ���»�܇(ch��)���Y(ji��)��ݔ��
flinfo �鿴Flash�ȅ^(q��)��Ϣ
--------------------------------------------------------------------------------
protect Flash��(xi��)���o(h��) ���_(k��i)���P(gu��n)�]�ȅ^(q��)��(xi��)���o(h��)
�÷���
protect off all �P(gu��n)�]�����ȅ^(q��)�Č�(xi��)���o(h��)
protect on all ���_(k��i)�����ȅ^(q��)�Č�(xi��)���o(h��)
protect off start end �P(gu��n)�]��start��end�ȅ^(q��)�Č�(xi��)���o(h��)-----��protect off 0 1ffff(ǰһ�ȅ^(q��)�pȥ1?)
protect on start end ���_(k��i)��start��end�ȅ^(q��)�Č�(xi��)���o(h��)
--------------------------------------------------------------------------------
erase ����flash�ȅ^(q��)
�÷��� erase start end ��: erase 30000 1efff
��ʹ��cp������Nor��Flash��(xi��)�딵(sh��)��(j��)֮ǰ�����ʹ��erase�������flash
cp����(sh��)��(j��)��ؐ
cp [.b,.w,.l]saddress daddress len
cp�ṩ��һ�N��(n��i)���c��(n��i)������(n��i)���cFlash֮�g��(sh��)��(j��)��ؐ�ķ���
��:cp.b 31000000 50000 d0000 ���nj���(n��i)���ַ0x31000000̎�Ĕ�(sh��)��(j��)���L(zh��ng)�Ȟ�0xd0000����ؐ����ַ0x50000̎��Flash�У�
--------------------------------------------------------------------------------
��(zh��)���
go ��(zh��)�Ѓ�(n��i)���еĶ��M(j��n)�ƴ��a��һ��(g��)��(ji��n)�ε����D(zhu��n)��ָ����ַ
go addr[arg...]
start application at address 'addr',
passing 'arg' as arguments
bootm ��(zh��)�Ѓ�(n��i)���еĶ��M(j��n)�ƴ��a
bootm [addr[arg...]] Ҫ����M(j��n)�ƴ��a�й̶���ʽ���ļ��^
boot application image stored in memory passing arguments 'arg...';
when booting a Linux kernel,'arg' can be the address of an initrd image
bdinfo �@ʾ�_(k��i)�l(f��)����Ϣ �������چ���(d��ng)linux��(n��i)�ˣ�
bdinfo����ڽK���@ʾ�T���(n��i)���ַ�ʹ�С���r(sh��)��l�ʡ�MAC��ַ����Ϣ
�@Щ��Ϣ�ڂ��f�oLIUNX��(n��i)��һЩ����(sh��)�r(sh��)���ܕ�(hu��)�õ�
�O(sh��)���Ԅ�(d��ng)����(d��ng)
setenv bootcmd tftp 31000000 uImage \;bootm 31000000
saveenv
�ߴa�P(gu��n)ע�҂�
���棺0755-82591176
�]�䣺vicky@yingtexin.net
��ַ�����������A�^(q��)���νֵ����δ��973�f(w��n)����(r��n)�S��(chu��ng)�I(y��)�@A��2��A08