Lines Matching refs:chan

113 	struct mbox_chan *chan;  in pcc_mbox_request_channel()  local
123 chan = get_pcc_channel(subspace_id); in pcc_mbox_request_channel()
125 if (IS_ERR(chan) || chan->cl) { in pcc_mbox_request_channel()
130 spin_lock_irqsave(&chan->lock, flags); in pcc_mbox_request_channel()
131 chan->msg_free = 0; in pcc_mbox_request_channel()
132 chan->msg_count = 0; in pcc_mbox_request_channel()
133 chan->active_req = NULL; in pcc_mbox_request_channel()
134 chan->cl = cl; in pcc_mbox_request_channel()
135 init_completion(&chan->tx_complete); in pcc_mbox_request_channel()
137 if (chan->txdone_method == TXDONE_BY_POLL && cl->knows_txdone) in pcc_mbox_request_channel()
138 chan->txdone_method |= TXDONE_BY_ACK; in pcc_mbox_request_channel()
140 spin_unlock_irqrestore(&chan->lock, flags); in pcc_mbox_request_channel()
142 return chan; in pcc_mbox_request_channel()
152 void pcc_mbox_free_channel(struct mbox_chan *chan) in pcc_mbox_free_channel() argument
156 if (!chan || !chan->cl) in pcc_mbox_free_channel()
159 spin_lock_irqsave(&chan->lock, flags); in pcc_mbox_free_channel()
160 chan->cl = NULL; in pcc_mbox_free_channel()
161 chan->active_req = NULL; in pcc_mbox_free_channel()
162 if (chan->txdone_method == (TXDONE_BY_POLL | TXDONE_BY_ACK)) in pcc_mbox_free_channel()
163 chan->txdone_method = TXDONE_BY_POLL; in pcc_mbox_free_channel()
165 spin_unlock_irqrestore(&chan->lock, flags); in pcc_mbox_free_channel()
181 static int pcc_send_data(struct mbox_chan *chan, void *data) in pcc_send_data() argument
183 struct acpi_pcct_hw_reduced *pcct_ss = chan->con_priv; in pcc_send_data()