Merge branch 'net-ipa-miscellaneous-cleanups'
Alex Elder says: ==================== net: ipa: miscellaneous cleanups This series contains some minor cleanups I've been meaning to get around to for a while. The first few remove the definitions of some currently-unused symbols. Several fix some warnings that are reported when the build is done with "W=2". All are simple and have no effect on the operation of the code. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
commit
3f53094ded
@ -254,8 +254,8 @@ static void gsi_irq_enable(struct gsi *gsi)
|
|||||||
|
|
||||||
/* We don't use inter-EE channel or event interrupts */
|
/* We don't use inter-EE channel or event interrupts */
|
||||||
val = GSI_CNTXT_TYPE_IRQ_MSK_ALL;
|
val = GSI_CNTXT_TYPE_IRQ_MSK_ALL;
|
||||||
val &= ~MSK_INTER_EE_CH_CTRL_FMASK;
|
val &= ~INTER_EE_CH_CTRL_FMASK;
|
||||||
val &= ~MSK_INTER_EE_EV_CTRL_FMASK;
|
val &= ~INTER_EE_EV_CTRL_FMASK;
|
||||||
iowrite32(val, gsi->virt + GSI_CNTXT_TYPE_IRQ_MSK_OFFSET);
|
iowrite32(val, gsi->virt + GSI_CNTXT_TYPE_IRQ_MSK_OFFSET);
|
||||||
|
|
||||||
val = GENMASK(gsi->channel_count - 1, 0);
|
val = GENMASK(gsi->channel_count - 1, 0);
|
||||||
@ -271,7 +271,7 @@ static void gsi_irq_enable(struct gsi *gsi)
|
|||||||
iowrite32(val, gsi->virt + GSI_CNTXT_GLOB_IRQ_EN_OFFSET);
|
iowrite32(val, gsi->virt + GSI_CNTXT_GLOB_IRQ_EN_OFFSET);
|
||||||
|
|
||||||
/* Never enable GSI_BREAK_POINT */
|
/* Never enable GSI_BREAK_POINT */
|
||||||
val = GSI_CNTXT_GSI_IRQ_ALL & ~EN_BREAK_POINT_FMASK;
|
val = GSI_CNTXT_GSI_IRQ_ALL & ~BREAK_POINT_FMASK;
|
||||||
iowrite32(val, gsi->virt + GSI_CNTXT_GSI_IRQ_EN_OFFSET);
|
iowrite32(val, gsi->virt + GSI_CNTXT_GSI_IRQ_EN_OFFSET);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1074,8 +1074,8 @@ static void gsi_isr_glob_ee(struct gsi *gsi)
|
|||||||
|
|
||||||
val &= ~ERROR_INT_FMASK;
|
val &= ~ERROR_INT_FMASK;
|
||||||
|
|
||||||
if (val & EN_GP_INT1_FMASK) {
|
if (val & GP_INT1_FMASK) {
|
||||||
val ^= EN_GP_INT1_FMASK;
|
val ^= GP_INT1_FMASK;
|
||||||
gsi_isr_gp_int1(gsi);
|
gsi_isr_gp_int1(gsi);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1600,7 +1600,7 @@ err_unwind_modem:
|
|||||||
/* Compute which modem channels need to be deallocated */
|
/* Compute which modem channels need to be deallocated */
|
||||||
mask ^= gsi->modem_channel_bitmap;
|
mask ^= gsi->modem_channel_bitmap;
|
||||||
while (mask) {
|
while (mask) {
|
||||||
u32 channel_id = __fls(mask);
|
channel_id = __fls(mask);
|
||||||
|
|
||||||
mask ^= BIT(channel_id);
|
mask ^= BIT(channel_id);
|
||||||
|
|
||||||
@ -1628,7 +1628,7 @@ static void gsi_channel_teardown(struct gsi *gsi)
|
|||||||
mutex_lock(&gsi->mutex);
|
mutex_lock(&gsi->mutex);
|
||||||
|
|
||||||
while (mask) {
|
while (mask) {
|
||||||
u32 channel_id = __fls(mask);
|
channel_id = __fls(mask);
|
||||||
|
|
||||||
mask ^= BIT(channel_id);
|
mask ^= BIT(channel_id);
|
||||||
|
|
||||||
@ -1972,7 +1972,6 @@ int gsi_init(struct gsi *gsi, struct platform_device *pdev, bool prefetch,
|
|||||||
*/
|
*/
|
||||||
init_dummy_netdev(&gsi->dummy_dev);
|
init_dummy_netdev(&gsi->dummy_dev);
|
||||||
|
|
||||||
/* Get the GSI IRQ and request for it to wake the system */
|
|
||||||
ret = platform_get_irq_byname(pdev, "gsi");
|
ret = platform_get_irq_byname(pdev, "gsi");
|
||||||
if (ret <= 0) {
|
if (ret <= 0) {
|
||||||
dev_err(dev, "DT error %d getting \"gsi\" IRQ property\n", ret);
|
dev_err(dev, "DT error %d getting \"gsi\" IRQ property\n", ret);
|
||||||
|
@ -258,6 +258,11 @@
|
|||||||
GSI_EE_N_CNTXT_TYPE_IRQ_OFFSET(GSI_EE_AP)
|
GSI_EE_N_CNTXT_TYPE_IRQ_OFFSET(GSI_EE_AP)
|
||||||
#define GSI_EE_N_CNTXT_TYPE_IRQ_OFFSET(ee) \
|
#define GSI_EE_N_CNTXT_TYPE_IRQ_OFFSET(ee) \
|
||||||
(0x0001f080 + 0x4000 * (ee))
|
(0x0001f080 + 0x4000 * (ee))
|
||||||
|
#define GSI_CNTXT_TYPE_IRQ_MSK_OFFSET \
|
||||||
|
GSI_EE_N_CNTXT_TYPE_IRQ_MSK_OFFSET(GSI_EE_AP)
|
||||||
|
#define GSI_EE_N_CNTXT_TYPE_IRQ_MSK_OFFSET(ee) \
|
||||||
|
(0x0001f088 + 0x4000 * (ee))
|
||||||
|
/* The masks below are used for the TYPE_IRQ and TYPE_IRQ_MASK registers */
|
||||||
#define CH_CTRL_FMASK GENMASK(0, 0)
|
#define CH_CTRL_FMASK GENMASK(0, 0)
|
||||||
#define EV_CTRL_FMASK GENMASK(1, 1)
|
#define EV_CTRL_FMASK GENMASK(1, 1)
|
||||||
#define GLOB_EE_FMASK GENMASK(2, 2)
|
#define GLOB_EE_FMASK GENMASK(2, 2)
|
||||||
@ -265,18 +270,6 @@
|
|||||||
#define INTER_EE_CH_CTRL_FMASK GENMASK(4, 4)
|
#define INTER_EE_CH_CTRL_FMASK GENMASK(4, 4)
|
||||||
#define INTER_EE_EV_CTRL_FMASK GENMASK(5, 5)
|
#define INTER_EE_EV_CTRL_FMASK GENMASK(5, 5)
|
||||||
#define GENERAL_FMASK GENMASK(6, 6)
|
#define GENERAL_FMASK GENMASK(6, 6)
|
||||||
|
|
||||||
#define GSI_CNTXT_TYPE_IRQ_MSK_OFFSET \
|
|
||||||
GSI_EE_N_CNTXT_TYPE_IRQ_MSK_OFFSET(GSI_EE_AP)
|
|
||||||
#define GSI_EE_N_CNTXT_TYPE_IRQ_MSK_OFFSET(ee) \
|
|
||||||
(0x0001f088 + 0x4000 * (ee))
|
|
||||||
#define MSK_CH_CTRL_FMASK GENMASK(0, 0)
|
|
||||||
#define MSK_EV_CTRL_FMASK GENMASK(1, 1)
|
|
||||||
#define MSK_GLOB_EE_FMASK GENMASK(2, 2)
|
|
||||||
#define MSK_IEOB_FMASK GENMASK(3, 3)
|
|
||||||
#define MSK_INTER_EE_CH_CTRL_FMASK GENMASK(4, 4)
|
|
||||||
#define MSK_INTER_EE_EV_CTRL_FMASK GENMASK(5, 5)
|
|
||||||
#define MSK_GENERAL_FMASK GENMASK(6, 6)
|
|
||||||
#define GSI_CNTXT_TYPE_IRQ_MSK_ALL GENMASK(6, 0)
|
#define GSI_CNTXT_TYPE_IRQ_MSK_ALL GENMASK(6, 0)
|
||||||
|
|
||||||
#define GSI_CNTXT_SRC_CH_IRQ_OFFSET \
|
#define GSI_CNTXT_SRC_CH_IRQ_OFFSET \
|
||||||
@ -328,57 +321,39 @@
|
|||||||
GSI_EE_N_CNTXT_GLOB_IRQ_STTS_OFFSET(GSI_EE_AP)
|
GSI_EE_N_CNTXT_GLOB_IRQ_STTS_OFFSET(GSI_EE_AP)
|
||||||
#define GSI_EE_N_CNTXT_GLOB_IRQ_STTS_OFFSET(ee) \
|
#define GSI_EE_N_CNTXT_GLOB_IRQ_STTS_OFFSET(ee) \
|
||||||
(0x0001f100 + 0x4000 * (ee))
|
(0x0001f100 + 0x4000 * (ee))
|
||||||
#define ERROR_INT_FMASK GENMASK(0, 0)
|
|
||||||
#define GP_INT1_FMASK GENMASK(1, 1)
|
|
||||||
#define GP_INT2_FMASK GENMASK(2, 2)
|
|
||||||
#define GP_INT3_FMASK GENMASK(3, 3)
|
|
||||||
|
|
||||||
#define GSI_CNTXT_GLOB_IRQ_EN_OFFSET \
|
#define GSI_CNTXT_GLOB_IRQ_EN_OFFSET \
|
||||||
GSI_EE_N_CNTXT_GLOB_IRQ_EN_OFFSET(GSI_EE_AP)
|
GSI_EE_N_CNTXT_GLOB_IRQ_EN_OFFSET(GSI_EE_AP)
|
||||||
#define GSI_EE_N_CNTXT_GLOB_IRQ_EN_OFFSET(ee) \
|
#define GSI_EE_N_CNTXT_GLOB_IRQ_EN_OFFSET(ee) \
|
||||||
(0x0001f108 + 0x4000 * (ee))
|
(0x0001f108 + 0x4000 * (ee))
|
||||||
#define EN_ERROR_INT_FMASK GENMASK(0, 0)
|
|
||||||
#define EN_GP_INT1_FMASK GENMASK(1, 1)
|
|
||||||
#define EN_GP_INT2_FMASK GENMASK(2, 2)
|
|
||||||
#define EN_GP_INT3_FMASK GENMASK(3, 3)
|
|
||||||
#define GSI_CNTXT_GLOB_IRQ_ALL GENMASK(3, 0)
|
|
||||||
|
|
||||||
#define GSI_CNTXT_GLOB_IRQ_CLR_OFFSET \
|
#define GSI_CNTXT_GLOB_IRQ_CLR_OFFSET \
|
||||||
GSI_EE_N_CNTXT_GLOB_IRQ_CLR_OFFSET(GSI_EE_AP)
|
GSI_EE_N_CNTXT_GLOB_IRQ_CLR_OFFSET(GSI_EE_AP)
|
||||||
#define GSI_EE_N_CNTXT_GLOB_IRQ_CLR_OFFSET(ee) \
|
#define GSI_EE_N_CNTXT_GLOB_IRQ_CLR_OFFSET(ee) \
|
||||||
(0x0001f110 + 0x4000 * (ee))
|
(0x0001f110 + 0x4000 * (ee))
|
||||||
#define CLR_ERROR_INT_FMASK GENMASK(0, 0)
|
/* The masks below are used for the general IRQ STTS, EN, and CLR registers */
|
||||||
#define CLR_GP_INT1_FMASK GENMASK(1, 1)
|
#define ERROR_INT_FMASK GENMASK(0, 0)
|
||||||
#define CLR_GP_INT2_FMASK GENMASK(2, 2)
|
#define GP_INT1_FMASK GENMASK(1, 1)
|
||||||
#define CLR_GP_INT3_FMASK GENMASK(3, 3)
|
#define GP_INT2_FMASK GENMASK(2, 2)
|
||||||
|
#define GP_INT3_FMASK GENMASK(3, 3)
|
||||||
|
#define GSI_CNTXT_GLOB_IRQ_ALL GENMASK(3, 0)
|
||||||
|
|
||||||
#define GSI_CNTXT_GSI_IRQ_STTS_OFFSET \
|
#define GSI_CNTXT_GSI_IRQ_STTS_OFFSET \
|
||||||
GSI_EE_N_CNTXT_GSI_IRQ_STTS_OFFSET(GSI_EE_AP)
|
GSI_EE_N_CNTXT_GSI_IRQ_STTS_OFFSET(GSI_EE_AP)
|
||||||
#define GSI_EE_N_CNTXT_GSI_IRQ_STTS_OFFSET(ee) \
|
#define GSI_EE_N_CNTXT_GSI_IRQ_STTS_OFFSET(ee) \
|
||||||
(0x0001f118 + 0x4000 * (ee))
|
(0x0001f118 + 0x4000 * (ee))
|
||||||
#define BREAK_POINT_FMASK GENMASK(0, 0)
|
|
||||||
#define BUS_ERROR_FMASK GENMASK(1, 1)
|
|
||||||
#define CMD_FIFO_OVRFLOW_FMASK GENMASK(2, 2)
|
|
||||||
#define MCS_STACK_OVRFLOW_FMASK GENMASK(3, 3)
|
|
||||||
|
|
||||||
#define GSI_CNTXT_GSI_IRQ_EN_OFFSET \
|
#define GSI_CNTXT_GSI_IRQ_EN_OFFSET \
|
||||||
GSI_EE_N_CNTXT_GSI_IRQ_EN_OFFSET(GSI_EE_AP)
|
GSI_EE_N_CNTXT_GSI_IRQ_EN_OFFSET(GSI_EE_AP)
|
||||||
#define GSI_EE_N_CNTXT_GSI_IRQ_EN_OFFSET(ee) \
|
#define GSI_EE_N_CNTXT_GSI_IRQ_EN_OFFSET(ee) \
|
||||||
(0x0001f120 + 0x4000 * (ee))
|
(0x0001f120 + 0x4000 * (ee))
|
||||||
#define EN_BREAK_POINT_FMASK GENMASK(0, 0)
|
|
||||||
#define EN_BUS_ERROR_FMASK GENMASK(1, 1)
|
|
||||||
#define EN_CMD_FIFO_OVRFLOW_FMASK GENMASK(2, 2)
|
|
||||||
#define EN_MCS_STACK_OVRFLOW_FMASK GENMASK(3, 3)
|
|
||||||
#define GSI_CNTXT_GSI_IRQ_ALL GENMASK(3, 0)
|
|
||||||
|
|
||||||
#define GSI_CNTXT_GSI_IRQ_CLR_OFFSET \
|
#define GSI_CNTXT_GSI_IRQ_CLR_OFFSET \
|
||||||
GSI_EE_N_CNTXT_GSI_IRQ_CLR_OFFSET(GSI_EE_AP)
|
GSI_EE_N_CNTXT_GSI_IRQ_CLR_OFFSET(GSI_EE_AP)
|
||||||
#define GSI_EE_N_CNTXT_GSI_IRQ_CLR_OFFSET(ee) \
|
#define GSI_EE_N_CNTXT_GSI_IRQ_CLR_OFFSET(ee) \
|
||||||
(0x0001f128 + 0x4000 * (ee))
|
(0x0001f128 + 0x4000 * (ee))
|
||||||
#define CLR_BREAK_POINT_FMASK GENMASK(0, 0)
|
/* The masks below are used for the general IRQ STTS, EN, and CLR registers */
|
||||||
#define CLR_BUS_ERROR_FMASK GENMASK(1, 1)
|
#define BREAK_POINT_FMASK GENMASK(0, 0)
|
||||||
#define CLR_CMD_FIFO_OVRFLOW_FMASK GENMASK(2, 2)
|
#define BUS_ERROR_FMASK GENMASK(1, 1)
|
||||||
#define CLR_MCS_STACK_OVRFLOW_FMASK GENMASK(3, 3)
|
#define CMD_FIFO_OVRFLOW_FMASK GENMASK(2, 2)
|
||||||
|
#define MCS_STACK_OVRFLOW_FMASK GENMASK(3, 3)
|
||||||
|
#define GSI_CNTXT_GSI_IRQ_ALL GENMASK(3, 0)
|
||||||
|
|
||||||
#define GSI_CNTXT_INTSET_OFFSET \
|
#define GSI_CNTXT_INTSET_OFFSET \
|
||||||
GSI_EE_N_CNTXT_INTSET_OFFSET(GSI_EE_AP)
|
GSI_EE_N_CNTXT_INTSET_OFFSET(GSI_EE_AP)
|
||||||
|
@ -81,7 +81,6 @@ struct gsi_tre {
|
|||||||
|
|
||||||
/* gsi_tre->flags mask values (in CPU byte order) */
|
/* gsi_tre->flags mask values (in CPU byte order) */
|
||||||
#define TRE_FLAGS_CHAIN_FMASK GENMASK(0, 0)
|
#define TRE_FLAGS_CHAIN_FMASK GENMASK(0, 0)
|
||||||
#define TRE_FLAGS_IEOB_FMASK GENMASK(8, 8)
|
|
||||||
#define TRE_FLAGS_IEOT_FMASK GENMASK(9, 9)
|
#define TRE_FLAGS_IEOT_FMASK GENMASK(9, 9)
|
||||||
#define TRE_FLAGS_BEI_FMASK GENMASK(10, 10)
|
#define TRE_FLAGS_BEI_FMASK GENMASK(10, 10)
|
||||||
#define TRE_FLAGS_TYPE_FMASK GENMASK(23, 16)
|
#define TRE_FLAGS_TYPE_FMASK GENMASK(23, 16)
|
||||||
|
@ -42,11 +42,8 @@
|
|||||||
/** enum ipa_status_opcode - status element opcode hardware values */
|
/** enum ipa_status_opcode - status element opcode hardware values */
|
||||||
enum ipa_status_opcode {
|
enum ipa_status_opcode {
|
||||||
IPA_STATUS_OPCODE_PACKET = 0x01,
|
IPA_STATUS_OPCODE_PACKET = 0x01,
|
||||||
IPA_STATUS_OPCODE_NEW_FRAG_RULE = 0x02,
|
|
||||||
IPA_STATUS_OPCODE_DROPPED_PACKET = 0x04,
|
IPA_STATUS_OPCODE_DROPPED_PACKET = 0x04,
|
||||||
IPA_STATUS_OPCODE_SUSPENDED_PACKET = 0x08,
|
IPA_STATUS_OPCODE_SUSPENDED_PACKET = 0x08,
|
||||||
IPA_STATUS_OPCODE_LOG = 0x10,
|
|
||||||
IPA_STATUS_OPCODE_DCMP = 0x20,
|
|
||||||
IPA_STATUS_OPCODE_PACKET_2ND_PASS = 0x40,
|
IPA_STATUS_OPCODE_PACKET_2ND_PASS = 0x40,
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -54,13 +51,6 @@ enum ipa_status_opcode {
|
|||||||
enum ipa_status_exception {
|
enum ipa_status_exception {
|
||||||
/* 0 means no exception */
|
/* 0 means no exception */
|
||||||
IPA_STATUS_EXCEPTION_DEAGGR = 0x01,
|
IPA_STATUS_EXCEPTION_DEAGGR = 0x01,
|
||||||
IPA_STATUS_EXCEPTION_IPTYPE = 0x04,
|
|
||||||
IPA_STATUS_EXCEPTION_PACKET_LENGTH = 0x08,
|
|
||||||
IPA_STATUS_EXCEPTION_FRAG_RULE_MISS = 0x10,
|
|
||||||
IPA_STATUS_EXCEPTION_SW_FILT = 0x20,
|
|
||||||
/* The meaning of the next value depends on whether the IP version */
|
|
||||||
IPA_STATUS_EXCEPTION_NAT = 0x40, /* IPv4 */
|
|
||||||
IPA_STATUS_EXCEPTION_IPV6CT = IPA_STATUS_EXCEPTION_NAT,
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Status element provided by hardware */
|
/* Status element provided by hardware */
|
||||||
@ -79,36 +69,9 @@ struct ipa_status {
|
|||||||
};
|
};
|
||||||
|
|
||||||
/* Field masks for struct ipa_status structure fields */
|
/* Field masks for struct ipa_status structure fields */
|
||||||
|
|
||||||
#define IPA_STATUS_SRC_IDX_FMASK GENMASK(4, 0)
|
|
||||||
|
|
||||||
#define IPA_STATUS_DST_IDX_FMASK GENMASK(4, 0)
|
#define IPA_STATUS_DST_IDX_FMASK GENMASK(4, 0)
|
||||||
|
|
||||||
#define IPA_STATUS_FLAGS1_FLT_LOCAL_FMASK GENMASK(0, 0)
|
|
||||||
#define IPA_STATUS_FLAGS1_FLT_HASH_FMASK GENMASK(1, 1)
|
|
||||||
#define IPA_STATUS_FLAGS1_FLT_GLOBAL_FMASK GENMASK(2, 2)
|
|
||||||
#define IPA_STATUS_FLAGS1_FLT_RET_HDR_FMASK GENMASK(3, 3)
|
|
||||||
#define IPA_STATUS_FLAGS1_FLT_RULE_ID_FMASK GENMASK(13, 4)
|
|
||||||
#define IPA_STATUS_FLAGS1_RT_LOCAL_FMASK GENMASK(14, 14)
|
|
||||||
#define IPA_STATUS_FLAGS1_RT_HASH_FMASK GENMASK(15, 15)
|
|
||||||
#define IPA_STATUS_FLAGS1_UCP_FMASK GENMASK(16, 16)
|
|
||||||
#define IPA_STATUS_FLAGS1_RT_TBL_IDX_FMASK GENMASK(21, 17)
|
|
||||||
#define IPA_STATUS_FLAGS1_RT_RULE_ID_FMASK GENMASK(31, 22)
|
#define IPA_STATUS_FLAGS1_RT_RULE_ID_FMASK GENMASK(31, 22)
|
||||||
|
|
||||||
#define IPA_STATUS_FLAGS2_NAT_HIT_FMASK GENMASK_ULL(0, 0)
|
|
||||||
#define IPA_STATUS_FLAGS2_NAT_ENTRY_IDX_FMASK GENMASK_ULL(13, 1)
|
|
||||||
#define IPA_STATUS_FLAGS2_NAT_TYPE_FMASK GENMASK_ULL(15, 14)
|
|
||||||
#define IPA_STATUS_FLAGS2_TAG_INFO_FMASK GENMASK_ULL(63, 16)
|
|
||||||
|
|
||||||
#define IPA_STATUS_FLAGS3_SEQ_NUM_FMASK GENMASK(7, 0)
|
|
||||||
#define IPA_STATUS_FLAGS3_TOD_CTR_FMASK GENMASK(31, 8)
|
|
||||||
|
|
||||||
#define IPA_STATUS_FLAGS4_HDR_LOCAL_FMASK GENMASK(0, 0)
|
|
||||||
#define IPA_STATUS_FLAGS4_HDR_OFFSET_FMASK GENMASK(10, 1)
|
|
||||||
#define IPA_STATUS_FLAGS4_FRAG_HIT_FMASK GENMASK(11, 11)
|
|
||||||
#define IPA_STATUS_FLAGS4_FRAG_RULE_FMASK GENMASK(15, 12)
|
|
||||||
#define IPA_STATUS_FLAGS4_HW_SPECIFIC_FMASK GENMASK(31, 16)
|
|
||||||
|
|
||||||
#ifdef IPA_VALIDATE
|
#ifdef IPA_VALIDATE
|
||||||
|
|
||||||
static void ipa_endpoint_validate_build(void)
|
static void ipa_endpoint_validate_build(void)
|
||||||
@ -1048,8 +1011,7 @@ static bool ipa_endpoint_skb_build(struct ipa_endpoint *endpoint,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* The format of a packet status element is the same for several status
|
/* The format of a packet status element is the same for several status
|
||||||
* types (opcodes). The NEW_FRAG_RULE, LOG, DCMP (decompression) types
|
* types (opcodes). Other types aren't currently supported.
|
||||||
* aren't currently supported
|
|
||||||
*/
|
*/
|
||||||
static bool ipa_status_format_packet(enum ipa_status_opcode opcode)
|
static bool ipa_status_format_packet(enum ipa_status_opcode opcode)
|
||||||
{
|
{
|
||||||
@ -1086,7 +1048,7 @@ static bool ipa_status_drop_packet(const struct ipa_status *status)
|
|||||||
{
|
{
|
||||||
u32 val;
|
u32 val;
|
||||||
|
|
||||||
/* Deaggregation exceptions we drop; others we consume */
|
/* Deaggregation exceptions we drop; all other types we consume */
|
||||||
if (status->exception)
|
if (status->exception)
|
||||||
return status->exception == IPA_STATUS_EXCEPTION_DEAGGR;
|
return status->exception == IPA_STATUS_EXCEPTION_DEAGGR;
|
||||||
|
|
||||||
@ -1432,11 +1394,10 @@ void ipa_endpoint_suspend_one(struct ipa_endpoint *endpoint)
|
|||||||
if (!(endpoint->ipa->enabled & BIT(endpoint->endpoint_id)))
|
if (!(endpoint->ipa->enabled & BIT(endpoint->endpoint_id)))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (!endpoint->toward_ipa)
|
if (!endpoint->toward_ipa) {
|
||||||
ipa_endpoint_replenish_disable(endpoint);
|
ipa_endpoint_replenish_disable(endpoint);
|
||||||
|
|
||||||
if (!endpoint->toward_ipa)
|
|
||||||
(void)ipa_endpoint_program_suspend(endpoint, true);
|
(void)ipa_endpoint_program_suspend(endpoint, true);
|
||||||
|
}
|
||||||
|
|
||||||
/* IPA v3.5.1 doesn't use channel stop for suspend */
|
/* IPA v3.5.1 doesn't use channel stop for suspend */
|
||||||
stop_channel = endpoint->ipa->version != IPA_VERSION_3_5_1;
|
stop_channel = endpoint->ipa->version != IPA_VERSION_3_5_1;
|
||||||
|
@ -723,8 +723,8 @@ static int ipa_probe(struct platform_device *pdev)
|
|||||||
bool modem_alloc;
|
bool modem_alloc;
|
||||||
bool modem_init;
|
bool modem_init;
|
||||||
struct ipa *ipa;
|
struct ipa *ipa;
|
||||||
phandle phandle;
|
|
||||||
bool prefetch;
|
bool prefetch;
|
||||||
|
phandle ph;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
ipa_validate_build();
|
ipa_validate_build();
|
||||||
@ -736,13 +736,13 @@ static int ipa_probe(struct platform_device *pdev)
|
|||||||
return -EPROBE_DEFER;
|
return -EPROBE_DEFER;
|
||||||
|
|
||||||
/* We rely on remoteproc to tell us about modem state changes */
|
/* We rely on remoteproc to tell us about modem state changes */
|
||||||
phandle = of_property_read_phandle(dev->of_node, "modem-remoteproc");
|
ph = of_property_read_phandle(dev->of_node, "modem-remoteproc");
|
||||||
if (!phandle) {
|
if (!ph) {
|
||||||
dev_err(dev, "DT missing \"modem-remoteproc\" property\n");
|
dev_err(dev, "DT missing \"modem-remoteproc\" property\n");
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
rproc = rproc_get_by_phandle(phandle);
|
rproc = rproc_get_by_phandle(ph);
|
||||||
if (!rproc)
|
if (!rproc)
|
||||||
return -EPROBE_DEFER;
|
return -EPROBE_DEFER;
|
||||||
|
|
||||||
|
@ -426,7 +426,7 @@ enum ipa_cs_offload_en {
|
|||||||
IPA_CS_RSVD
|
IPA_CS_RSVD
|
||||||
};
|
};
|
||||||
|
|
||||||
/** enum ipa_aggr_en - aggregation type field in ENDP_INIT_AGGR_N */
|
/** enum ipa_aggr_en - aggregation enable field in ENDP_INIT_AGGR_N */
|
||||||
enum ipa_aggr_en {
|
enum ipa_aggr_en {
|
||||||
IPA_BYPASS_AGGR = 0,
|
IPA_BYPASS_AGGR = 0,
|
||||||
IPA_ENABLE_AGGR = 1,
|
IPA_ENABLE_AGGR = 1,
|
||||||
|
@ -144,7 +144,7 @@ static void ipa_uc_response_hdlr(struct ipa *ipa, enum ipa_irq_id irq_id)
|
|||||||
* should only receive responses from the microcontroller when it has
|
* should only receive responses from the microcontroller when it has
|
||||||
* sent it a request message.
|
* sent it a request message.
|
||||||
*
|
*
|
||||||
* We can drop the clock reference taken in ipa_uc_init() once we
|
* We can drop the clock reference taken in ipa_uc_setup() once we
|
||||||
* know the microcontroller has finished its initialization.
|
* know the microcontroller has finished its initialization.
|
||||||
*/
|
*/
|
||||||
switch (shared->response) {
|
switch (shared->response) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user