Lines Matching refs:drvdata
93 static inline void fifo_icap_fifo_write(struct hwicap_drvdata *drvdata, in fifo_icap_fifo_write() argument
96 dev_dbg(drvdata->dev, "fifo_write: %x\n", data); in fifo_icap_fifo_write()
97 out_be32(drvdata->base_address + XHI_WF_OFFSET, data); in fifo_icap_fifo_write()
106 static inline u32 fifo_icap_fifo_read(struct hwicap_drvdata *drvdata) in fifo_icap_fifo_read() argument
108 u32 data = in_be32(drvdata->base_address + XHI_RF_OFFSET); in fifo_icap_fifo_read()
109 dev_dbg(drvdata->dev, "fifo_read: %x\n", data); in fifo_icap_fifo_read()
118 static inline void fifo_icap_set_read_size(struct hwicap_drvdata *drvdata, in fifo_icap_set_read_size() argument
121 out_be32(drvdata->base_address + XHI_SZ_OFFSET, data); in fifo_icap_set_read_size()
128 static inline void fifo_icap_start_config(struct hwicap_drvdata *drvdata) in fifo_icap_start_config() argument
130 out_be32(drvdata->base_address + XHI_CR_OFFSET, XHI_CR_WRITE_MASK); in fifo_icap_start_config()
131 dev_dbg(drvdata->dev, "configuration started\n"); in fifo_icap_start_config()
138 static inline void fifo_icap_start_readback(struct hwicap_drvdata *drvdata) in fifo_icap_start_readback() argument
140 out_be32(drvdata->base_address + XHI_CR_OFFSET, XHI_CR_READ_MASK); in fifo_icap_start_readback()
141 dev_dbg(drvdata->dev, "readback started\n"); in fifo_icap_start_readback()
160 u32 fifo_icap_get_status(struct hwicap_drvdata *drvdata) in fifo_icap_get_status() argument
162 u32 status = in_be32(drvdata->base_address + XHI_SR_OFFSET); in fifo_icap_get_status()
163 dev_dbg(drvdata->dev, "Getting status = %x\n", status); in fifo_icap_get_status()
171 static inline u32 fifo_icap_busy(struct hwicap_drvdata *drvdata) in fifo_icap_busy() argument
173 u32 status = in_be32(drvdata->base_address + XHI_SR_OFFSET); in fifo_icap_busy()
184 struct hwicap_drvdata *drvdata) in fifo_icap_write_fifo_vacancy() argument
186 return in_be32(drvdata->base_address + XHI_WFV_OFFSET); in fifo_icap_write_fifo_vacancy()
196 struct hwicap_drvdata *drvdata) in fifo_icap_read_fifo_occupancy() argument
198 return in_be32(drvdata->base_address + XHI_RFO_OFFSET); in fifo_icap_read_fifo_occupancy()
213 int fifo_icap_set_configuration(struct hwicap_drvdata *drvdata, in fifo_icap_set_configuration() argument
221 dev_dbg(drvdata->dev, "fifo_set_configuration\n"); in fifo_icap_set_configuration()
226 if (fifo_icap_busy(drvdata)) in fifo_icap_set_configuration()
240 fifo_icap_write_fifo_vacancy(drvdata); in fifo_icap_set_configuration()
251 fifo_icap_fifo_write(drvdata, *frame_buffer); in fifo_icap_set_configuration()
258 fifo_icap_start_config(drvdata); in fifo_icap_set_configuration()
262 while (fifo_icap_busy(drvdata)) { in fifo_icap_set_configuration()
268 dev_dbg(drvdata->dev, "done fifo_set_configuration\n"); in fifo_icap_set_configuration()
289 int fifo_icap_get_configuration(struct hwicap_drvdata *drvdata, in fifo_icap_get_configuration() argument
299 dev_dbg(drvdata->dev, "fifo_get_configuration\n"); in fifo_icap_get_configuration()
304 if (fifo_icap_busy(drvdata)) in fifo_icap_get_configuration()
318 fifo_icap_set_read_size(drvdata, words_to_read); in fifo_icap_get_configuration()
319 fifo_icap_start_readback(drvdata); in fifo_icap_get_configuration()
325 fifo_icap_read_fifo_occupancy(drvdata); in fifo_icap_get_configuration()
338 *data++ = fifo_icap_fifo_read(drvdata); in fifo_icap_get_configuration()
344 dev_dbg(drvdata->dev, "done fifo_get_configuration\n"); in fifo_icap_get_configuration()
357 void fifo_icap_reset(struct hwicap_drvdata *drvdata) in fifo_icap_reset() argument
364 reg_data = in_be32(drvdata->base_address + XHI_CR_OFFSET); in fifo_icap_reset()
366 out_be32(drvdata->base_address + XHI_CR_OFFSET, in fifo_icap_reset()
369 out_be32(drvdata->base_address + XHI_CR_OFFSET, in fifo_icap_reset()
378 void fifo_icap_flush_fifo(struct hwicap_drvdata *drvdata) in fifo_icap_flush_fifo() argument
385 reg_data = in_be32(drvdata->base_address + XHI_CR_OFFSET); in fifo_icap_flush_fifo()
387 out_be32(drvdata->base_address + XHI_CR_OFFSET, in fifo_icap_flush_fifo()
390 out_be32(drvdata->base_address + XHI_CR_OFFSET, in fifo_icap_flush_fifo()