用于在高級操作系統(tǒng)(hlos)啟動之前預(yù)讀連接到智能電話的外圍設(shè)備的設(shè)備驅(qū)動的方法 ...的制作方法
【專利說明】
【背景技術(shù)】
[0001]以下說明一般涉及外圍設(shè)備驅(qū)動,更具體地說,涉及在高級操作系統(tǒng)(HLOS)啟動之前預(yù)讀智能電話和其它連接設(shè)備的外圍設(shè)備驅(qū)動。
[0002]可以對目前的智能電話和其它的無線設(shè)備進行配置,使得由各智能電話制造商制造的各個不同的智能電話型號可以使用不同的軟件環(huán)境,并且可以與不同的外設(shè)相關(guān)聯(lián)(既有在板上的也有通過有線或無線接口相連接的),即使所有的智能電話可能使用相同的高級操作系統(tǒng)(HLOS),例如Android。因此,針對智能電話的初始軟件配置會要求識別以及加載大量的外設(shè)類別下的每種可能的外設(shè)的驅(qū)動,可以在制造過程中的晚些時候?qū)⑼庠O(shè)的驅(qū)動與電話相關(guān)聯(lián)。結(jié)果是,對這些智能電話進行初始軟件配置要求廣泛的工程專業(yè)技能、大量的人力付出以及顯著的硬件和軟件資源。
[0003]由于在HLOS啟動之前并不知道可能的眾多外設(shè)中的哪一些是實際與智能電話相關(guān)聯(lián)的,所以即時地識別以及加載驅(qū)動會使HLOS啟動變得較為復(fù)雜和緩慢,而非可取的。
[0004]此外,由于可以將全部的眾多驅(qū)動加載到智能電話上,并且不清楚所加載的驅(qū)動中的哪一些可以供HLOS使用,所以很難由感興趣的一方(諸如,舉例來說,網(wǎng)絡(luò)運營商、智能電話制造商、或與HLOS相關(guān)聯(lián)的軟件公司(其希望向運行特定HLOS的所有電話提供更新,諸如,舉例來說,安全補丁,而不考慮電話訂閱到的電話制造商和網(wǎng)絡(luò)))來提供對HLOS的集中式管理。
[0005]因此,需要提供簡化的初始軟件配置過程。還需要以較低的功耗提供較快的HLOS啟動。還需要在使用相同HLOS的各種各樣的智能電話上提供對單個HLOS的集中管理和更新,即便是在不同的運營商網(wǎng)絡(luò)上。
【發(fā)明內(nèi)容】
[0006]下面給出對一個或多個方面的簡要概述,以提供對這些方面的基本理解。該概述不是對全部預(yù)期方面的泛泛概括,也不旨在標識全部方面的關(guān)鍵或重要元素或者描述任意或全部方面的范圍。其目的僅在于作為后文所提供更詳細描述的序言,以簡化形式提供一個或多個方面的一些概念。
[0007]在一個方面,描述了用于啟動用戶設(shè)備的方法。所述方法可以包括執(zhí)行所述用戶設(shè)備的設(shè)備啟動。所述方法可以包括配置所述用戶設(shè)備的外設(shè)和相關(guān)聯(lián)的驅(qū)動。所述方法可以包括啟動高級操作系統(tǒng)(HLOS)。所述配置可以發(fā)生在所述HLOS的啟動之前。
[0008]在一個方面,描述了用于啟動用戶設(shè)備的裝置。所述裝置可以包括用于執(zhí)行所述用戶設(shè)備的設(shè)備啟動的單元。所述裝置可以包括用于配置所述用戶設(shè)備的外設(shè)和相關(guān)聯(lián)的驅(qū)動的單元。所述裝置可以包括用于啟動高級操作系統(tǒng)(HLOS)的單元。所述配置可以發(fā)生在所述HLOS的啟動之前。
[0009]在一個方面,描述了用于啟動用戶設(shè)備的計算機程序產(chǎn)品。所述計算機程序產(chǎn)品可以包括計算機可讀介質(zhì),所述計算機可讀介質(zhì)包括代碼。所述代碼可以使計算機執(zhí)行所述用戶設(shè)備的設(shè)備啟動。所述代碼可以使計算機配置所述用戶設(shè)備的外設(shè)和相關(guān)聯(lián)的驅(qū)動。所述代碼可以使計算機啟動高級操作系統(tǒng)(HLOS)。所述配置可以發(fā)生在所述HLOS的啟動之前。
[0010]在一個方面,描述了用于啟動用戶設(shè)備的裝置。所述裝置可以包括存儲器、收發(fā)機和處理器。所述處理器可以被配置為執(zhí)行所述用戶設(shè)備的設(shè)備啟動。所述處理器可以被配置為配置所述用戶設(shè)備的外設(shè)和相關(guān)聯(lián)的驅(qū)動。所述處理器可以被配置為啟動高級操作系統(tǒng)(HLOS)。所述配置可以發(fā)生在所述HLOS的啟動之前。
[0011]在一個方面,描述了用于加載用戶設(shè)備的外圍設(shè)備驅(qū)動的方法。所述方法可以包括確定能與用戶設(shè)備相關(guān)聯(lián)的外設(shè)。所述方法可以包括加載所確定的外設(shè)的驅(qū)動。所加載的驅(qū)動可以與高級操作系統(tǒng)(HLOS)的架構(gòu)相關(guān)聯(lián),而不考慮在其上提供了所述HLOS的用戶設(shè)備的類型。
[0012]在一個方面,描述了用于加載用戶設(shè)備的外圍設(shè)備驅(qū)動的裝置。所述裝置可以包括用于確定能與用戶設(shè)備相關(guān)聯(lián)的外設(shè)的單元。所述裝置可以包括用于加載所確定的外設(shè)的驅(qū)動的單元。所加載的驅(qū)動可以與高級操作系統(tǒng)(HLOS)的架構(gòu)相關(guān)聯(lián),而不考慮在其上提供了所述HLOS的用戶設(shè)備的類型。
[0013]在一個方面,描述了用于加載用戶設(shè)備的外圍設(shè)備驅(qū)動的計算機程序產(chǎn)品。所述計算機程序產(chǎn)品可以包括計算機可讀介質(zhì),所述計算機可讀介質(zhì)包括代碼。所述代碼可以使計算機確定能與用戶設(shè)備相關(guān)聯(lián)的外設(shè)。所述代碼可以使計算機加載所確定的外設(shè)的驅(qū)動。所加載的驅(qū)動可以與高級操作系統(tǒng)(HLOS)的架構(gòu)相關(guān)聯(lián),而不考慮在其上提供了所述HLOS的用戶設(shè)備的類型。
[0014]在一個方面,描述了用于加載用戶設(shè)備的外圍設(shè)備驅(qū)動的裝置。所述裝置可以包括存儲器、收發(fā)機和處理器。所述處理器可以被配置為確定能與用戶設(shè)備相關(guān)聯(lián)的外設(shè)。所述處理器可以被配置為加載所確定的外設(shè)的驅(qū)動。所加載的驅(qū)動可以與高級操作系統(tǒng)(HLOS)的架構(gòu)相關(guān)聯(lián),而不考慮在其上提供了所述HLOS的用戶設(shè)備的類型。
[0015]為能達成前述及相關(guān)目的,這一個或多個方面包括在下文中充分描述并在權(quán)利要求書中特別指出的特征。以下說明和附圖詳細闡述了這一個或多個方面的某些說明性的特征。但是,這些特征僅僅是指示了可采用各個方面的原理的各種方式中的若干種,并且該說明旨在包括所有此類方面及其等效項。
【附圖說明】
[0016]以下結(jié)合附圖對公開的方面進行描述,附圖用來說明而非限制公開的方面,其中相同的附圖標記表示相同的元素,并且其中:
[0017]圖1是對用于啟動用戶設(shè)備的示例性方法的說明;
[0018]圖2是對用于確定與用戶設(shè)備相關(guān)聯(lián)的外設(shè)以及在外設(shè)配置文件表中更新每個所確定的外設(shè)的配置文件的示例性方法的說明;
[0019]圖3是對示例性外設(shè)配置文件表的說明;
[0020]圖4是對示例性高級操作系統(tǒng)的架構(gòu)的說明;
[0021]圖5是對在Linux內(nèi)核層內(nèi)的示例性顯示設(shè)備驅(qū)動的說明;
[0022]圖6是對使用單體方案來加載用戶設(shè)備的外圍設(shè)備驅(qū)動的示例性方法的說明;
[0023]圖7是對用于使用動態(tài)方案來加載用戶設(shè)備的外圍設(shè)備驅(qū)動的示例性方法的說明;以及
[0024]圖8是對示例性用戶設(shè)備的說明。
【具體實施方式】
[0025]現(xiàn)在參照附圖對各個方面進行描述。在以下的說明中,出于解釋的目的,給出了諸多具體細節(jié),以便提供對一個或多個方面的透徹理解。但是,顯而易見的是,可以不用這些具體細節(jié)來實施這些方面。
[0026]所描述的方面涉及用于啟動用戶設(shè)備或終端(例如智能電話)的方法和裝置。具體來說,所描述的方面可以允許用戶設(shè)備(UE)在啟動UE的高級操作系統(tǒng)(HLOS)之前配置與UE相關(guān)聯(lián)的外設(shè)。配置外設(shè)可以包括:自動地或手動地預(yù)加載或預(yù)讀與針對關(guān)聯(lián)于UE的每個外設(shè)的驅(qū)動相關(guān)的信息,以及通過存儲驅(qū)動信息(例如在閃存中)來使得其對于HLOS是可得到的。在啟動HLOS之前配置外設(shè)以及預(yù)加載與關(guān)聯(lián)于外設(shè)的驅(qū)動有關(guān)的信息可以允許HLOS被簡化并且較快地啟動。將對外設(shè)的配置和對驅(qū)動信息的預(yù)讀與HLOS分開還可以允許在任意數(shù)量的網(wǎng)絡(luò)上在使用相同HLOS的各種各樣的UE上對HLOS的集中管理和更新。這些方面還可以提供簡化的初始軟件配置過程。
[0027]圖1是對用于啟動用戶設(shè)備(諸如,舉例來說,圖8的UE 800)的示例性方法100的說明。在一個例子中,可以由圖8的處理器824結(jié)合圖8的存儲器826和收發(fā)機825來執(zhí)行方法100。
[0028]在110,方法100包括執(zhí)行用戶設(shè)備(UE)的設(shè)備啟動。例如,方法100可以執(zhí)行UE(例如智能電話)的設(shè)備啟動。在一些例子中,設(shè)備啟動可以使得加載HLOS前的操作環(huán)境,以便在與UE相關(guān)聯(lián)的高級操作系統(tǒng)(HLOS)啟動之前執(zhí)行后續(xù)操作。
[0029]在120,方法100包括配置UE的外設(shè)和相關(guān)聯(lián)的驅(qū)動。在一個方面,可以自動地配置外設(shè)和相關(guān)聯(lián)的驅(qū)動。在另一個方面,可以手動地配置外設(shè)和相關(guān)聯(lián)的驅(qū)動。在一個例子中,UE的外設(shè)可以是諸如圖8的外設(shè)821、822和823之類的基于片上智能電話(SPOC)的外設(shè)(例如,諸如處理器或調(diào)制解調(diào)器之類集成到SPOC上的外設(shè))、諸如圖8的外設(shè)811、812、813、814和815之類的板上外設(shè)(例如,諸如觸摸屏或照相機之類集成到UE中但并不作為SPOC的部分的外設(shè))和/或諸如圖8的外設(shè)831和823之類的板外外設(shè)(例如,諸如打印機或卡式掃描儀之類的、通過有線或無線接口連接到UE的外設(shè))。在一個方面,外設(shè)配置120可以發(fā)生在HLOS啟動之前(例如HLOS啟動之前的一時間處)。
[0030]在一個方面,舉例來說,可以在HLOS的啟動之前預(yù)讀與所配置的外設(shè)相關(guān)聯(lián)的驅(qū)動。在一個例子中,可以由HLOS前的操作環(huán)境來預(yù)讀驅(qū)動。在另一個方面,可以在HLOS的啟動之前激活驅(qū)動。在一個例子中,可以由HLOS前的操作環(huán)境來激活驅(qū)動。在另一個方面,可以由UE識別以及加載與所配置的外設(shè)相關(guān)聯(lián)的臨時驅(qū)動。在一個例子中,加載與所配置的外設(shè)相關(guān)聯(lián)的臨時驅(qū)動可以允許UE在HLOS的啟動之前使用所配置的外設(shè)。在另一個例子中,HLOS前的操作環(huán)境可以識別以及加載臨時驅(qū)動。在另一個例子中,臨時驅(qū)動可以與所配置的外設(shè)相關(guān)聯(lián)的驅(qū)動相同或不同。
[0031]外設(shè)配置120可以包括外設(shè)確定122、外設(shè)配置文件(profile)更新124和外設(shè)驅(qū)動準備126。在122,方法100可以包括確定與UE相關(guān)聯(lián)的外設(shè)。更具體地說,可以確定與UE相關(guān)聯(lián)的每個外設(shè)的外設(shè)配置文件是否在UE處可得到。在一個例子中,可以確定特定外設(shè)的配置文件是否已經(jīng)被預(yù)加載入外設(shè)配置文件表中(例如圖3的外設(shè)配置文件表),而不考慮特定外設(shè)是否是在SPOC上的、在板上的或板外的外設(shè)。特定外設(shè)的配置文件可以存儲作為外設(shè)配置文件表300中(特定外設(shè))的條目。在一個例子中,外設(shè)配置文件表(例如圖3的外設(shè)配置文件表300)可以存儲在UE (例如圖8的UE 800)的存儲器(例如圖8的存儲器82