• Harinath Nampally's avatar
    iio: accel: mma8452: improvements to handle multiple events · 605f72de
    Harinath Nampally authored
        This driver supports multiple devices like mma8653,
        mma8652, mma8452, mma8453 and fxls8471. Almost all
        these devices have more than one event.
    
        Current driver design hardcodes the event specific
        information, so only one event can be supported by this
        driver at any given time.
        Also current design doesn't have the flexibility to
        add more events.
    
        This patch improves by detaching the event related
        information from chip_info struct,and based on channel
        type and event direction the corresponding event
        configuration registers are picked dynamically.
        Hence both transient and freefall events can be
        handled in read/write callbacks.
    
        Changes are thoroughly tested on fxls8471 device on imx6UL
        Eval board using iio_event_monitor user space program.
    
        After this fix both Freefall and Transient events are
        handled by the driver without any conflicts.
    Signed-off-by: default avatarHarinath Nampally <harinath922@gmail.com>
    Reviewed-by: default avatarMartin Kepplinger <martink@posteo.de>
    Signed-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
    605f72de
mma8452.c 44.5 KB