Lines Matching refs:dfl
614 struct dfl_fpga_enum_dfl *dfl, resource_size_t ofst, in create_feature_instance() argument
620 size = size ? size : feature_size(dfl->ioaddr + ofst); in create_feature_instance()
621 fid = fid ? fid : feature_id(dfl->ioaddr + ofst); in create_feature_instance()
623 if (dfl->len - ofst < size) in create_feature_instance()
631 finfo->mmio_res.start = dfl->start + ofst; in create_feature_instance()
634 finfo->ioaddr = dfl->ioaddr + ofst; in create_feature_instance()
643 struct dfl_fpga_enum_dfl *dfl, in parse_feature_port_afu() argument
651 return create_feature_instance(binfo, dfl, ofst, size, FEATURE_ID_AFU); in parse_feature_port_afu()
655 struct dfl_fpga_enum_dfl *dfl, in parse_feature_afu() argument
665 return parse_feature_port_afu(binfo, dfl, ofst); in parse_feature_afu()
675 struct dfl_fpga_enum_dfl *dfl, in parse_feature_fiu() argument
682 v = readq(dfl->ioaddr + ofst + DFH); in parse_feature_fiu()
687 dfl->ioaddr + ofst); in parse_feature_fiu()
691 ret = create_feature_instance(binfo, dfl, ofst, 0, 0); in parse_feature_fiu()
698 v = readq(dfl->ioaddr + ofst + NEXT_AFU); in parse_feature_fiu()
702 return parse_feature_afu(binfo, dfl, ofst + offset); in parse_feature_fiu()
710 struct dfl_fpga_enum_dfl *dfl, in parse_feature_private() argument
715 (unsigned long long)feature_id(dfl->ioaddr + ofst)); in parse_feature_private()
719 return create_feature_instance(binfo, dfl, ofst, 0, 0); in parse_feature_private()
730 struct dfl_fpga_enum_dfl *dfl, resource_size_t ofst) in parse_feature() argument
735 v = readq(dfl->ioaddr + ofst + DFH); in parse_feature()
740 return parse_feature_afu(binfo, dfl, ofst); in parse_feature()
742 return parse_feature_private(binfo, dfl, ofst); in parse_feature()
744 return parse_feature_fiu(binfo, dfl, ofst); in parse_feature()
754 struct dfl_fpga_enum_dfl *dfl) in parse_feature_list() argument
756 void __iomem *start = dfl->ioaddr; in parse_feature_list()
757 void __iomem *end = dfl->ioaddr + dfl->len; in parse_feature_list()
769 ret = parse_feature(binfo, dfl, start - dfl->ioaddr); in parse_feature_list()
806 struct dfl_fpga_enum_dfl *tmp, *dfl; in dfl_fpga_enum_info_free() local
815 list_for_each_entry_safe(dfl, tmp, &info->dfls, node) { in dfl_fpga_enum_info_free()
816 list_del(&dfl->node); in dfl_fpga_enum_info_free()
817 devm_kfree(dev, dfl); in dfl_fpga_enum_info_free()
843 struct dfl_fpga_enum_dfl *dfl; in dfl_fpga_enum_info_add_dfl() local
845 dfl = devm_kzalloc(info->dev, sizeof(*dfl), GFP_KERNEL); in dfl_fpga_enum_info_add_dfl()
846 if (!dfl) in dfl_fpga_enum_info_add_dfl()
849 dfl->start = start; in dfl_fpga_enum_info_add_dfl()
850 dfl->len = len; in dfl_fpga_enum_info_add_dfl()
851 dfl->ioaddr = ioaddr; in dfl_fpga_enum_info_add_dfl()
853 list_add_tail(&dfl->node, &info->dfls); in dfl_fpga_enum_info_add_dfl()
891 struct dfl_fpga_enum_dfl *dfl; in dfl_fpga_feature_devs_enumerate() local
930 list_for_each_entry(dfl, &info->dfls, node) { in dfl_fpga_feature_devs_enumerate()
931 ret = parse_feature_list(binfo, dfl); in dfl_fpga_feature_devs_enumerate()