-
Linux pinctrl子系統分析之四 pinctrl device的註冊與註銷
前面我們分析了pinctrl子系統相關的數據結構等內容,本章我們分析pinctrl device的註冊與註銷接口。 針對pinctrl device的註冊與註銷主要涉及pinctrl_register、pinctrl_unregister、devm_pinctrl_register、devm_pinctrl_unregister這幾個接口。
-
Linux pinctrl子系統分析之五 pinctrl map註冊與註銷
前面我們分析了pinctrl device的註冊與註銷接口。本章我們分析pinctrl maps的註冊,pinctrl maps屬於board pin描述相關的範疇。 針對pinctrl map的註冊與註銷主要涉及兩方面:當內核不支持設備樹時,則通過調用pinctrl_register_mappings、pinctrl_register_map接口實現pinctrl maps的註冊;當內核支持設備樹時,則在設備與驅動match後,在設備驅動的probe接口調用pinctrl_bind_pins
-
輕鬆掌握pinctrl子系統驅動開發——一個虛擬pinctrl dev驅動開發
這周主要對pinctrl子系統進行分析,該分析的基本上已經分析完成,唯一沒有細說的估計就是gpio與pinctrl之間的關聯了。本章即是pinctrl子系統分析的最後一章,本章我們主要實現一個虛擬的pinctrl device驅動,以便我們能夠使用pinctrl子系統提供的接口,實現pinctrl device的驅動開發(本章實現的驅動代碼可以在ubuntu18.04系統上正常運行)。
-
Pinctrl子系統重要概念
所以,要把引腳的復用、配置抽出來,做成Pinctrl子系統,給GPIO、I2C等模塊使用。BSP工程師要做什麼?看下圖:等BSP工程師在GPIO子系統、Pinctrl子系統中把自家晶片的支持加進去後,我們就可以非常方便地使用這些引腳了
-
「正點原子Linux連載」第四十五章 pinctrl和gpio子系統實驗一
45.1 pinctrl子系統45.1.1 pinctrl子系統簡介Linux驅動講究驅動分離與分層,pinctrl和gpio子系統就是驅動分離與分層思想下的產物,驅動分離與分層其實就是按照面向對象編程的設計思想而設計的設備驅動框架,關於驅動的分離與分層我們後面會講。
-
Linux regulator子系統分析之三 regulator註冊、註銷接口分析
在上一章我們介紹了regulator子系統相關的數據結構間的關聯以及每一個數據結構的定義。針對數據結構間的關聯則需要regulator子系統提供的接口實現。而本章我們就說明這些接口。設備驅動模型子系統中,並完成與regulator_class的關聯;為該regulator_dev創建設備屬性文件(在sysfs文件系統下創建屬性文件,以便應用程式通過設備屬性文件即可查看該regulator_dev相關的配置信息,如最小電壓、最大電壓、操作模式、使能狀態、bypass、suspend相關state等),通過函數add_regulator_attributes;
-
「正點原子FPGA連載」第二十六章gpio子系統簡介
26.1.2ZYNQ的gpio子系統驅動gpio子系統雖然方便了驅動開發者使用gpio,但是最終還是得去操作硬體寄存器;所以在使用gpio子系統之前,我們需要向內核gpio子系統註冊這一套操作硬體寄存器的「方法」,關於這個後面再說,我們先來看看在設備樹中是如何描述gpio信息。
-
GPIO和Pinctrl子系統的使用在100ASK_IMX6ULL上機實驗
NXP公司對於IMX6ULL晶片,有設備樹生成工具。GIT去了,使用GIT命令載後,在這個目錄下:01_all_series_quickstart\04_快速入門_正式開始\02_嵌入式Linux驅動開發基礎知識\source\05_gpio_and_pinctrl
-
Linux regmap子系統分析之二 從數據結構分析系統實現
上一章我們簡要分析了regmap子系統,本章我們將從regmap子系統的數據結構介紹regmap子系統的實現。 一、數據結構間的關聯及說明 針對regmap子系統,我們首先要知道regmap子系統要解決的痛點是什麼?
-
Linux下如何使用X86 CPU的GPIO
,但ACPI對各個作業系統有兼容性問題,這就會出現你在Windows設備管理器能看到該設備,到linux下什麼也沒有,因為大部分X86硬體廠商的BIOS主要兼容Windows為主,一般桌面CPU都是用的Windows系統嘛。
-
Linux CommonClock Framework分析之二 CCF子系統內部實現簡述
我們主要從如下幾點說明CCF子系統的內部設計流程:一、 CCF子系統內部數據結構的定義與關聯二、CCF子系統提供的接口一、 CCF子系統內部數據結構的定義與關聯在我們學習linux內核各子系統模塊時,通過其內部數據結構的定義及關聯,即可大致掌握其實現過程及所需要提供的接口等等
-
LINUX IIO子系統分析之二 IIO子系統數據結構分析
上一章我們簡要說明了IIO子系統的架構,本章我們通過數據結構的定義,分析IIO子系統的設計實現,本章的主要內容如下:一、IIO子系統各數據結構說明 二、數據結構間的關聯說明 一、IIO子系統各數據結構說明 在上一章我們大概說明了IIO子系統的框架
-
LINUX IIO子系統專欄分析之一 IIO子系統概述
從本章開始,我們進行IIO子系統專欄的分析文檔,本次IIO子系統專欄分析文檔大概包含如下幾章:一、 IIO子系統概述二、IIO子系統相關數據結構分析三、iio trigger 介紹四、iio event介紹五、iio buffer介紹六、iio device的註冊與註銷介紹七、iio trigger
-
「正點原子Linux連載」第五十九章Linux LCD驅動實驗
fb是一種機制,將系統中所有跟顯示有關的硬體以及軟體集合起來,虛擬出一個fb設備,當我們編寫好LCD驅動以後會生成一個名為/dev/fbX(X=0~n)的設備,應用程式通過訪問/dev/fbX這個設備就可以訪問LCD。
-
Linux V4l2子系統專欄之一 子系統概述
從本章開始,我們開始分析V4L2子系統(Video for Linux two),主要用於音視頻設備的框架。V4l2主要用於驅動視頻輸出設備(video outpt interface)、Video overlay interface、Video output overlay device、VBI interface、Radio interface等。
-
Linux regmap子系統分析之一 系統概述
本周開始我們學習下regmap子系統的架構。本系統專欄主要涉及如下幾個子章節:一、regmap子系統概述二、regmap子系統數據結構分析三、regmap子系統接口說明四、regmap bus實例說明(以i2c為例)本章我們主要對regmap子系統做一個簡單的說明。
-
Linux GUI子系統概述 GUI子系統的構成及工作流程
Linux GUI子系統概述 GUI子系統的構成及工作流程 Nick 發表於 2020-12-05 10:45:54 作者:Nick 開始前的幾點說明
-
「正點原子Linux連載」第三十七章Linux內核移植
使用FileZilla將其發送到Ubuntu中並解壓,得到名為linux-imx-rel_imx_4.1.15_2.1.0_ga的目錄,為了和NXP官方的名字區分,可以使用「mv」命令對其重命名,我這裡將其重命名為「linux-imx-rel_imx_4.1.15_2.1.0_ga_alientek」,命令如下:mv linux-imx-rel_imx_4.1.15
-
LINUX CommonClock Framework子系統分析之一 系統概述
本專欄主要介紹linux的ccf子系統,主要用於系統clock的管理等操作。本專欄我們大概分為如下幾章進行學習:一、CCF子系統概述二、CCF子系統數據結構分析及關聯說明三、CCF子系統的clk註冊與註銷接口實現分析四、虛擬的clk設備驅動實現 本章我們主要進行CCF子系統的概述。
-
Linux regulator子系統分析之一 總體概述
Linux regulator 子系統主要用於管理電壓、電流電源設備的電壓、電流輸入使能、動態調整電壓、電流等,屬於電源管理的一部分。從本章開始我們分析regulator子系統。主要分為如下幾部分:一、regulator子系統總體概述二、regulator相關數據結構分析三、regulator相關註冊、註銷函數分析四、regulator設備驅動實現本章主要對regulator子系統進行簡要說明。