内核配置
您可以通过以下内核配置选项来管理MCA驱动程序支持:
Digi微控制器辅助ConnectCore 8 som(
CONFIG_MFD_MCA_CC8
)
该选项支持MCA的核心功能,默认情况下作为内置选项启用ConnectCore 8X内核配置文件.
每个多功能驱动程序都实现了自己的内核选项。
内核驱动程序
MCA核心驱动位于:
文件 | 描述 |
---|---|
ConnectCore 8soms MCA核心驱动 |
|
ConnectCore 8soms MCA I2C通信驱动 |
|
ConnectCore 8soms MCA中断驱动程序 |
设备树绑定和自定义
MCA设备树绑定记录在文档/ devicetree /绑定/打码/数码网络,mca-cc8.txt
.
MCA通过i.MX8QXP CPU的I2C0口连接:
&i2c0 {McA_cc8x: McA@63 {compatible = "digi,mca-cc8x";Reg = <0x63>;Interrupt-parent = <&gpio2>;interrupts = <10 IRQ_TYPE_LEVEL_HIGH>;中断控制器;#interrupt-cells = <2>;fw-update-gpio = <&gpio1 5 GPIO_ACTIVE_LOW>;Pinctrl-names = "default";pintrl -0 = <& pintrl_mca_cc8x >;… }; };
MCA设备树节点对于它支持的每个多功能驱动程序都有一个子节点。 |
系统状态寄存器
MCA通过sysfs提供复位和唤醒事件原因的状态信息。
重启原因
Linux提供了导致MCA微控制器和i.MX8QXP处理器复位的信息。
MCA固件版本0.04及更高版本支持此功能。你可以使用sysinfo 命令来检查您的MCA固件版本。 |
MCA单片机
使用以下命令显示上次MCA重置时标记的事件原因:
#cat /sys/bus/i2c/devices/0-0063/last_mca_reset低电压,上电
last_mca_reset价值 | 描述 |
---|---|
会唤醒 |
低泄漏唤醒 |
低电压 |
VCC_MCA电压低 |
监管机构 |
内部MCA看门狗复位 |
复位销 |
复位引脚断言 |
上电 |
通电状态 |
注意,可以同时发出多个值的信号。
i.MX8QXP处理器
使用以下命令显示上次i.MX8QXP重置时标记的事件原因:
#cat /sys/bus/i2c/devices/0-0063/last_mpu_reset上电
last_mpu_reset价值 | 描述 |
---|---|
上电 |
通电状态 |
系统复位 |
系统复位(系统调用) |
监管机构 |
看门狗驱动复位 |
去唤醒 |
从断电状态中唤醒 |
MCA重置 |
MCA复位(内部看门狗)触发主控板复位 |
起床的原因
Linux提供了有关哪个MCA接口从低功耗(挂起或关机)唤醒系统的信息。
|
使用以下命令读取最后一次ConnectCore 8X唤醒原因:
#cat /sys/bus/i2c/devices/0-0063/last_wakeup_reason电源IO
last_wakeup_reason价值 | 描述 |
---|---|
电源输入输出 |
电源IO引脚。通常接在电源按钮上 |
计时器 |
内部MCA定时器 |
清债信托公司 |
实时时钟闹钟 |
LP UART |
MCA UART(在SOMv1上不可用) |
篡改0,篡改1,篡改2,篡改3 |
数字/模拟篡改接口 |
Io0、io1、io2、io3、io4、io5、io6、io7、io8、io9、io10、io11、io12、io13、io14、io15、io16、io17、io18、io19 |
数字/模拟IO引脚(配置为数字中断或模拟比较器) |
Vcc |
Vcc检测中断 |
CPU |
其他CPU或PMIC中断 |
MCA固件版本0.04及更高版本支持此功能。你可以使用sysinfo 命令来检查您的MCA固件版本。 |
MCA NVRAM
此功能在MCA固件版本0.08及更高版本上得到支持。你可以使用sysinfo 命令来检查您的MCA固件版本。 |
MCA提供8字节的NVRAM内存。当电路板连接到电源时,这种通用存储器可以在断电模式下保存数据,或者只有当您的电路板具有硬币电池时才没有电源。
你可以通过一个sysfs文件访问这个内存区域:/ sys /汽车/ i2c /设备/ 0 - 0063 / nvram
.可以直接写入NVRAMsysfs
使用以下命令创建文件:
#cd / sys /汽车/ i2c /设备/ 0 - 0063 /#Echo -n "12345678" > nvram
您可以使用以下命令读取内容内存:
#Hexdump -c nvram 0000000 1 2 3 4 5 6 7 8 0000008
如果这些值是可打印的,您还可以使用以下命令读取它们猫
:
#Cat nvram 12345678
外部32.768 kHz输出
可以将pad MCA_CLKOUT32K配置为输出32.768 kHz信号,用于对外部外设进行时钟处理。该功能由一个sysfs条目控制。在MCA_CLKOUT32K板上启用32.768 kHz信号:
#启用Echo的> /sys/bus/i2c/devices/0-0063/ext_32khz
禁用它:
#> /sys/bus/i2c/devices/0-0063/ext_32khz
读取pad的当前状态。
#禁用Cat /sys/bus/i2c/devices/0-0063/ext_32khz
基准电压1.2 V
您可以配置pad MCA_VREF_OUT以输出稳定的温度补偿1.2 V输出,作为外部外设的参考电压。
您可以使用此信号作为MCA ADC信号的参考电压。看到模数转换器(ADC)了解更多信息。 |
此功能在SOMv1上不可用;它只在SOMv2上可用。SOMv2集成了一个100nf电容,用于过滤输出中的纹波信号,而在其他Digi设计中,用户需要在外部填充这些信号。 |
该功能由一个sysfs条目控制。使能MCA_VREF_OUT板上的参考电压。
#启用Echo的> /sys/bus/i2c/devices/0-0063/vref
禁用它:
#Echo disabled > /sys/bus/i2c/devices/0-0063/vref
读取pad的当前状态。
#Cat /sys/bus/i2c/devices/0-0063/vref disabled
如果将MCA ADC配置为使用内部1.2 V基准电压,则MCA_VREF_OUT pad会自动输出信号,sysfs控制不起作用。 |
SOM启动模式配置
MCA固件版本0.09及更高版本支持此功能。你可以使用sysinfo 命令来检查您的MCA固件版本。它还要求mca_config_tool 1.14或更高版本用于配置。 |
MCA可以配置为以两种不同的方式引导SOM:
W4PK(等待电源键):直到MCA PWR_IO线被断言为低电平时,系统才启动。这条线通常连接到电源按钮。
BOP (boot on power): SOM上电后自动启动。这是默认模式。
此功能可以使用mca_config_tool
——boot_mode
论点。
看到MCA配置工具有关此工具和功能的其他信息。
安全系统重启和关机
执行一个可控和安全的软件重启顺序:
运行
Reboot_safe [-t
从命令行。它指示MCA在超时(以秒为单位)后强制系统重新启动。默认超时时间为30秒] <超时>
参数未定义。
执行一个可控和安全的软件下电顺序:
运行
Poweroff_safe [-t
从命令行。它指示MCA在超时(以秒为单位)后强制系统下电。默认超时时间为30秒] <超时>
参数未定义。