linux : firmware 簡介
    我以為device要可以運作, 只要在linux安裝相關的driver即可  最近看到原來device除了driver之外, 還是需要firmware這東西才可以運作...  稍微做個筆記....      Firmware  基本上device要可以正常運作是需要driver和firmware.  driver可以看成是系統跟device溝通的橋樑. firmware則是執行在device上面的程式.  Firmware除了可以預先寫死在device上外,另一方式就是driver初始化device的時候. 從系統讀取firmware, 在寫入到device.      Firmware讀取流程   linux放置firmware的地方為/lib/firmware. 讀取firmware的時候就是透過此.  (1) 流程參考[2]   Driver跟kernel要求 "ar9170.fw"  kernel傳遞event給udev來要求firmware  udev執行對應的script,把firmware傳送至kernel所創建的一個特殊檔案  kernel從此特殊檔案讀取firmware, 再把資料傳送給driver  driver再把資料傳給device    (2) 流程參考[3][5]    1), kernel(driver):     - calls request_firmware(&fw_entry, $FIRMWARE, device)     - kernel searchs the fimware image with name $FIRMWARE directly     in the below search path of root filesystem:         User customized search path by module parameter 'path'[1]         "/lib/firmware/updates/" UTS_RELEASE,         "/lib/firmware/updates",         "/lib/firmware/" UTS_RELEASE,        ...