1. 程式人生 > >嵌入式Linux核心配置、裁剪與編譯淺析(ARM版)

嵌入式Linux核心配置、裁剪與編譯淺析(ARM版)

/*====================*/
9、Device Drivers  ---> 
9.1、Generic Driver Options  ---> 
9.1.1、()  path to uevent helper 
9.1.2、[ ] Maintain a devtmpfs filesystem to mount at /dev 
9.1.3、[*] Select only drivers that don't need compile-time external firmware 
9.1.4、[*] Prevent firmware from being built 
9.1.5、-*- Userspace firmware loading support 
9.1.6、[*]   Include in-kernel firmware blobs in kernel binary 
9.1.7、()    External firmware blobs to build into the kernel binary 
9.1.8、[ ] Driver Core verbose debug messages 
9.1.9、[ ] Managed device resources verbose debug messages 
    管理裝置資源的冗長除錯資訊,我不需要 
 
9.2、<*> Connector - unified userspace <-> kernelspace linker  ---> 
核心空間與使用者空間的通道 
9.2.1、[*]   Report process events to userspace 
報告處理時間給使用者空間 
 
9.3、< > Memory Technology Device (MTD) support  ---> 
 
9.4、< > Parallel port support  ---> 
 
9.5、-*- Plug and Play support  ---> 
    [ ]   PNP debugging messages 
    除錯資訊,老規矩 
9.6、[ ] Block devices  --->   
我沒有想要支援的塊裝置,比如ramdisk , 磁碟陣列,CD/DVD 燒錄等,詳見內部選項 
 
9.7、[ ] Misc devices  ---> 
沒有需要支援的雜項裝置 
 
9.8、< > ATA/ATAPI/MFM/RLL support (DEPRECATED)  --->   
 
9.9、SCSI device support  --->   
< > RAID Transport Class  
-*- SCSI device support  
[] legacy /proc /scsi / support <=== 我沒有SCSI 裝置  
*** SCSI support type (disk, tape, CD-ROM) ***  
<*> SCSI disk support // 就算你用SATA ,此選項也必選  
< > SCSI tape support  
< > SCSI OnStream SC-x0 tape support  
<> SCSI CDROM support <=== 我沒有SCSI 裝置  
<> SCSI generic support <=== 我沒有SCSI 裝置  
< > SCSI media changer support  
[ ] Probe all LUNs on each SCSI device  
[] Verbose SCSI error reporting (kernel size +=12K) <=== 我沒有SCSI 裝置  
[ ] SCSI logging facility  
[ ] Asynchronous SCSI scanning  
SCSI Transports  --->  
<> Parallel SCSI (SPI) Transport Attributes <=== 我沒有SCSI 裝置  
< > FiberChannel Transport Attributes  
< > iSCSI Transport Attributes  
< > SAS Domain Transport Attributes  
< > SRP Transport Attributes  
[ ] SCSI low-level drivers  --->  
< > SCSI Device Handlers  --->  
< > OSD-Initiator library  
 
9.10、<M> Serial ATA and Parallel ATA drivers  ---> 
[*]  Verbose ATA error reporting  
[*]   ATA ACPI Support  
[ ]   SATA Port Multiplier support <=== 我只有一枚SATA 裝置,沒有使用 多路SATA/SATA Hub 的需求。Port Multiplier 是南橋晶片提供的一種支援多塊SATA 裝置,並共享總頻寬的技術。  
<*>   AHCI SATA support  
< >      Platform AHCI SATA support  
< >      Inito 162x SATA support  
< >   Silicon Image 3124/3132 SATA support  
[*]   ATA SFF support // 選擇自己硬體對應的驅動即可  
< >     ServerWorks Frodo / Apple K2 SATA support  
<*>     Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support // Intel ICH ,G 系列chipset driver  
< >     Marvell SATA support   
< >     NVIDIA SATA support    
< >     Pacific Digital ADMA support                    
< >     Pacific Digital SATA QStor support              
< >     Promise SATA TX2/TX4 support                    
< >     Silicon Image SATA support                      
< >     SiS 964/965/966/180 SATA support                
< >     ULi Electronics SATA support                    
< >     VIA SATA support       
< >     VITESSE VSC-7174 / INTEL 31244 SATA support     
< >     Initio 162x SATA support                        
< >     ACPI firmware driver for PATA                   
< >     ALi PATA support       
< >     AMD/NVidia PATA support <=== 我用的是SATA ,取消PATA 支援  
< >     ARTOP 6210/6260 PATA support                    
< >     ATI PATA support       
< >     CMD64x PATA support    
< >     CS5510/5520 PATA support                        
< >     CS5530 PATA support  
< >     CS5536 PATA support                              
< >     EFAR SLC90E66 support                           
< >     Generic ATA support                             
< >     HPT 366/368 PATA support                        
< >     HPT 343/363 PATA support                        
< >      IT8211/2 PATA support                           
< >     JMicron PATA support                            
< >     Compaq Triflex PATA support                     
< >     Marvell PATA support via legacy mode            
<>     Intel PATA MPIIX support <=== 我用的是SATA ,取消PATA 支援  
< >     Intel PATA old PIIX support <=== 我用的是SATA ,取消PATA 支援  
< >     NETCELL Revolution RAID support                 
< >     Nat Semi NS87410 PATA support                   
< >     Nat Semi NS87415 PATA support                   
< >     Older Promise PATA controller support           
< >     PC Tech RZ1000 PATA support                     
< >     SC1200 PATA support                             
< >     SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support  
< >     Promise PATA 2027x support                       
< >     CMD / Silicon Image 680 PATA support            
< >     SiS PATA support                                
< >     VIA PATA support                                
< >     Winbond SL82C105 PATA support                   
< >     Intel SCH PATA support <=== 我用的是SATA ,取消PATA 支援 
 
9.11、[ ] Multiple devices driver support (RAID and LVM)  ---> 
暫時沒有要使用Raid (磁碟陣列)和LVM (邏輯卷管理器,新增,刪除邏輯分割槽)的需求 
 
9.12、[ ] Fusion MPT device support  ---> 
 
9.13、IEEE 1394 (FireWire) support  ---> 
 
9.14、< > I2O device support  ---> 
 
9.15、[ ] Macintosh device drivers  ---> 
 Mac 系統硬體裝置驅動,沒什麼好說的,關 
 
9.16、-*- Network device support  --->     
    < >   Dummy net driver support                          
< >   Bonding driver support                            
< >   EQL (serial line load balancing) support          
< >   Universal TUN/TAP device driver support           
< >   Virtual ethernet pair device                      
< >   General Instruments Surfboard 1000                
< >   ARCnet support  --->    
-*-   PHY Device support and infrastructure  ---> <=== PHY ( 物理層控制晶片)  ,裡面沒有我對應的硬體  
[ ]   Ethernet (10 or 100Mbit)  ---> <=== 如果你是百 M 卡,請自行選擇  
[*]   Ethernet (1000 Mbit)  ---> // 選擇自己對應的硬體  
[ ]   Ethernet (10000 Mbit)  ---> <=== 如果你是萬M 卡,請自行選擇  
<>   Token Ring driver support  ---> <=== IBM 的令牌環網,用乙太網的忽略  
[ ]      Wireless LAN  --->   <=== 不用無線網路  
      *** Enable WiMAX (Networking options) to see the WiMAX drivers ***   
      USB Network Adapters  --->              
[ ]   Wan interfaces support  --->                       
<>   FDDI driver support <=== 光纖卡驅動,相信沒幾個人能用上這玩意  
< >   PPP (point-to-point protocol) support             
< >   SLIP (serial line) support                        
[ ]   Fibre Channel driver support  
[ ]    Network console logging support  
[ ]    VMware VMXNET3 ethernet driver  
 
9.17、[ ] ISDN support  ---> 
 
9.18、< > Telephony support  ---> 
9.19、Input device support  --->  
-*- Generic input layer (needed for keyboard, mouse, ...)  
-*-   Support for memoryless force-feedback devices     
<>   Polled input device skeleton  <=== 一種週期性輪詢硬體狀態的驅動,去掉後沒什麼副作用  
      *** Userland interfaces ***                       
-*-   Mouse interface  
[ ]     Provide legacy /dev /psaux device   
(1024)  Horizontal screen resolution                    
(768)   Vertical screen resolution                      
< >   Joystick interface                                
<*>   Event interface  // 將輸入裝置的事件儲存到/dev /input/eventX 供應用程式讀取  
< >   Event debugging                                   
      *** Input Device Drivers ***                      
-*-   Keyboards  --->  
[*]   Mice  --->                                
[]   Joysticks/Gamepads  --->  <=== 遊戲裝置  
[]   Tablets  ---> <=== 平板PC  
[]   Touchscreens  --->   <=== 觸控式螢幕  
[]   Miscellaneous devices  ---> <=== 雜七雜八的驅動,揚聲器,筆記本擴充套件按鍵等  
Hardware I/O ports  --->  
 
9.20、Character devices  ---> 
-*- Virtual terminal           
[*]   Support for binding and unbinding console drivers // 在某些系統上可以使用多個控制檯驅動程式( 如framebuffer 控制檯驅動程式), 該選項使得你可以選擇其中之一 ,我一般只用預設的虛擬終端  
[] /dev /kmem virtual device support  <=== 支援/dev /kmem 裝置,很少用       
[] Non-standard serial port support  <=== 我沒有非標準的串列埠裝置  
  Serial drivers  --->  
< > 8250/16550 and compatible serial support <=== 相容一些老式的串列埠裝置,我一般不用  
    *** Non-8250 serial port support ***  
< > Digi International NEO PCI Support  
-*- Unix98 PTY support         
[ ]   Support multiple instances of devpts               
[ ] Legacy (BSD) PTY support   
< > IPMI top-level message handler  --->                 
<*> Hardware Random Number Generator Core support       
< >   Timer IOMEM HW Random Number Generator support    
<*>   Intel HW Random Number Generator support      
<>   AMD HW Random Number Generator support  <=== 我是intel 主機板  
    < >   AMD Geode HW Random Number Generator support <=== 我是intel 主機板  
<>   VIA HW Random Number Generator support <=== 我是intel 主機板       
<> /dev /nvram support  <=== 直接存取CMOS ,太危險,關  
< > Siemens R3964 line discipline  
< > Applicom intelligent fieldbus card support          
< > ACP Modem (Mwave ) support  
< > NatSemi PC8736x GPIO Support                        
< > NatSemi Base GPIO Support  
< > AMD CS5535/CS5536 GPIO (Geode Companion Device)     
< > RAW driver (/dev /raw/rawN )  
[*] HPET - High Precision Event Timer                
[ ]   Allow mmap of HPET       
< > Hangcheck timer  
 
9.21、{M} I2C support  ---> 
感知硬體狀態,比如溫度,風扇轉速 
 
9.22、[ ] SPI support  --->    
 
9.23、PPS support  ---> 
 
9.24、[ ] GPIO Support  ---> 
 
9.25、{*} Power supply class support  ---> 
 
9.26、{*} Hardware Monitoring support  ---> 
 
9.27、-*- Generic Thermal sysfs driver  ---> 
 
9.28、[*] Watchdog Timer Support  ---> 
系統監視程式,我一般不用 
 
9.29、Sonics Silicon Backplane  ---> 
 
9.30、< > Multimedia support  --->   
 
9.31、[ ] Voltage and Current Regulator Support  --->   
 
9.32、< > Multimedia support  ---> 
    < > /dev /agpgart (AGP Support)  ---> < --- virtualbox不支援虛擬獨立顯示卡  
-*-  VGA arbitration  
(16) Maximium number of GPU  
[ ] Latop Hybird Graphics – GPU switch support             
<*> Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)  --->  
<> Lowlevel video output switch controls   
<> Support for frame buffer devices  --->  
[ ] Backlight & LCD device support  --->   < --- 支援背光設定,比如pda等。我用不到  
    Display device support  --->    
    Console display driver support  --->     
[ ]   Enable Scrollback Buffer in System RAM  
 
9.33、< > Sound card support  ---> 
用不到音效卡 
 
9.34、[ ] HID Devices  ---> 
用不到人力工程學裝置 
 
9.35、[] USB support  --->   <=== 這個選項,對於跑物理機建議 開啟,因為有可能你的鍵盤是USB 的,我是跑虛擬機器的,所以關了  
 
9.36、< > MMC/SD/SDIO card support  --->     
 
9.37、< > Sony MemoryStick card support (EXPERIMENTAL)  --->  
 
9.38、[] LED Support  --->   <=== 發光二級管,應該是跟顯示器相關的驅動,由於我執行 的是虛擬機器,所以我選擇關閉  
 
9.39、[ ] Accessibility support  --->  
 
9.40、< > InfiniBand support  --->    
9.41、[*] EDAC (Error Detection And Correction) reporting  ---> // 硬體故障repoting  
 
9.42、<*> Real Time Clock  --->  
 
9.43、[*] DMA Engine support  --->    
 
9.44、[ ] Auxiliary Display support  --->                      
 
9.45、< > Userspace I/O drivers  --->                          
  
9.46、TI VLYNQ  --->              
 
9.47、[ ] Staging drivers  --->       
 
9.48、[] X86 Platform Specific Device Drivers  ---> <=== 一些筆記本的驅動,我沒有相關裝置 
 
/*====================*/

10、Firmware Drivers  --->  
< > BIOS Enhanced Disk Drive calls determine boot disk  
< > BIOS update support for DELL systems via sysfs       
< > Dell Systems Management Base Driver                 
[*] Export DMI identification via sysfs to userspace    // 將BIOS 裡的DMI 區資訊匯出到使用者空間,部分系統管理工具可能會用到  
[ ] iSCSI Boot Firmware Table Attributes