Lines Matching refs:res_attr
1147 struct bin_attribute *res_attr;
1149 res_attr = pdev->res_attr[i];
1150 if (res_attr) {
1151 sysfs_remove_bin_file(&pdev->dev.kobj, res_attr);
1152 kfree(res_attr);
1155 res_attr = pdev->res_attr_wc[i];
1156 if (res_attr) {
1157 sysfs_remove_bin_file(&pdev->dev.kobj, res_attr);
1158 kfree(res_attr);
1167 struct bin_attribute *res_attr;
1171 res_attr = kzalloc(sizeof(*res_attr) + name_len, GFP_ATOMIC);
1172 if (!res_attr)
1175 res_attr_name = (char *)(res_attr + 1);
1177 sysfs_bin_attr_init(res_attr);
1180 res_attr->mmap = pci_mmap_resource_wc;
1184 res_attr->read = pci_read_resource_io;
1185 res_attr->write = pci_write_resource_io;
1187 res_attr->mmap = pci_mmap_resource_uc;
1189 res_attr->mmap = pci_mmap_resource_uc;
1192 if (res_attr->mmap) {
1193 res_attr->f_mapping = iomem_get_mapping;
1199 res_attr->llseek = pci_llseek_resource;
1201 res_attr->attr.name = res_attr_name;
1202 res_attr->attr.mode = 0600;
1203 res_attr->size = pci_resource_len(pdev, num);
1204 res_attr->private = (void *)(unsigned long)num;
1205 retval = sysfs_create_bin_file(&pdev->dev.kobj, res_attr);
1207 kfree(res_attr);
1212 pdev->res_attr_wc[num] = res_attr;
1214 pdev->res_attr[num] = res_attr;