boot deive onlyboot menu是什么意思思

How to Use AOMEI PXE Boot Tool
Usually, when computer fails to boot, the way we use to boot a computer almost is using bootable CD or Bootable USB flash drive, which may be Linux micro-system or Windows PE micro system. When we need to install system in too many computers, for example, there are 100 computers that need to be installed system, we can’t insert CD or USB into computer one by one and boot computer, because different computers has different configurations such as there may be not CD drive or USB flash drive portal in computers.
How to be easy to solve such problems? In this condition, AOMEI PXE Boot Tool will be a key. The only thing you should do is to run AOMEI PXE Boot Tool in one computer (may be a server) within LAN, and boot other computers (some clients or target computers) from network.
About AOMEI PXE Boot Tool
AOMEI PXE Boot Tool can boot many computers from micro system in network. Broadly speaking, You can create a Windows PE micro system with a third party tool, also, you can do a bootable Linux image or Windows PE image file with the tool offered by AOMEI Backupper. You can use AOMEI PXE Boot Tool and make other clients or target computers boot from these micro system. After booting, you can backup, restore or maintain system with tools offered with the image file.
The Advantages of AOMEI PXE Boot Tool
Comparing with counterpart PXE function, AOMEI PXE Boot Tool has its own features:
AOMEI PXE Boot Tool supports creating bootable micro system by yourself. Therefore, if you had a powerful Linux bootable ISO or Windows PE bootable ISO, you can boot computers that are in LAN.
AOMEI PXE Boot Tool can directly create a Linux bootable ISO or Windows PE bootable ISO. If you don’t have them, you can create them with AOMEI PXE Boot Tool. Certainly, you can create a bootable ISO file by using AOMEI Backupper -> Utilities -> Create Bootable Media.
If you want to use powerful PE micro system with desktop, , which is freeware offered by AOMEI, and then, you can use it with AOMEI PXE Boot Tool.
You don’t need to deploy other plug-ins or programs. Just install AOMEI Backupper and you can use this function
How to use AOMEI PXE Boot Tool
Start AOMEI PXE Boot Service
Step 1. Install AOMEI Backupper in a server or PC that can be booted normally, and launch it. Select “Utility” and then select “AOMEI PXE Boot Tool”.
Step 2. Choose the one of environment to load system and start computer.
The Three Options:
Boot from AOMEI Windows system: This is a recommended option, so the tool helps you to create directly a Windows PE system for network boot.
Boot from AOMEI Linux system: This option can make other clients load a Linux system image in network.
Boot from custom image file: You can load the special micro-system created by
or Bart PE.
Step 3. After clicking “Start Service”, AOMEI PXE Boot Tool will configure related data automatically and start the service to wait for target computers.
Setting Clients within LAN for Network Boot
Set client computers within LAN for network boot. Open clients, then before they enter system, press specific hotkey to enter and enter BIOS (usually, hotkey is F8 or DEL, and it depends on what computer model you use), then enable “Network Boot” in the BIOS setting. If your computer boots with UEFI mode, we suggest you setting it into traditional boot mode in BOIS---“Legacy boot mode”.
Restart client computer and press specific DEL key to enter “UEFI Dual BIOS”. You can do following the steps for PXE network boot.
Boot mode selection
Click Bios Features -> CSM Support -> Boot Mode Selection, and press Enter in “Boot Mode Selection” and a pop-up window will appear, and you should choose “UEFI and Legacy” or “Legacy Only”.
Enable the PXE boot option
Choose “LAN PXE Boot Option ROM” with down arrow, and turn its status from “Disabled” to “Enabled”.
Set the PXE option as the first boot device
You can select “Boot Option # 1” in “Boot Option Priorities”, and then select “Realtek PXE B02 D00” as well as press Enter.
Alternative to setting the first boot device
You can also reboot computer and hit a key (may be F12 or F11), then a window will pop-up below, and then select the first boot device: “Realtek PXE B02 D00” and press Enter.
Finally, you can see the following screenshot, this means your computer is booting from PXE network. You may need to wait for a few minutes depending on the speed of network and the size of bootable image file.
If you want to learn more cases about setting BIOS, please visit How to Set PXE Boot in BIOS?
AOMEI PXE Boot software can make bare metals boot and offer environment to install or maintain system without using CD-ROM or USB flash drive. With the tool, whatever enterprise or personals, maintaining systems in many clients will be easier. Notably to enterprises and associates, they don’t need to handle one by one. You can have a try.
You may need to wait 1~2 minutes for the PXE boot process.
All computers that are applied with PXE will be same network segment.
If there are too many computers such as 100 computers to connect server, the speed of network will be slow. Thus, you should divide network into group so as to boost the network loading.
AOMEI PXE Boot Tool can support UEFI machines currently, but only the WIM file can be used for UEFI (not ISO file), so if your file is an ISO file, we suggest you setting the boot mode as Legacy Boot Mode.
AOMEI PXE Toot contains a DHCP server, if there is not a working DHCP in your computer, it also can work well. (Tip: DHCP is offered by router within LAN.)
If you encounter other troubles, please visit FAQ about AOMEI PXE Boot Tool in this document.First Boot Device中各个选项是什么意思_百度知道
First Boot Device中各个选项是什么意思
选项中包括Removable Dey、Hard Drive、CD/DVD、Network:Broadcom PXE这四项,请问1st boot、2nd boot、3rd boot、4th boot分别选哪项?急求!!!
提问者采纳
Removable Dey 移动设备Hard Drive硬盘CD/DVD
这个不用多说吧Network:Broadcom PXE 远程启动,像无盘系统。1st boot、2nd boot、3rd boot、4th boot 这些要怎么设置还得看具体情况来说。比如你装好系统不需要其他设备启动,你就可以在1st boot 设备硬盘启动。如果你希望用光驱优先启动,就把1st boot设置光光驱。主要是看具体情况的。
提问者评价
其他类似问题
为您推荐:
其他2条回答
Removable Dev 可移动磁盘Hard Drive 硬盘CD/DVD 光驱Network:Broadcom PXE 远程引导一般这样设1.光驱2.硬盘3.移动4.远程原因:当放入可引导光盘时,会自动从光盘启动,装系统时不用再设没有光盘会自动进入第二启动项硬盘(正常就这样),如果硬盘仍有问题,可以用U盘启动,第四启动基本用不上
Removable Dey软盘、Hard Drive硬盘、CD/DVD光驱、Network:Broadcom PXE网络。至于你说的1st boot、2nd boot、3rd boot、4th boot这个是说第一启动设备是哪个,第二启动设备是哪个……;只需要看第一个就可以了。正常来说1st boot设置为Hard Drive就可以了。如果需要装系统需要用到光盘就把要1st boot设置为CD/DVD,这样开机就可以从光盘启动了,否则无效。
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁How To Boot From a USB Device (Flash Drive or Other USB)
About Today
Electronics & Gadgets
PC Support
Living Healthy
Health Tip of the Day
There was an error. Please try again.
Please select a newsletter.
Please enter a valid email address.
Did you mean ?
& Jeffrey Coolidge/Photodisc/Getty Images
You might want to
device, like an external
or a , for many different reasons.When you boot from a USB device, what you're actually doing is running your computer with the
that's installed on the USB device. When you start your computer normally, you're running with the operating system installed on your hard drive - Windows, Linux, etc.Follow these easy steps to boot from a flash drive, an external hard drive, or some other bootable USB device.
Difficulty: EasyTime Required: Booting from a USB device usually takes less than 10 to 20 minutes.How To Boot From a USB Device. The
is rarely setup this way by default.If the USB boot option is not first in the , your PC will start "normally" (i.e. boot from your hard drive) without even looking at any boot information that might be on your USB device.Tip: The BIOS on most computers list the USB boot option as USB or Removable Devices but some confusingly list it as a Hard Drive option, so be sure to dig around if you're having trouble finding the right one to choose.Note: After setting your USB device as the first boot device, your computer will check it for boot information each time your PC starts. Leaving your computer configured this way shouldn't cause problems unless you plan on leaving the bootable USB device attached all the time. Attach the USB device to your computer via any available USB port.Note: Creating a bootable flash drive or configuring an external hard drive as bootable is a task in itself. Chances are you made it to my instructions here because you know whatever USB device you have should be bootable after properly configuring BIOS.See my
tutorial for general instructions on doing exactly that, which tends to be the the reason most people need to figure out how to boot from one.
Restart your computer. Watch for a Press any key to boot from external device... message.On some bootable devices, you may be prompted with a message to press a key before the computer will boot to the flash drive or other USB device.If you do nothing, your computer will check for boot information on the next boot device in the list in BIOS (see Step 1) which will probably be your hard drive.Note: Most of the time when trying to boot to a USB device there is no key-press prompt. The USB boot process usually starts immediately. Your computer should now boot from the flash drive or USB based external hard drive.Note: What happens now depends on what the bootable USB device was intended for. If you're booting to
installation files on a flash drive, the operating system setup will begin. If you're booting to the , it will start. You get the idea.If you tried the above steps but your computer did not boot from the USB device, check out some of the tips below:Tips & More InformationRecheck the boot order in BIOS (Step 1). The number one reason a bootable flash drive or other USB device won't boot is because BIOS is not configured to check the USB port first. Didn't find a "USB Device" boot order listing in BIOS? If your computer was manufactured around 2001 or before, it may not have this ability. If your computer is newer, check for some other ways that the USB option might be worded. In some BIOS versions, it's called "Removable Devices" or "External Devices". Remove other USB devices. Other connected USB devices, like printers, external media card readers, etc., could be consuming too much power, or causing some other problem, which is preventing the computer from booting from flash drive or other device. Unplug all other USB devices and try again. Switch to another USB port. The BIOS on some
only check the first few USB ports. Switch to another USB port and restart your computer. Copy the files to the USB device again. If you created the bootable flash drive or external hard drive yourself, which you probably did, repeat whatever steps you took again. You may have made a mistake during the process.See
if you started with an . Getting an ISO file onto a USB drive, like a flash drive, isn't as easy as just expanding or copying the file there.
How To Boot From a USB Device增加USB功能 - u-boot-2009.08在mini2440上的移植_Linux编程_Linux公社-Linux系统门户网站
你好,游客
u-boot-2009.08在mini2440上的移植
增加USB功能
来源:Linux社区&
作者:singleboy
1,主机环境:VMare下 5.5 ,1G内存。
2,集成开发环境:Elipse IDE
3,编译编译环境:arm-linux-gcc v4.4.3,arm-none-eabi-gcc v4.5.1。
4,开发板:mini2440,2M nor flash,128M nand flash。
5,u-boot版本:u-boot-2009.08
6,参考文章:
8.1,实现u-boot的usb slave下载功能
友善自带的dnw下的usb下载功能真的很好用,于是也想实现此功能,现参考博文为,操作如下(红色字体部分为修改或添加的代码):
【1】复制usb slave驱动源代码,源码下载uboot-usb_slave.tar.bz2 下载在
下载后将源码解压到u-boot-2009.08/drivers/usb/目录下:
[root@localhost ~]# cd ./u-boot-test/u-boot-2009.08/drivers/usb[root@localhost usb]# tar -jxf /root/.bz2 [root@localhost usb]# lsgadget& host& musb& slave[root@localhost usb]#
【2】用gedit打开u-boot-2009.08/Makefile,定位到243行附近,修改如下:
LIBS += drivers/usb/host/libusb_host.aLIBS += drivers/usb/musb/libusb_musb.aLIBS += drivers/usb/slave/libusb_slave.aLIBS += drivers/video/libvideo.a
【3】打开/lib_arm/board.c,定位到423行附近,修改如下:
#if defined(CONFIG_MISC_INIT_R)&/* miscellaneous platform dependent initialisations */&misc_init_r ();#endif&extern void port_init(void);&port_init();&/* enable exceptions */&enable_interrupts ();&#if defined(CONFIG_USB_DEVICE)&extern int usb_init_slave(void);&usb_init_slave();#endif
&/* Perform network card initialisation if necessary */#ifdef CONFIG_DRIVER_TI_EMAC
这里要强调下hugerat 博主说得很对,usb_init() 应改为 usb_init_slave()。详情请参见。
【4】打开/include/configs/mini2440.h,定位到48行附近,注释掉下面代码:
#define USE_920T_MMU&&1//#undef CONFIG_USE_IRQ&&&/* we don't need IRQ/FIQ stuff */
定位到173行附近,加入如下代码:
/* valid baudrates */#define CONFIG_SYS_BAUDRATE_TABLE&{ , 3, 115200 }
#define CONFIG_SYS_CONSOLE_IS_IN_ENV //It's important to serial console !//Define this if you want stdin, stdout &/or stderr to be set to usbtty/*USB device support*/#define CONFIG_USB_DEVICE &&1
#ifdef CONFIG_USB_DEVICE#define CONFIG_USE_IRQ &&&1#endif
/*-----------------------------------------------------------------------&* Stack sizes
注意,#define CONFIG_SYS_CONSOLE_IS_IN_ENV 配置非常重要,不配置此项,只能看到控制台信息在LCD上的显示,而在串口终端没有输出!
【5】打开/cpu/arm920t/s3c24x0/interrupts.c,定位到文件末尾处添加arch_interrupt_init函数定义:void do_irq (struct pt_regs *pt_regs){&S3C24X0_INTERRUPT * irq = S3C24X0_GetBase_INTERRUPT();&u_int32_t intpnd = irq-&INTPND;
int arch_interrupt_init (void){&&& return 0;
【6】/cpu/arm920t/start.S,定位到625行附近,加入下面代码:
#ifdef CONFIG_USE_IRQ
&.align&5irq:/*&get_irq_stack&irq_save_user_regs&bl&do_irq&irq_restore_user_regs*//* use IRQ for USB and DMA */&&& sub&&& lr, lr, #4&&&&&&&&&&&&&&&&&&& &@ the return address&&& ldr&&& sp, IRQ_STACK_START&&&&&&&&&&& @ the stack for irq&&& stmdb&&& sp!,&&&& { r0-r12,lr }&&& &@ save registers&&& &&& ldr&&& lr,&&& =int_return&&&&&&&&&&&& @ set the return addr&&& ldr&&& pc, =IRQ_Handle&&&&&&&&&&&&&&& @ call the isrint_return:&&& ldmia&&& sp!,&&&& { r0-r12,pc }^&&& &@ return from interrupt
&.align&5fiq:&get_fiq_stack&/* someone ought to write a more effiction fiq_save_user_regs */&irq_save_user_regs&bl&do_fiq&irq_restore_user_regs
【7】打开/include/s3c24x0.h,定位到330行附近,修改如下:
&S3C24X0_REG8&MAXP_REG;&S3C24X0_REG8&&& res10[3]; //S3C24X0_REG8&res10[7];&S3C24X0_REG8&EP0_CSR_IN_CSR1_REG;&S3C24X0_REG8&res11[3];&S3C24X0_REG8&IN_CSR2_REG;&S3C24X0_REG8&&& res12[7]; //S3C24X0_REG8&res12[3];&S3C24X0_REG8&OUT_CSR1_REG;&<FONT color=#ffX0_REG8&&& res13[3]; //S3C24X0_REG8&res13[7];&S3C24X0_REG8&OUT_CSR2_REG;&S3C24X0_REG8&res14[3];&S3C24X0_REG8&OUT_FIFO_CNT1_REG;&S3C24X0_REG8&res15[3];&S3C24X0_REG8&OUT_FIFO_CNT2_REG;&S3C24X0_REG8&res16[3];#endif /*& __BIG_ENDIAN */&//S3C24X0_USB_DEV_FIFOS&fifo[5];&//S3C24X0_USB_DEV_DMAS&dma[5];&S3C24X0_REG32&& res17[8];&S3C24X0_USB_DEV_FIFOS&& fifo[5];&S3C24X0_REG32&& res18[11];&S3C24X0_USB_DEV_DMAS&&& ep1;&S3C24X0_USB_DEV_DMAS&&& ep2;&S3C24X0_REG8&&& res19[16];&S3C24X0_USB_DEV_DMAS&&& ep3;&S3C24X0_USB_DEV_DMAS&&& ep4;} /*__attribute__((__packed__))*/ S3C24X0_USB_DEVICE;
【8】添加usbslave命令
在/common/目录下创建文件cmd_usbslave.c,然后将下面内容粘贴进去:
#include &common.h&#include &command.h&#include &asm/byteorder.h&
#ifdef CONFIG_USB_DEVICE
#ifdef CONFIG_USE_IRQ&&& #define IRQ_STACK_START&&& (_armboot_start - CONFIG_SYS_MALLOC_LEN - CONFIG_SYS_GBL_DATA_SIZE - 4)&&& #define FIQ_STACK_START&&& (IRQ_STACK_START - CONFIG_STACKSIZE_IRQ)&&& #define FREE_RAM_END&&&&&&& (FIQ_STACK_START - CONFIG_STACKSIZE_FIQ - CONFIG_STACKSIZE)&&& #define FREE_RAM_SIZE&&&&&&& (FREE_RAM_END - PHYS_SDRAM_1)#else &&& #define&&& FREE_RAM_END&&& (_armboot_start - CONFIG_SYS_MALLOC_LEN - CONFIG_SYS_GBL_DATA_SIZE - 4 - CONFIG_STACKSIZE)&&& #define&&& FREE_RAM_SIZE&&& (FREE_RAM_END - PHYS_SDRAM_1)#endif
int g_bUSBWait = 1;u32 g_dwDownloadLen = 0;
extern int download_extern volatile unsigned int dwUSBBufBextern volatile unsigned int dwUSBBufS
extern __u32 usb_receive(char *buf, size_t len, unsigned int wait);
int do_usbslave (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]){&&&&&& size_t len = ~0UL;&&& char buf[32];
&&& /* download_run为1时表示将文件保存在USB Host发送工具dnw指定的位置&&&& * download_run为0时表示将文件保存在参数argv[2]指定的位置&&&& * 要下载程序到内存,然后直接运行时,要设置download_run=1,这也是这个参数名字的来由&&&& */&&& download_run = 1;&&& switch (argc) {&&&&&&& case 1:&&&&&&& {&&&&&&&&&&&&&&&&&& }&&&&&&& case 2:&&&&&&& {&&&&&&&&&&& g_bUSBWait = (int)simple_strtoul(argv[1], NULL, 16);&&&&&&&&&&&&&&&&&& }
&&&&&&& case 3:&&&&&&& {&&&&&&&&&&& g_bUSBWait = (int)simple_strtoul(argv[1], NULL, 16);&&&&&&&&&&& load_addr = simple_strtoul(argv[2], NULL, 16);&&&&&&&&&&& download_run = 0;&&&&&&&&&&&&&&&&&& }&&&&&&& &&&&&&& default: &&&&&&& {&&&&&&&&&&& printf ("Usage:\n%s\n", cmdtp-&usage);&&&&&&&&&&& return 1;&&&&&&& }&&& }
&&& dwUSBBufBase = load_ &&& dwUSBBufSize = (FREE_RAM_SIZE&(~(0x80000-1))); &&& if (g_bUSBWait)&&&&&&& len = FREE_RAM_SIZE;
&&& g_dwDownloadLen = usb_receive(dwUSBBufBase, len, g_bUSBWait);&&& sprintf(buf, "%X", g_dwDownloadLen);&&& setenv("filesize", buf);&&& &&& return 0;}
U_BOOT_CMD(&&& usbslave,&&& 3,&&& 0,&&& do_usbslave,&&& "usbslave - get file from host(PC)\n",&&& "[wait] [loadAddress]\n"&&& "\"wait\" is 0 or 1, 0 means for return immediately, not waits for the finish of transferring\n");
打开/common/Makefile,定位到163行,加入下面代码:# othersCOBJS-$(CONFIG_DDR_SPD) += ddr_spd.oCOBJS-$(CONFIG_HWCONFIG) += hwconfig.oCOBJS-$(CONFIG_CONSOLE_MUX) += iomux.oCOBJS-y += flash.oCOBJS-$(CONFIG_CMD_KGDB) += kgdb.oCOBJS-$(CONFIG_KALLSYMS) += kallsyms.oCOBJS-$(CONFIG_LCD) += lcd.oCOBJS-$(CONFIG_LYNXKDI) += lynxkdi.oCOBJS-$(CONFIG_MODEM_SUPPORT) += modem.oCOBJS-$(CONFIG_UPDATE_TFTP) += update.oCOBJS-$(CONFIG_USB_KEYBOARD) += usb_kbd.oCOBJS-$(CONFIG_USB_DEVICE) += cmd_usbslave.o
COBJS&:= $(sort $(COBJS-y))
【9】打开/include/s3c2410.h,定位到198行附近,加入下面代码:
#define BIT_TICK&&(0x1&&8)#define BIT_WDT&&&(0x1&&9)#define BIT_WDT_AC97&&&(0x1&&9)#define BIT_TIMER0&&(0x1&&10)#define BIT_TIMER1&&(0x1&&11)
【10】编译报错:undefined reference to `udc_disconnect'
打开/lib_arm/bootm.c定位到124行,udc_disconnect ();此句也要注释掉:
&/* we assume that the kernel is in place */&printf ("\nStarting kernel ...\n\n");
#ifdef CONFIG_USB_DEVICE&{&&extern void udc_disconnect (void);&&//udc_disconnect ();&}#endif
否则编译报错。
【11】解决编译告警问题:
(1)warning: suggest parentheses around arithmetic in operand of '|'
打开/drivers/usb/slave/usbsetup.c,定位到47行附近,需分别在下面表达式中加上括号,修改如下:
// ===================================================================// All following commands will operate only in case // - ep0_csr is valid.// ===================================================================//warning: suggest parentheses around arithmetic in operand of '|'#define CLR_EP0_OUT_PKT_RDY() &&usbdevregs-&EP0_CSR_IN_CSR1_REG=(( ep0_csr & (~EP0_WR_BITS ) ) | \&&&&&&EP0_SERVICED_OUT_PKT_RDY )& #define CLR_EP0_OUTPKTRDY_DATAEND() &usbdevregs-&EP0_CSR_IN_CSR1_REG=(&(&ep0_csr & (~EP0_WR_BITS) ) | \&&&&&&(EP0_SERVICED_OUT_PKT_RDY|EP0_DATA_END) )& &&&&&#define SET_EP0_IN_PKT_RDY() &&usbdevregs-&EP0_CSR_IN_CSR1_REG=( ( ep0_csr & (~EP0_WR_BITS ) )&| \&&&&&&(EP0_IN_PKT_READY) )& #define SET_EP0_INPKTRDY_DATAEND() &usbdevregs-&EP0_CSR_IN_CSR1_REG=( ( ep0_csr & (~EP0_WR_BITS ) ) | \&&&&&&(EP0_IN_PKT_READY|EP0_DATA_END) )& &&&&&#define CLR_EP0_SETUP_END() &&usbdevregs-&EP0_CSR_IN_CSR1_REG=( ( ep0_csr & (~EP0_WR_BITS ) ) | \&&&&&&(EP0_SERVICED_SETUP_END) )
#define CLR_EP0_SENT_STALL() &&usbdevregs-&EP0_CSR_IN_CSR1_REG=( ep0_csr & (~EP0_WR_BITS)& \&&&&&&(~EP0_SENT_STALL) )
#define FLUSH_EP0_FIFO() &&{while(usbdevregs-&OUT_FIFO_CNT1_REG)usbdevregs-&fifo[0].EP_FIFO_REG;}
打开/drivers/usb/slave/usbin.c,定位到35行附近,修改如下:
// ===================================================================// All following commands will operate in case // - in_csr1 is valid.// ===================================================================
#define SET_EP1_IN_PKT_READY()& usbdevregs-&EP0_CSR_IN_CSR1_REG= ( ( in_csr1 &(~ EPI_WR_BITS ) ) \&&&&&| EPI_IN_PKT_READY )& #define SET_EP1_SEND_STALL()&usbdevregs-&EP0_CSR_IN_CSR1_REG= ( ( in_csr1 & (~EPI_WR_BITS& ) ) \&&&&&| EPI_SEND_STALL) )#define CLR_EP1_SENT_STALL()&usbdevregs-&EP0_CSR_IN_CSR1_REG= (& in_csr1 & (~EPI_WR_BITS& ) \&&&&&&(~EPI_SENT_STALL) )#define FLUSH_EP1_FIFO() &usbdevregs-&EP0_CSR_IN_CSR1_REG= ( ( in_csr1 & (~EPI_WR_BITS ) ) \&&&&&| EPI_FIFO_FLUSH)
打开/drivers/usb/slave/usbinit.c,定位到482行附近,修改如下:
void Clk0_Enable(int clock_sel)&{&// 0:MPLLin, 1:UPLL, 2:FCLK, 3:HCLK, 4:PCLK, 5:DCLK0&gpioregs-&MISCCR =& ( gpioregs-&MISCCR&~(7&&4) ) | (clock_sel&&4);&gpioregs-&GPHCON = ( gpioregs-&GPHCON&~(3&&18) ) | (2&&18);}void Clk1_Enable(int clock_sel){&// 0:MPLLout, 1:UPLL, 2:RTC, 3:HCLK, 4:PCLK, 5:DCLK1&&gpioregs-&MISCCR = ( gpioregs-&MISCCR&~(7&&8) ) | (clock_sel&&8);&gpioregs-&GPHCON = ( gpioregs-&GPHCON&~(3&&20) ) | (2&&20);}
(2) warning:&function declaration isn't a prototype&...
打开/drivers/usb/slave/interrupt.c,定位到113行附近,修改如下:
void IRQ_Handle(void)(3) warning: implicit declaration of function 'ClearPending_my'&&
打开/drivers/usb/slave/usbmain.c,定位到27行,加入其引用声明:
extern S3C24X0_USB_DEVICE *extern S3C24X0_DMAS *extern void ClearPending_my(int bit);&
打开/drivers/usb/slave/usbout.c,定位到38行,加入其引用声明:
extern S3C24X0_INTERRUPT *extern S3C24X0_USB_DEVICE *extern S3C24X0_DMAS *extern void ClearPending_my(int bit);&
<FONT color=#)warning: passing argument 1 of 'usb_receive' makes pointer from integer without a cast
打开/common/cmd_usbslavet.c,分别定位到71行附近,修改如下:
dwUSBBufBase = load_ &&& dwUSBBufSize = (FREE_RAM_SIZE&(~(0x80000-1))); &&& if (g_bUSBWait)&&&&&&& len = FREE_RAM_SIZE;
&&& g_dwDownloadLen = usb_receive( (char*) dwUSBBufBase, len, g_bUSBWait);&&& sprintf(buf, "%X", g_dwDownloadLen);&&& setenv("filesize", buf);
(5)warning:'PrintEpoPkt' defined but not used
打开/drivers/usb/slave/usbout.c,定位到27行,
#if 0void PrintEpoPkt(U8 *pt,int cnt){&&&&&& DbgPrintf("[BOUT:%d:",cnt);&&& for(i=0;i&i++)&&& &DbgPrintf("%x,",pt[i]);&&& DbgPrintf("]");}#endif
定位到40行附近,将其声明注释掉:
//static void PrintEpoPkt(U8 *pt,int cnt);static void RdPktEp3_CheckSum(U8 *buf,int num);
warning: 'tempBuf' defined but not used
定位到69行,将其注释掉:
U8 ep3Buf[EP3_PKT_SIZE];//static U8 tempBuf[64+1];
打开/cpu/arm920t/s3c24x0/interrupts.c,定位到45行附近,修改如下:
void do_irq (struct pt_regs *pt_regs){&S3C24X0_INTERRUPT * irq = S3C24X0_GetBase_INTERRUPT();&u_int32_t intpnd = irq-&INTPND;&intpnd =}
其它warning: unused variable... ...处理方法相同,这里就不再列出。
<FONT color=#.2,usb slave 下载功能编译测试
[root@localhost u-boot-2009.08]# make distclean[root@localhost u-boot-2009.08]# make
编译完成后得到u-boot.bin,将开发板断电,拨到nor档上电用 supervivi的a命令下载后在拨到nand档启动:
source& - run script from memorytftpboot- boot image via network using TFTP protocolunzip&& - unzip a memory regionusbslave- usbslave - get file from host(PC)
version - print monitor version[u-boot@MINI2440]# usbslaveUSB host is connected. Waiting a download.
Now, Downloading [ADDRESS:h,TOTAL:2022422][u-boot@MINI2440]# bootm ## Booting kernel from Legacy Image at
...&& Image Name:&& mini2440_linux&& Created:&&&&& && 3:37:00 UTC&& Image Type:&& ARM Linux Kernel Image (uncompressed)&& Data Size:&&& 2022348 Bytes =& 1.9 MB&& Load Address: && Entry Point:& && Verifying Checksum ... OK&& Loading Kernel Image ... OKOK
Starting kernel ...
可以看内核在启动。
8.3 开启usb host功能
【1】打开/include/configs/mini2440.h,定位到112行附近:加入下面代码:
/*&* Command line configuration.&*/#include &config_cmd_default.h&
#define CONFIG_CMD_ASKENV#define CONFIG_CMD_CACHE#define CONFIG_CMD_DATE#define CONFIG_CMD_ELF#define CONFIG_CMD_NAND#define CONFIG_CMD_JFFS2& /* JFFS2 Support*/#define CONFIG_CMD_PING /*ping command support*/#define CONFIG_CMD_USB#define CONFIG_CMD_FAT
#define CONFIG_BOOTDELAY&3
其中相关宏定义的作用:
CONFIG_CMD_USB :使能USB相关命令的支持CONFIG_CMD_FAT :使能FAT文件系统相关命令的支持
定位到194行附近加入下面代码:
/*USB device support*/#define CONFIG_USB_DEVICE &&1#ifdef CONFIG_USB_DEVICE#define CONFIG_USE_IRQ &&&1#endif
#if 1#define CONFIG_USB_OHCI#define CONFIG_USB_STORAGE#define CONFIG_DOS_PARTITION#define CONFIG_SYS_DEVICE_DEREGISTER#define CONFIG_SUPPORT_VFAT#define LITTLEENDIAN//#define CONFIG_USB_TTY//#define CONFIG_USB_KEYBOARD#endif
相关宏定义的作用:
CONFIG_USB_OHCI :使能USB_OHCI协议的支持CONFIG_USB_STORAGE:使能USB存储设备的支持CONFIG_DOS_PARTITION : 使能FAT文件系统分区的支持CONFIG_SUPPORT_VFAT : 使能FAT32文件系统的支持LITTLEENDIAN : 定义数据为小端模式
CONFIG_USB_TTY:使能USB终端(本次未使用)CONFIG_USB_KEYBOARD是对USB键盘的支持(本次未使用)
【2】打开/cpu/arm920t/s3c24x0/usb_ohci.c,定位到43行附近,加入下面代码:
#ifdef CONFIG_USB_OHCI
#if defined(CONFIG_S3C2400)#include &s3c2400.h&#elif defined(CONFIG_S3C2410) || defined (CONFIG_S3C2440)#include &s3c2410.h&#endif
8.4 usb host 功能编译测试:
【1】先看下USB 操作指令指令&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 功能usb reset&&&&&&&&&&&&&&&&&&&&&&& &初始化USB 控制器usb stop [f]&&&&&&&&&&&&&&&&&&&&& 关闭USB 控制器usb tree&&&&&&&&&&&&&&&&&&&&&&&&& &已连接的USB 设备树usb info [dev]&&&&&&&&&&&&&&&&& 显示USB 设备[dev]的信息usb storage&&&&&&&&&&&&&&&&&&&& 显示已连接的USB 存储设备usb dev [dev]&&&&&&&&&&&&&&&&& &显示和设置当前USB 存储设备usb part [dev]&&&&&&&&&&&&&&&&& 显示USB 存储设备[dev]的分区信息usb read addr blk# cnt&&& 读取USB 存储设备数据
【2】准备一个fat32格式的U盘
【3】在编译完成后,nor 档下载nand 档启动,操作如下:
[u-boot@MINI2440]# usb helpUSB is stopped. Please issue 'usb start' first.[u-boot@MINI2440]# usb start(Re)start USB...USB:&& scanning bus for devices... cannot reset port 2!?2 USB Device(s) found&&&&&& scanning bus for storage devices... 1 Storage Device(s) found[u-boot@MINI2440]# usb storage& Device 0: Vendor: USB 2.0& Rev: 5.00 Prod: Flash Drive&&&&&&&&&&& Type: Removable Hard Disk&&&&&&&&&&& Capacity: 1012.5 MB = 0.9 GB (2073600 x 512)[u-boot@MINI2440]# usb part 0print_part of 0
Partition Map for USB device 0& --&& Partition Type: DOS
Partition&&&& Start Sector&&&& Num Sectors&&&& Type&&& 1&&&&&&&&&&&&&&&&&& 32&&&&&&&& 2073568&&&&&& b
[u-boot@MINI2440]# fatload usb 0:1 0x uImage_T35reading uImage_T35.....................................................................................................................................................................................................
2022412 bytes read[u-boot@MINI2440]# bootm 0x## Booting kernel from Legacy Image at
...&& Image Name:&& mini2440_linux&& Created:&&&&& && 3:37:00 UTC&& Image Type:&& ARM Linux Kernel Image (uncompressed)
可以看到内核开始启动了。
接下来将为u-boot-2009..08增加SD 功能和I2C功能。8
【内容导航】
相关资讯 & & &
& (02月05日)
& (06/02/:50)
& (02月05日)
& (06/02/:48)
图片资讯 & & &
   同意评论声明
   发表
尊重网上道德,遵守中华人民共和国的各项有关法律法规
承担一切因您的行为而直接或间接导致的民事或刑事法律责任
本站管理人员有权保留或删除其管辖留言中的任意内容
本站有权在网站内转载或引用您的评论
参与本评论即表明您已经阅读并接受上述条款
mqynms2 发表于 强大的网站,
(0) 匿名 发表于 我按照你的移植,报part.c中有错误,402,403,404行有错误,我搞不懂
(0) 匿名 发表于 dm9000_initialize函数没有定义。。
(0) sourire 发表于 学习了}

我要回帖

更多关于 bootstrap是什么意思 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信