0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

F1C100S添加USB驅(qū)動(dòng)

CHANBAEK ? 來(lái)源:博客園-LSWen ? 作者:博客園-LSWen ? 2023-02-15 14:58 ? 次閱讀

F1C100S添加USB驅(qū)動(dòng)

1.添加設(shè)備樹(shù)節(jié)點(diǎn):

在.dti文件中添加如下節(jié)點(diǎn):

otg_sram: sram-section@0 {
    compatible = "allwinner,suniv-f1c100s-sram-d",
             "allwinner,sun4i-a10-sram-d";
    reg = <0x0000 0x1000>;
    status = "disabled";
};

usb_otg: usb@1c13000 {
    compatible = "allwinner,suniv-musb";
    reg = <0x01c13000 0x0400>;
    clocks = <&ccu CLK_BUS_OTG>;
    resets = <&ccu RST_BUS_OTG>;
    interrupts = <26>;
    interrupt-names = "mc";
    phys = <&usbphy 0>;
    phy-names = "usb";
    extcon = <&usbphy 0>;
    allwinner,sram = <&otg_sram 1>;
    status = "disabled";
};

usbphy: phy@1c13400 {
    compatible = "allwinner,suniv-usb-phy";
    reg = <0x01c13400 0x10>;
    reg-names = "phy_ctrl";
    clocks = <&ccu CLK_USB_PHY0>;
    clock-names = "usb0_phy";
    resets = <&ccu RST_USB_PHY0>;
    reset-names = "usb0_reset";
    #phy-cells = <1>;
    status = "disabled";
};

然后在dts中開(kāi)啟設(shè)備節(jié)點(diǎn):

&otg_sram {
        status = "okay";
};

&usb_otg {
        dr_mode = "otg";
        status = "okay";
};

&usbphy {
        usb0_id_det-gpio = <&pio 4 2 GPIO_ACTIVE_HIGH>; /* PE2 */
        status = "okay";
};

2.由于linux并沒(méi)有對(duì)F1C100s寫(xiě)驅(qū)動(dòng),因此我們需要添加其驅(qū)動(dòng)程序,步驟如下:

drivers/phy/allwinner/phy-sun4i-usb.c文件修改如下

大約在100行處添加:
suniv_phy,

大約在862處添加:

static const struct sun4i_usb_phy_cfg suniv_cfg = {
    .num_phys = 1,
    .type = suniv_phy,
    .disc_thresh = 3,
    .phyctl_offset = REG_PHYCTL_A10,
    .dedicated_clocks = true,
};

大約在985處添加:

{ .compatible = "allwinner,suniv-usb-phy", .data = &suniv_cfg },

drivers/usb/musb/sunxi.c文件修改如下

大約在717行添加如下:
||of_device_is_compatible(np, "allwinner,suniv-musb")

大約在724處添加如下:

||of_device_is_compatible(np, "allwinner,suniv-musb")

大約在817處添加如下:

{ .compatible = "allwinner,suniv-musb", },

修改好后保存所有修改文件

3.選擇usb驅(qū)動(dòng)添加到內(nèi)核:

然后保存退出

4.編譯測(cè)試:

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • usb
    usb
    +關(guān)注

    關(guān)注

    60

    文章

    7772

    瀏覽量

    262360
  • 驅(qū)動(dòng)
    +關(guān)注

    關(guān)注

    12

    文章

    1788

    瀏覽量

    84896
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11123

    瀏覽量

    207892
  • 文件
    +關(guān)注

    關(guān)注

    1

    文章

    551

    瀏覽量

    24559
  • 設(shè)備樹(shù)
    +關(guān)注

    關(guān)注

    0

    文章

    37

    瀏覽量

    3095
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    如何在CYW943907AEVAL1F添加USB設(shè)備功能驅(qū)動(dòng)程序

    有人知道如何在CYW943907AEV1F添加新的USB設(shè)備功能驅(qū)動(dòng)程序或任何示例代碼、文檔嗎?謝謝! 以上來(lái)自于百度翻譯 以下為原文Does anyone know how to
    發(fā)表于 11-23 15:08

    D1sF1C100、C200等芯片相比有何優(yōu)勢(shì)呢

    D1sF1C100C200等芯片相比有何優(yōu)勢(shì)呢?
    發(fā)表于 12-28 06:35

    D1sF1C100、C200等芯片相比有何優(yōu)勢(shì)呢

    D1sF1C100C200等芯片相比有何優(yōu)勢(shì)呢?
    發(fā)表于 03-31 18:47

    f1c100s_tina項(xiàng)目添加lvgl軟件包一直編譯錯(cuò)誤是哪里的問(wèn)題呢?

    全志f1c100s RTT studio 創(chuàng)建的allwinner_tina項(xiàng)目,添加LVGL軟件包,編譯后一直報(bào)錯(cuò),內(nèi)部編譯錯(cuò)誤(internal compiler error
    發(fā)表于 02-01 16:01

    f1c100s芯片介紹

    進(jìn)入usb fel 模式, 可以用USB燒錄了。對(duì)于F1C100s而言啟動(dòng)時(shí)尋找用戶程序的位置順序如下:SDC0接口(PF0~PF5)上的SD(TF)卡;SPI0接口(PC0~PC3)上的Nor
    發(fā)表于 03-06 14:08

    嵌入式Linux的USB驅(qū)動(dòng)添加及應(yīng)用

    驅(qū)動(dòng)程序添加是嵌入式Linux開(kāi)發(fā)的關(guān)鍵技術(shù)之一。本文主要分析為MCF5272 添加USB驅(qū)動(dòng)程序的詳細(xì)過(guò)程, 簡(jiǎn)述UFTP 協(xié)議(
    發(fā)表于 04-15 11:58 ?12次下載

    夏新 F9USB驅(qū)動(dòng)下載

    夏新 F9USB驅(qū)動(dòng)下載.rar
    發(fā)表于 01-22 15:05 ?9次下載

    夏新 F99USB驅(qū)動(dòng)下載

    夏新 F99USB驅(qū)動(dòng)下載.rar
    發(fā)表于 01-22 15:06 ?7次下載

    NEC N100USB驅(qū)動(dòng)下載

    NEC N100USB驅(qū)動(dòng)下載.rar
    發(fā)表于 01-22 16:00 ?8次下載

    夏新 F6USB驅(qū)動(dòng)下載

    夏新 F6USB驅(qū)動(dòng)下載.rar
    發(fā)表于 01-25 15:56 ?5次下載

    漫反射光電開(kāi)關(guān)E3F-DS100C4-C1

    漫反射光電開(kāi)關(guān)E3F-DS100C4-C1
    發(fā)表于 08-18 10:40 ?31次下載

    如何添加USB Host Class驅(qū)動(dòng)

    ?? 站長(zhǎng)薦語(yǔ):雖然本文談的主題是添加USB Host Class驅(qū)動(dòng),但文中所用到的方法具有普遍意義,所有MCU工程師都可以使用這種方法,參照已有功能做其它功能的擴(kuò)展。 ?? ? 前 言 由于
    的頭像 發(fā)表于 10-28 09:23 ?4634次閱讀
    如何<b class='flag-5'>添加</b><b class='flag-5'>USB</b> Host Class<b class='flag-5'>驅(qū)動(dòng)</b>

    全志F1C100s數(shù)據(jù)手冊(cè)用戶手冊(cè)

    F1C100s處理器代表了Allwinner在移動(dòng)應(yīng)用處理器方面的最新成就。該處理器針對(duì)視頻boombox市場(chǎng)的需求。F1C100s處理器基于ARM9 CPU架構(gòu),具有高度的功能集成。F1C100
    發(fā)表于 07-14 11:35 ?60次下載

    全志F1C200s數(shù)據(jù)手冊(cè)

    ,包括H.264、H.263、MPEG1/2/4解碼器。集成音頻編解碼器和12S/PCM接口為最終用戶提供了良好的音頻體驗(yàn)。TV-IN接口通過(guò)連接攝像頭等視頻設(shè)備實(shí)現(xiàn)視頻輸入,TV-OUT接口通過(guò)連接電視設(shè)備實(shí)現(xiàn)視頻輸出。為了降低BOM成本,
    發(fā)表于 07-13 14:38 ?28次下載

    全志f1c100s與v3s參數(shù)對(duì)比

    全志f1c100s與v3s參數(shù)對(duì)比 全志科技是一家中國(guó)領(lǐng)先的芯片制造商,其產(chǎn)品廣泛應(yīng)用于消費(fèi)電子市場(chǎng),如智能手機(jī)、平板電腦、電視機(jī)、智能音響等。在全志科技的產(chǎn)品線中,F1C100s和V3s
    的頭像 發(fā)表于 08-17 11:28 ?1.2w次閱讀