Micro Controller Assist (MCA)
The ConnectCore 6UL system-on-module contains an ultra-low power ARM Cortex-M0+ (NXP Kinetis KL03: KL03P24M48SF0) Micro Controller Assist chip. The MCA is connected to the i.MX6UL CPU through the I2C1 port.
The MCA provides the following functionality through a multi-function device driver (MFD):
- Core functionality
- System-on-module reset logic
- 32.768 kHz output
- 1.2 V voltage reference
- Multi-function drivers
- ADC channels
- GPIOs
- Power button
- Real time clock
- Watchdog timer
Kernel configuration
You can manage the MCA driver support through the following kernel configuration option:
- Digi Micro Controller Assist for ConnectCore 6UL (CONFIG_MFD_MCA_CC6UL)
This option enables support for the core functionality of the MCA and is enabled as built-in on the default ConnectCore 6UL kernel configuration file.
Each of the multi-function drivers implement their own kernel options.
Platform driver mapping
The MCA core driver is located at:
File | Description |
---|---|
ConnectCore 6UL MCA core driver |
|
ConnectCore 6UL MCA I2C communication driver |
|
ConnectCore 6UL MCA interrupt driver |
Device tree bindings and customization
The MCA device tree binding is documented at Documentation/devicetree/bindings/mfd/digi,mca-cc6ul.txt.
The MCA is connected through I2C1 port of the i.MX6UL CPU:
&i2c1 { mca_cc6ul: mca@7e { compatible = "digi,mca_cc6ul_dt_ids"; reg = <0x7e>; interrupt-parent = <&gpio5>; interrupts = <4 IRQ_TYPE_EDGE_FALLING>; interrupt-controller; #interrupt-cells = <2>; fw-update-gpio = <&gpio4 14 GPIO_ACTIVE_LOW>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_mca_cc6ul>; ... }; };
Note The MCA device tree node has one sub-node for each multi-function driver it supports.
Functionality
See the following topics for more information on the different functionality the MCA offers: