初期の質問

初期の質問

初期の質問

私はNXPチップSC16IS740を組み込みLinuxシステム(メインラインカーネルv4.8)の周辺機器として使用しています。ユースケースは非常に簡単です。継続的に送信されるuartライン(9600 8n1)は、チップドライバを介して読み取る必要があります。

これまでsc16is7xxカーネルのビルドにドライバモジュールを含めて、デバイスを/dev/ttySC0

しかし、今はシリアルポートを読み取ることができず、正しい設定がありません。私は単に試した

cat /dev/ttySC0

そして

minicom -D /dev/ttySC0 -b 9600 -8

デバイスディレクトリ(/sys/class/tty/ttySC0/)には読み取り専用ファイルのみがあり、ドライバの使い方に関するドキュメントが見つからなかったため、アイデアがありません。

このドライバを設定する正しい方法は何ですか?


エディタ:設定、ロギング、測定

構成

次のようにカーネルレシピ設定にモジュールを含めました。

CONFIG_SERIAL_SC16IS7XX_CORE=m
CONFIG_SERIAL_SC16IS7XX=m
CONFIG_SERIAL_SC16IS7XX_I2C=y

モジュールをロード/アンロードするには(デバイスがロード/アンロードされるようにします/dev/ttySC0)、次を使用します。

modprobe [-r] sc16is7xx

丸太

次のメッセージで結果を見つけますdmesgsc16is7

[ 5592.212905] [<c0379a14>] (uart_get_baud_rate) from [<bf07cf84>] (sc16is7xx_set_termios+0x1c4/0x374 [sc16is7xx])
[ 5592.213045] [<bf07cdc0>] (sc16is7xx_set_termios [sc16is7xx]) from [<c0379f04>] (uart_change_speed+0x5c/0x124)

これら2つのメッセージは、次の操作を行うたびに正確に記録されます。

  • /dev/ttySC0minicom接続の使用、開く、または閉じるcat
  • ボーレートまたはその他のシリアルポート設定の変更minicom

測定

オシロスコープを使用して測定(基本論理分析を含む)を実行すると、次の操作を実行するとチップと通信するI2Cラインが表示されます。

  • /dev/ttySC0次の接続を開閉します。minicom
  • ボーレートまたはその他のシリアルポート設定の変更minicom

そうしないと、回線でまったく通信が行われません。現在送信されているバイトを分析し、データテーブルを使用して確認しようとしています。つまり、どういうわけかドライバをデバッグしようとしています。

関連情報