Lines Matching refs:g_sfc_info
37 static struct rksfc_info g_sfc_info; variable
74 int irq = g_sfc_info.irq; in rksfc_irq_config()
78 g_sfc_info.reg_base); in rksfc_irq_config()
110 clk_set_rate(g_sfc_info.clk, RKSFC_DLL_THRESHOLD_RATE); in rksfc_delay_lines_tuning()
115 clk_set_rate(g_sfc_info.clk, g_sfc_info.clk_rate); in rksfc_delay_lines_tuning()
120 clk_set_rate(g_sfc_info.clk, g_sfc_info.clk_rate); in rksfc_delay_lines_tuning()
150 g_sfc_info.dll_cells = left + (right - left) * 2 / 5; in rksfc_delay_lines_tuning()
152 g_sfc_info.dll_cells = left + (right - left) / 2; in rksfc_delay_lines_tuning()
154 g_sfc_info.dll_cells = 0; in rksfc_delay_lines_tuning()
157 if (g_sfc_info.dll_cells) { in rksfc_delay_lines_tuning()
159 left, right, g_sfc_info.dll_cells, g_sfc_info.clk_rate, in rksfc_delay_lines_tuning()
161 sfc_set_delay_lines((u16)g_sfc_info.dll_cells); in rksfc_delay_lines_tuning()
164 left, right, g_sfc_info.clk_rate); in rksfc_delay_lines_tuning()
166 clk_set_rate(g_sfc_info.clk, RKSFC_DLL_THRESHOLD_RATE); in rksfc_delay_lines_tuning()
167 g_sfc_info.clk_rate = clk_get_rate(g_sfc_info.clk); in rksfc_delay_lines_tuning()
195 g_sfc_info.irq = irq; in rksfc_probe()
196 g_sfc_info.reg_base = membase; in rksfc_probe()
197 g_sfc_info.ahb_clk = devm_clk_get(&pdev->dev, "hclk_sfc"); in rksfc_probe()
198 g_sfc_info.clk = devm_clk_get(&pdev->dev, "clk_sfc"); in rksfc_probe()
199 if (unlikely(IS_ERR(g_sfc_info.clk)) || in rksfc_probe()
200 unlikely(IS_ERR(g_sfc_info.ahb_clk))) { in rksfc_probe()
204 clk_prepare_enable(g_sfc_info.ahb_clk); in rksfc_probe()
205 g_sfc_info.clk_rate = clk_get_rate(g_sfc_info.clk); in rksfc_probe()
206 if (g_sfc_info.clk_rate > RKSFC_CLK_MAX_RATE) { in rksfc_probe()
207 clk_set_rate(g_sfc_info.clk, RKSFC_CLK_MAX_RATE); in rksfc_probe()
208 g_sfc_info.clk_rate = clk_get_rate(g_sfc_info.clk); in rksfc_probe()
210 clk_prepare_enable(g_sfc_info.clk); in rksfc_probe()
214 g_sfc_info.clk_rate); in rksfc_probe()
223 sfc_init(g_sfc_info.reg_base); in rksfc_probe()
224 if (sfc_get_version() >= SFC_VER_4 && g_sfc_info.clk_rate > RKSFC_DLL_THRESHOLD_RATE) in rksfc_probe()
230 dev_result = rkflash_dev_init(g_sfc_info.reg_base, FLASH_TYPE_SFC_NOR, &sfc_nor_ops); in rksfc_probe()
234 dev_result = rkflash_dev_init(g_sfc_info.reg_base, FLASH_TYPE_SFC_NAND, &sfc_nand_ops); in rksfc_probe()
250 if (g_sfc_info.dll_cells) in rksfc_resume()
251 sfc_set_delay_lines(g_sfc_info.dll_cells); in rksfc_resume()
252 return rkflash_dev_resume(g_sfc_info.reg_base); in rksfc_resume()