Lines Matching refs:hdm

104 	void __iomem *hdm;  in should_emulate_decoders()  local
112 hdm = cxlhdm->regs.hdm_decoder; in should_emulate_decoders()
114 if (!hdm) in should_emulate_decoders()
129 ctrl = readl(hdm + CXL_HDM_DECODER0_CTRL_OFFSET(i)); in should_emulate_decoders()
134 readl(hdm + CXL_HDM_DECODER0_BASE_HIGH_OFFSET(i)), in should_emulate_decoders()
135 readl(hdm + CXL_HDM_DECODER0_BASE_LOW_OFFSET(i)), in should_emulate_decoders()
136 readl(hdm + CXL_HDM_DECODER0_SIZE_HIGH_OFFSET(i)), in should_emulate_decoders()
137 readl(hdm + CXL_HDM_DECODER0_SIZE_LOW_OFFSET(i))); in should_emulate_decoders()
756 static int cxld_await_commit(void __iomem *hdm, int id) in cxld_await_commit() argument
762 ctrl = readl(hdm + CXL_HDM_DECODER0_CTRL_OFFSET(id)); in cxld_await_commit()
765 writel(ctrl, hdm + CXL_HDM_DECODER0_CTRL_OFFSET(id)); in cxld_await_commit()
776 static void setup_hw_decoder(struct cxl_decoder *cxld, void __iomem *hdm) in setup_hw_decoder() argument
783 ctrl = readl(hdm + CXL_HDM_DECODER0_CTRL_OFFSET(cxld->id)); in setup_hw_decoder()
789 writel(upper_32_bits(base), hdm + CXL_HDM_DECODER0_BASE_HIGH_OFFSET(id)); in setup_hw_decoder()
790 writel(lower_32_bits(base), hdm + CXL_HDM_DECODER0_BASE_LOW_OFFSET(id)); in setup_hw_decoder()
791 writel(upper_32_bits(size), hdm + CXL_HDM_DECODER0_SIZE_HIGH_OFFSET(id)); in setup_hw_decoder()
792 writel(lower_32_bits(size), hdm + CXL_HDM_DECODER0_SIZE_LOW_OFFSET(id)); in setup_hw_decoder()
797 void __iomem *tl_hi = hdm + CXL_HDM_DECODER0_TL_HIGH(id); in setup_hw_decoder()
798 void __iomem *tl_lo = hdm + CXL_HDM_DECODER0_TL_LOW(id); in setup_hw_decoder()
807 void __iomem *sk_hi = hdm + CXL_HDM_DECODER0_SKIP_HIGH(id); in setup_hw_decoder()
808 void __iomem *sk_lo = hdm + CXL_HDM_DECODER0_SKIP_LOW(id); in setup_hw_decoder()
814 writel(ctrl, hdm + CXL_HDM_DECODER0_CTRL_OFFSET(id)); in setup_hw_decoder()
821 void __iomem *hdm = cxlhdm->regs.hdm_decoder; in cxl_decoder_commit() local
855 setup_hw_decoder(cxld, hdm); in cxl_decoder_commit()
858 rc = cxld_await_commit(hdm, cxld->id); in cxl_decoder_commit()
911 void __iomem *hdm = cxlhdm->regs.hdm_decoder; in cxl_decoder_reset() local
925 ctrl = readl(hdm + CXL_HDM_DECODER0_CTRL_OFFSET(id)); in cxl_decoder_reset()
927 writel(ctrl, hdm + CXL_HDM_DECODER0_CTRL_OFFSET(id)); in cxl_decoder_reset()
929 writel(0, hdm + CXL_HDM_DECODER0_SIZE_HIGH_OFFSET(id)); in cxl_decoder_reset()
930 writel(0, hdm + CXL_HDM_DECODER0_SIZE_LOW_OFFSET(id)); in cxl_decoder_reset()
931 writel(0, hdm + CXL_HDM_DECODER0_BASE_HIGH_OFFSET(id)); in cxl_decoder_reset()
932 writel(0, hdm + CXL_HDM_DECODER0_BASE_LOW_OFFSET(id)); in cxl_decoder_reset()
987 int *target_map, void __iomem *hdm, int which, in init_hdm_decoder() argument
1005 ctrl = readl(hdm + CXL_HDM_DECODER0_CTRL_OFFSET(which)); in init_hdm_decoder()
1006 lo = readl(hdm + CXL_HDM_DECODER0_BASE_LOW_OFFSET(which)); in init_hdm_decoder()
1007 hi = readl(hdm + CXL_HDM_DECODER0_BASE_HIGH_OFFSET(which)); in init_hdm_decoder()
1009 lo = readl(hdm + CXL_HDM_DECODER0_SIZE_LOW_OFFSET(which)); in init_hdm_decoder()
1010 hi = readl(hdm + CXL_HDM_DECODER0_SIZE_HIGH_OFFSET(which)); in init_hdm_decoder()
1077 writel(ctrl, hdm + CXL_HDM_DECODER0_CTRL_OFFSET(which)); in init_hdm_decoder()
1102 lo = readl(hdm + CXL_HDM_DECODER0_TL_LOW(which)); in init_hdm_decoder()
1103 hi = readl(hdm + CXL_HDM_DECODER0_TL_HIGH(which)); in init_hdm_decoder()
1121 lo = readl(hdm + CXL_HDM_DECODER0_SKIP_LOW(which)); in init_hdm_decoder()
1122 hi = readl(hdm + CXL_HDM_DECODER0_SKIP_HIGH(which)); in init_hdm_decoder()
1141 void __iomem *hdm = cxlhdm->regs.hdm_decoder; in cxl_settle_decoders() local
1145 if (!hdm) in cxl_settle_decoders()
1156 ctrl = readl(hdm + CXL_HDM_DECODER0_CTRL_OFFSET(i)); in cxl_settle_decoders()
1174 void __iomem *hdm = cxlhdm->regs.hdm_decoder; in devm_cxl_enumerate_decoders() local
1210 rc = init_hdm_decoder(port, cxld, target_map, hdm, i, in devm_cxl_enumerate_decoders()