staging: most: dim2: enable flow control for isoc channels
authorAndrey Shvetsov <andrey.shvetsov@k2l.de>
Fri, 12 May 2017 11:00:00 +0000 (13:00 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 15 May 2017 09:59:10 +0000 (11:59 +0200)
This patch enables the flow control feature for the isochronous channels
of the DIM2 macro.

Signed-off-by: Andrey Shvetsov <andrey.shvetsov@k2l.de>
Signed-off-by: Christian Gromm <christian.gromm@microchip.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/most/hdm-dim2/dim2_hal.c
drivers/staging/most/hdm-dim2/dim2_reg.h

index d604ec0..b9f3495 100644 (file)
@@ -219,10 +219,12 @@ static inline void dim2_clear_ctr(u32 ctr_addr)
 static void dim2_configure_cat(u8 cat_base, u8 ch_addr, u8 ch_type,
                               bool read_not_write, bool sync_mfe)
 {
+       bool isoc_fce = ch_type == CAT_CT_VAL_ISOC;
        u16 const cat =
                (read_not_write << CAT_RNW_BIT) |
                (ch_type << CAT_CT_SHIFT) |
                (ch_addr << CAT_CL_SHIFT) |
+               (isoc_fce << CAT_FCE_BIT) |
                (sync_mfe << CAT_MFE_BIT) |
                (false << CAT_MT_BIT) |
                (true << CAT_CE_BIT);
index 01fe499..f7d9fbc 100644 (file)
@@ -141,6 +141,7 @@ enum {
        ADT1_CTRL_ASYNC_BD_MASK = DIM2_MASK(11),
        ADT1_ISOC_SYNC_BD_MASK = DIM2_MASK(13),
 
+       CAT_FCE_BIT = 14,
        CAT_MFE_BIT = 14,
 
        CAT_MT_BIT = 13,