• Home
  • Raw
  • Download

Lines Matching refs:chan

34 	struct chan_info chan[1];  member
255 static void phy_cfg(const struct chan_info *chan, int channel, in phy_cfg() argument
258 struct rk3288_ddr_publ *publ = chan->publ; in phy_cfg()
259 struct rk3188_msch *msch = chan->msch; in phy_cfg()
376 static void set_bandwidth_ratio(const struct chan_info *chan, int channel, in set_bandwidth_ratio() argument
379 struct rk3288_ddr_pctl *pctl = chan->pctl; in set_bandwidth_ratio()
380 struct rk3288_ddr_publ *publ = chan->publ; in set_bandwidth_ratio()
381 struct rk3188_msch *msch = chan->msch; in set_bandwidth_ratio()
414 static int data_training(const struct chan_info *chan, int channel, in data_training() argument
422 struct rk3288_ddr_publ *publ = chan->publ; in data_training()
423 struct rk3288_ddr_pctl *pctl = chan->pctl; in data_training()
477 static void move_to_access_state(const struct chan_info *chan) in move_to_access_state() argument
479 struct rk3288_ddr_publ *publ = chan->publ; in move_to_access_state()
480 struct rk3288_ddr_pctl *pctl = chan->pctl; in move_to_access_state()
518 static void dram_cfg_rbc(const struct chan_info *chan, u32 chnum, in dram_cfg_rbc() argument
521 struct rk3288_ddr_publ *publ = chan->publ; in dram_cfg_rbc()
529 writel(sdram_params->base.ddrconfig, &chan->msch->ddrconf); in dram_cfg_rbc()
535 unsigned int chan; in dram_all_config() local
540 for (chan = 0; chan < sdram_params->num_channels; chan++) { in dram_all_config()
542 &sdram_params->ch[chan]; in dram_all_config()
544 sys_reg |= info->row_3_4 << SYS_REG_ROW_3_4_SHIFT(chan); in dram_all_config()
545 sys_reg |= 1 << SYS_REG_CHINFO_SHIFT(chan); in dram_all_config()
546 sys_reg |= (info->rank - 1) << SYS_REG_RANK_SHIFT(chan); in dram_all_config()
547 sys_reg |= (info->col - 9) << SYS_REG_COL_SHIFT(chan); in dram_all_config()
548 sys_reg |= info->bk == 3 ? 0 : 1 << SYS_REG_BK_SHIFT(chan); in dram_all_config()
549 sys_reg |= (info->cs0_row - 13) << SYS_REG_CS0_ROW_SHIFT(chan); in dram_all_config()
550 sys_reg |= (info->cs1_row - 13) << SYS_REG_CS1_ROW_SHIFT(chan); in dram_all_config()
551 sys_reg |= (2 >> info->bw) << SYS_REG_BW_SHIFT(chan); in dram_all_config()
552 sys_reg |= (2 >> info->dbw) << SYS_REG_DBW_SHIFT(chan); in dram_all_config()
554 dram_cfg_rbc(&dram->chan[chan], chan, sdram_params); in dram_all_config()
569 const struct chan_info *chan = &dram->chan[channel]; in sdram_rank_bw_detect() local
570 struct rk3288_ddr_publ *publ = chan->publ; in sdram_rank_bw_detect()
574 if (data_training(chan, channel, sdram_params) < 0) { in sdram_rank_bw_detect()
593 set_bandwidth_ratio(chan, channel, in sdram_rank_bw_detect()
603 (data_training(chan, channel, sdram_params) < 0)) { in sdram_rank_bw_detect()
630 const struct chan_info *chan = &dram->chan[channel]; in sdram_col_row_detect() local
631 struct rk3288_ddr_pctl *pctl = chan->pctl; in sdram_col_row_detect()
632 struct rk3288_ddr_publ *publ = chan->publ; in sdram_col_row_detect()
655 writel(1, &chan->msch->ddrconf); in sdram_col_row_detect()
656 move_to_access_state(chan); in sdram_col_row_detect()
729 const struct chan_info *chan = &dram->chan[channel]; in sdram_init() local
730 struct rk3288_ddr_pctl *pctl = chan->pctl; in sdram_init()
731 struct rk3288_ddr_publ *publ = chan->publ; in sdram_init()
740 phy_cfg(chan, channel, sdram_params); in sdram_init()
753 set_bandwidth_ratio(chan, channel, in sdram_init()
773 writel(1, &chan->msch->ddrconf); in sdram_init()
782 writel(4, &chan->msch->ddrconf); in sdram_init()
783 move_to_access_state(chan); in sdram_init()
896 priv->chan[0].msch = regmap_get_range(map, 0); in rk3188_dmc_probe()
900 priv->chan[0].pctl = regmap_get_range(plat->map, 0); in rk3188_dmc_probe()
901 priv->chan[0].publ = regmap_get_range(plat->map, 1); in rk3188_dmc_probe()