• AnilKumar Ch's avatar
    can: c_can: Add d_can raminit support · 52cde85a
    AnilKumar Ch authored
    Add D_CAN raminit support to C_CAN driver to enable D_CAN RAM,
    which holds all the message objects during transmission or
    receiving of data. This initialization/de-initialization should
    be done in synchronous with D_CAN clock.
    
    In case of AM335X-EVM (current user of D_CAN driver) message RAM is
    controlled through control module register for both instances. So
    control module register details is required to initialization or
    de-initialization of message RAM according to instance number.
    
    Control module memory resource is obtained from D_CAN dt node and
    instance number obtained from device tree aliases node.
    
    This patch was tested on AM335x-EVM along with pinctrl data addition
    patch, d_can dt aliases addition and control module data addition.
    pinctrl data addition is not added to am335x-evm.dts (only supports
    CPLD profile#0) because d_can1 is supported under CPLD profile#1.
    Signed-off-by: default avatarAnilKumar Ch <anilkumar@ti.com>
    [mkl: fix instance for non DT in probe, cleaned up raminit]
    Signed-off-by: default avatarMarc Kleine-Budde <mkl@pengutronix.de>
    52cde85a
c_can.c 33.9 KB