piix4_smbus * smbus controller not enabled 問題的預防
SMBus
SMBus與I2C的差别
SMBus 是 System Management Bus 的縮寫,是1995年由Intel提出的,應用于移動PC和桌面PC系統中的低速率通訊。它主要是希望通過一條廉價并且功能強大的總線(由兩條線組成),來控制主機闆上的裝置并收集相應的資訊。 SMBus 為系統和電源管理這樣的任務提供了一條控制總線,使用 SMBus 的系統,裝置之間發送和接收消息都是通過 SMBus,而不是使用單獨的控制線,這樣可以節省裝置的管腳數。 使用 SMBus,裝置還可以提供它的生産資訊,告訴系統它的型号,部件号等,針對挂起事件儲存它的狀态,報告不同類别的錯誤,接收控制參數,并傳回它的狀态等。 SMBus器件存在現有7層OSI網絡模型中的前3層,即實體層,資料鍊路層和網絡層。 SMBus最初的目的是為智能電池,充電電池和與其他系統通信的微控制器之間的通信鍊路而定義的。SMBus也被用來連接配接各種裝置,包括電源相關裝置,系統傳感器,EEPROM通訊裝置等等。 SMBus 最适用于筆記本電腦上,檢測各元件狀态并更新硬體設定引腳 (pull-high 或 pull-low)。例如,将不存在的 DIMM 時鐘關閉,或檢測電池低電壓狀态。 SMBus 的資料傳輸率隻有 100Kbit/s;這允許單一主機與 CPU 和多個主從硬碟通訊并收發資料。SMBus 也可用于免跳線設計的主機闆上。 SMBus 是 System Management Bus 的縮寫,譯為系統管理總線,SMBus是一種二線制串行總線,1996年第一版規範開始商用。它大部分基于I2C總線規範。和 I2C一樣,SMBus不需增加額外引腳,建立該總線主要是為了增加新的功能特性,但隻工作在100kHz且專門面向智能電池管理應用。它工作在主/從模式:主器件提供時鐘,在其發起一次傳輸時提供一個起始位,在其終止一次傳輸時提供一個停止位;從器件擁有一個唯一的7或10位從器件位址
SMBus與I2C的差别
SMBus與I2C總線之間在時序特性上存在一些差别。首先,SMBus需要一定資料保持時間,而 I2C總線則是從内部延長資料保持時間。SMBus具有逾時功能,是以當SCL太低而超過35 ms時,從器件将複位正在進行的通信。相反,I2C采用硬體複位。SMBus具有一種警報響應位址(ARA),是以當從器件産生一個中斷時,它不會馬上清除中斷,而是一直保持到其收到一個由主器件發送的含有其位址的ARA為止。SMBus隻工作在從10kHz到最高100kHz。最低工作頻率10kHz是由SMBus逾時功能決定的
1、問題
CentOS 7 莫名報錯,提示如下:

2、分析
1:前景
在編寫ansible劇本時,未儲存退出将電腦置于睡眠狀态,20分鐘後出現以上報錯
2:執行操作
無法執行除contronl -D外任何操作
contronl -D
3:處理
無處理方法,隻得進入單使用者模式,将可讀檔案複制出來。這裡是複制了ansible劇本内容,其餘隻能舍棄。
4:針對問題預防
1->檢視i2c_piix4插件
[[email protected] ansible]# lsmod |grep i2c_piix4
i2c_piix4 22401 0
i2c_core 63151 4 drm,i2c_piix4,drm_kms_helper,videodev
2->禁止加載i2c_piix4插件
[[email protected] ansible]# echo 'blacklist i2c_piix4' > /etc/modprobe.d/blacklist.conf
3->重新開機
[[email protected] ansible]# reboot