Lines Matching refs:master
254 struct fsi_master *master; member
344 static u32 _fsi_master_read(struct fsi_master *master, u32 reg) in _fsi_master_read() argument
349 spin_lock_irqsave(&master->lock, flags); in _fsi_master_read()
350 ret = __fsi_reg_read(master->base + reg); in _fsi_master_read()
351 spin_unlock_irqrestore(&master->lock, flags); in _fsi_master_read()
358 static void _fsi_master_mask_set(struct fsi_master *master, in _fsi_master_mask_set() argument
363 spin_lock_irqsave(&master->lock, flags); in _fsi_master_mask_set()
364 __fsi_reg_mask_set(master->base + reg, mask, data); in _fsi_master_mask_set()
365 spin_unlock_irqrestore(&master->lock, flags); in _fsi_master_mask_set()
371 static int fsi_version(struct fsi_master *master) in fsi_version() argument
373 return master->core->ver; in fsi_version()
378 return fsi->master; in fsi_get_master()
388 return fsi->master->base == fsi->base; in fsi_is_port_a()
415 struct fsi_master *master = snd_soc_dai_get_drvdata(dai); in fsi_get_priv_frm_dai() local
418 return &master->fsia; in fsi_get_priv_frm_dai()
420 return &master->fsib; in fsi_get_priv_frm_dai()
507 struct fsi_master *master = fsi_get_master(fsi); in fsi_stream_is_working() local
511 spin_lock_irqsave(&master->lock, flags); in fsi_stream_is_working()
513 spin_unlock_irqrestore(&master->lock, flags); in fsi_stream_is_working()
528 struct fsi_master *master = fsi_get_master(fsi); in fsi_stream_init() local
531 spin_lock_irqsave(&master->lock, flags); in fsi_stream_init()
542 spin_unlock_irqrestore(&master->lock, flags); in fsi_stream_init()
548 struct fsi_master *master = fsi_get_master(fsi); in fsi_stream_quit() local
551 spin_lock_irqsave(&master->lock, flags); in fsi_stream_quit()
569 spin_unlock_irqrestore(&master->lock, flags); in fsi_stream_quit()
631 struct fsi_master *master = fsi_get_master(fsi); in fsi_format_bus_setup() local
635 if (fsi_version(master) >= 2) { in fsi_format_bus_setup()
679 struct fsi_master *master = fsi_get_master(fsi); in fsi_irq_enable() local
681 fsi_core_mask_set(master, imsk, data, data); in fsi_irq_enable()
682 fsi_core_mask_set(master, iemsk, data, data); in fsi_irq_enable()
688 struct fsi_master *master = fsi_get_master(fsi); in fsi_irq_disable() local
690 fsi_core_mask_set(master, imsk, data, 0); in fsi_irq_disable()
691 fsi_core_mask_set(master, iemsk, data, 0); in fsi_irq_disable()
694 static u32 fsi_irq_get_status(struct fsi_master *master) in fsi_irq_get_status() argument
696 return fsi_core_read(master, int_st); in fsi_irq_get_status()
702 struct fsi_master *master = fsi_get_master(fsi); in fsi_irq_clear_status() local
708 fsi_core_mask_set(master, int_st, data, 0); in fsi_irq_clear_status()
718 struct fsi_master *master = fsi_get_master(fsi); in fsi_spdif_clk_ctrl() local
725 fsi_core_mask_set(master, a_mclk, mask, val) : in fsi_spdif_clk_ctrl()
726 fsi_core_mask_set(master, b_mclk, mask, val); in fsi_spdif_clk_ctrl()
1183 struct fsi_master *master = fsi_get_master(fsi); in fsi_pio_start_stop() local
1192 fsi_master_mask_set(master, CLK_RST, clk, (enable) ? clk : 0); in fsi_pio_start_stop()
1239 struct fsi_master *master = data; in fsi_interrupt() local
1240 u32 int_st = fsi_irq_get_status(master); in fsi_interrupt()
1243 fsi_master_mask_set(master, SOFT_RST, IR, 0); in fsi_interrupt()
1244 fsi_master_mask_set(master, SOFT_RST, IR, IR); in fsi_interrupt()
1247 fsi_stream_transfer(&master->fsia.playback); in fsi_interrupt()
1249 fsi_stream_transfer(&master->fsib.playback); in fsi_interrupt()
1251 fsi_stream_transfer(&master->fsia.capture); in fsi_interrupt()
1253 fsi_stream_transfer(&master->fsib.capture); in fsi_interrupt()
1255 fsi_count_fifo_err(&master->fsia); in fsi_interrupt()
1256 fsi_count_fifo_err(&master->fsib); in fsi_interrupt()
1258 fsi_irq_clear_status(&master->fsia); in fsi_interrupt()
1259 fsi_irq_clear_status(&master->fsib); in fsi_interrupt()
1349 struct fsi_master *master = fsi_get_master(fsi); in fsi_dma_push_start_stop() local
1358 fsi_master_mask_set(master, CLK_RST, clk, (enable) ? clk : 0); in fsi_dma_push_start_stop()
1438 struct fsi_master *master = fsi_get_master(fsi); in fsi_fifo_init() local
1444 shift = fsi_master_read(master, FIFO_SZ); in fsi_fifo_init()
1621 struct fsi_master *master = fsi_get_master(fsi); in fsi_set_fmt_spdif() local
1623 if (fsi_version(master) < 2) in fsi_set_fmt_spdif()
1921 struct fsi_master *master; in fsi_probe() local
1963 master = devm_kzalloc(&pdev->dev, sizeof(*master), GFP_KERNEL); in fsi_probe()
1964 if (!master) { in fsi_probe()
1969 master->base = devm_ioremap_nocache(&pdev->dev, in fsi_probe()
1971 if (!master->base) { in fsi_probe()
1977 master->core = core; in fsi_probe()
1978 spin_lock_init(&master->lock); in fsi_probe()
1981 fsi = &master->fsia; in fsi_probe()
1982 fsi->base = master->base; in fsi_probe()
1984 fsi->master = master; in fsi_probe()
1994 fsi = &master->fsib; in fsi_probe()
1995 fsi->base = master->base + 0x40; in fsi_probe()
1997 fsi->master = master; in fsi_probe()
2007 dev_set_drvdata(&pdev->dev, master); in fsi_probe()
2010 dev_name(&pdev->dev), master); in fsi_probe()
2035 fsi_stream_remove(&master->fsib); in fsi_probe()
2037 fsi_stream_remove(&master->fsia); in fsi_probe()
2044 struct fsi_master *master; in fsi_remove() local
2046 master = dev_get_drvdata(&pdev->dev); in fsi_remove()
2053 fsi_stream_remove(&master->fsia); in fsi_remove()
2054 fsi_stream_remove(&master->fsib); in fsi_remove()
2083 struct fsi_master *master = dev_get_drvdata(dev); in fsi_suspend() local
2084 struct fsi_priv *fsia = &master->fsia; in fsi_suspend()
2085 struct fsi_priv *fsib = &master->fsib; in fsi_suspend()
2098 struct fsi_master *master = dev_get_drvdata(dev); in fsi_resume() local
2099 struct fsi_priv *fsia = &master->fsia; in fsi_resume()
2100 struct fsi_priv *fsib = &master->fsib; in fsi_resume()