rd_dev             28 drivers/target/target_core_rd.c static inline struct rd_dev *RD_DEV(struct se_device *dev)
rd_dev             30 drivers/target/target_core_rd.c 	return container_of(dev, struct rd_dev, dev);
rd_dev             63 drivers/target/target_core_rd.c static u32 rd_release_sgl_table(struct rd_dev *rd_dev, struct rd_dev_sg_table *sg_table,
rd_dev             88 drivers/target/target_core_rd.c static void rd_release_device_space(struct rd_dev *rd_dev)
rd_dev             92 drivers/target/target_core_rd.c 	if (!rd_dev->sg_table_array || !rd_dev->sg_table_count)
rd_dev             95 drivers/target/target_core_rd.c 	page_count = rd_release_sgl_table(rd_dev, rd_dev->sg_table_array,
rd_dev             96 drivers/target/target_core_rd.c 					  rd_dev->sg_table_count);
rd_dev            100 drivers/target/target_core_rd.c 		rd_dev->rd_host->rd_host_id, rd_dev->rd_dev_id, page_count,
rd_dev            101 drivers/target/target_core_rd.c 		rd_dev->sg_table_count, (unsigned long)page_count * PAGE_SIZE);
rd_dev            103 drivers/target/target_core_rd.c 	rd_dev->sg_table_array = NULL;
rd_dev            104 drivers/target/target_core_rd.c 	rd_dev->sg_table_count = 0;
rd_dev            112 drivers/target/target_core_rd.c static int rd_allocate_sgl_table(struct rd_dev *rd_dev, struct rd_dev_sg_table *sg_table,
rd_dev            174 drivers/target/target_core_rd.c static int rd_build_device_space(struct rd_dev *rd_dev)
rd_dev            182 drivers/target/target_core_rd.c 	if (rd_dev->rd_page_count <= 0) {
rd_dev            184 drivers/target/target_core_rd.c 		       rd_dev->rd_page_count);
rd_dev            189 drivers/target/target_core_rd.c 	if (rd_dev->rd_flags & RDF_NULLIO)
rd_dev            192 drivers/target/target_core_rd.c 	total_sg_needed = rd_dev->rd_page_count;
rd_dev            199 drivers/target/target_core_rd.c 	rd_dev->sg_table_array = sg_table;
rd_dev            200 drivers/target/target_core_rd.c 	rd_dev->sg_table_count = sg_tables;
rd_dev            202 drivers/target/target_core_rd.c 	rc = rd_allocate_sgl_table(rd_dev, sg_table, total_sg_needed, 0x00);
rd_dev            207 drivers/target/target_core_rd.c 		 " %u pages in %u tables\n", rd_dev->rd_host->rd_host_id,
rd_dev            208 drivers/target/target_core_rd.c 		 rd_dev->rd_dev_id, rd_dev->rd_page_count,
rd_dev            209 drivers/target/target_core_rd.c 		 rd_dev->sg_table_count);
rd_dev            214 drivers/target/target_core_rd.c static void rd_release_prot_space(struct rd_dev *rd_dev)
rd_dev            218 drivers/target/target_core_rd.c 	if (!rd_dev->sg_prot_array || !rd_dev->sg_prot_count)
rd_dev            221 drivers/target/target_core_rd.c 	page_count = rd_release_sgl_table(rd_dev, rd_dev->sg_prot_array,
rd_dev            222 drivers/target/target_core_rd.c 					  rd_dev->sg_prot_count);
rd_dev            226 drivers/target/target_core_rd.c 		 rd_dev->rd_host->rd_host_id, rd_dev->rd_dev_id, page_count,
rd_dev            227 drivers/target/target_core_rd.c 		 rd_dev->sg_table_count, (unsigned long)page_count * PAGE_SIZE);
rd_dev            229 drivers/target/target_core_rd.c 	rd_dev->sg_prot_array = NULL;
rd_dev            230 drivers/target/target_core_rd.c 	rd_dev->sg_prot_count = 0;
rd_dev            233 drivers/target/target_core_rd.c static int rd_build_prot_space(struct rd_dev *rd_dev, int prot_length, int block_size)
rd_dev            241 drivers/target/target_core_rd.c 	if (rd_dev->rd_flags & RDF_NULLIO)
rd_dev            249 drivers/target/target_core_rd.c 	total_sg_needed = (rd_dev->rd_page_count * prot_length / block_size) + 1;
rd_dev            256 drivers/target/target_core_rd.c 	rd_dev->sg_prot_array = sg_table;
rd_dev            257 drivers/target/target_core_rd.c 	rd_dev->sg_prot_count = sg_tables;
rd_dev            259 drivers/target/target_core_rd.c 	rc = rd_allocate_sgl_table(rd_dev, sg_table, total_sg_needed, 0xff);
rd_dev            264 drivers/target/target_core_rd.c 		 " %u pages in %u tables\n", rd_dev->rd_host->rd_host_id,
rd_dev            265 drivers/target/target_core_rd.c 		 rd_dev->rd_dev_id, total_sg_needed, rd_dev->sg_prot_count);
rd_dev            272 drivers/target/target_core_rd.c 	struct rd_dev *rd_dev;
rd_dev            275 drivers/target/target_core_rd.c 	rd_dev = kzalloc(sizeof(*rd_dev), GFP_KERNEL);
rd_dev            276 drivers/target/target_core_rd.c 	if (!rd_dev)
rd_dev            279 drivers/target/target_core_rd.c 	rd_dev->rd_host = rd_host;
rd_dev            281 drivers/target/target_core_rd.c 	return &rd_dev->dev;
rd_dev            286 drivers/target/target_core_rd.c 	struct rd_dev *rd_dev = RD_DEV(dev);
rd_dev            290 drivers/target/target_core_rd.c 	if (!(rd_dev->rd_flags & RDF_HAS_PAGE_COUNT)) {
rd_dev            295 drivers/target/target_core_rd.c 	ret = rd_build_device_space(rd_dev);
rd_dev            304 drivers/target/target_core_rd.c 	rd_dev->rd_dev_id = rd_host->rd_host_dev_id_count++;
rd_dev            308 drivers/target/target_core_rd.c 		rd_host->rd_host_id, rd_dev->rd_dev_id, rd_dev->rd_page_count,
rd_dev            309 drivers/target/target_core_rd.c 		rd_dev->sg_table_count,
rd_dev            310 drivers/target/target_core_rd.c 		(unsigned long)(rd_dev->rd_page_count * PAGE_SIZE));
rd_dev            315 drivers/target/target_core_rd.c 	rd_release_device_space(rd_dev);
rd_dev            322 drivers/target/target_core_rd.c 	struct rd_dev *rd_dev = RD_DEV(dev);
rd_dev            324 drivers/target/target_core_rd.c 	kfree(rd_dev);
rd_dev            334 drivers/target/target_core_rd.c 	struct rd_dev *rd_dev = RD_DEV(dev);
rd_dev            336 drivers/target/target_core_rd.c 	rd_release_device_space(rd_dev);
rd_dev            339 drivers/target/target_core_rd.c static struct rd_dev_sg_table *rd_get_sg_table(struct rd_dev *rd_dev, u32 page)
rd_dev            346 drivers/target/target_core_rd.c 	if (i < rd_dev->sg_table_count) {
rd_dev            347 drivers/target/target_core_rd.c 		sg_table = &rd_dev->sg_table_array[i];
rd_dev            359 drivers/target/target_core_rd.c static struct rd_dev_sg_table *rd_get_prot_table(struct rd_dev *rd_dev, u32 page)
rd_dev            366 drivers/target/target_core_rd.c 	if (i < rd_dev->sg_prot_count) {
rd_dev            367 drivers/target/target_core_rd.c 		sg_table = &rd_dev->sg_prot_array[i];
rd_dev            382 drivers/target/target_core_rd.c 	struct rd_dev *dev = RD_DEV(se_dev);
rd_dev            421 drivers/target/target_core_rd.c 	struct rd_dev *dev = RD_DEV(se_dev);
rd_dev            545 drivers/target/target_core_rd.c 	struct rd_dev *rd_dev = RD_DEV(dev);
rd_dev            564 drivers/target/target_core_rd.c 			rd_dev->rd_page_count = arg;
rd_dev            566 drivers/target/target_core_rd.c 				" Count: %u\n", rd_dev->rd_page_count);
rd_dev            567 drivers/target/target_core_rd.c 			rd_dev->rd_flags |= RDF_HAS_PAGE_COUNT;
rd_dev            575 drivers/target/target_core_rd.c 			rd_dev->rd_flags |= RDF_NULLIO;
rd_dev            588 drivers/target/target_core_rd.c 	struct rd_dev *rd_dev = RD_DEV(dev);
rd_dev            591 drivers/target/target_core_rd.c 			rd_dev->rd_dev_id);
rd_dev            593 drivers/target/target_core_rd.c 			"  SG_table_count: %u  nullio: %d\n", rd_dev->rd_page_count,
rd_dev            594 drivers/target/target_core_rd.c 			PAGE_SIZE, rd_dev->sg_table_count,
rd_dev            595 drivers/target/target_core_rd.c 			!!(rd_dev->rd_flags & RDF_NULLIO));
rd_dev            601 drivers/target/target_core_rd.c 	struct rd_dev *rd_dev = RD_DEV(dev);
rd_dev            603 drivers/target/target_core_rd.c 	unsigned long long blocks_long = ((rd_dev->rd_page_count * PAGE_SIZE) /
rd_dev            611 drivers/target/target_core_rd.c 	struct rd_dev *rd_dev = RD_DEV(dev);
rd_dev            616 drivers/target/target_core_rd.c 	return rd_build_prot_space(rd_dev, dev->prot_length,
rd_dev            622 drivers/target/target_core_rd.c 	struct rd_dev *rd_dev = RD_DEV(dev);
rd_dev            624 drivers/target/target_core_rd.c 	rd_release_prot_space(rd_dev);
rd_dev            610 virt/kvm/arm/vgic/vgic-mmio-v3.c 	struct vgic_io_device *rd_dev = &vcpu->arch.vgic_cpu.rd_iodev;
rd_dev            635 virt/kvm/arm/vgic/vgic-mmio-v3.c 	kvm_iodevice_init(&rd_dev->dev, &kvm_io_gic_ops);
rd_dev            636 virt/kvm/arm/vgic/vgic-mmio-v3.c 	rd_dev->base_addr = rd_base;
rd_dev            637 virt/kvm/arm/vgic/vgic-mmio-v3.c 	rd_dev->iodev_type = IODEV_REDIST;
rd_dev            638 virt/kvm/arm/vgic/vgic-mmio-v3.c 	rd_dev->regions = vgic_v3_rd_registers;
rd_dev            639 virt/kvm/arm/vgic/vgic-mmio-v3.c 	rd_dev->nr_regions = ARRAY_SIZE(vgic_v3_rd_registers);
rd_dev            640 virt/kvm/arm/vgic/vgic-mmio-v3.c 	rd_dev->redist_vcpu = vcpu;
rd_dev            644 virt/kvm/arm/vgic/vgic-mmio-v3.c 				      2 * SZ_64K, &rd_dev->dev);
rd_dev            656 virt/kvm/arm/vgic/vgic-mmio-v3.c 	struct vgic_io_device *rd_dev = &vcpu->arch.vgic_cpu.rd_iodev;
rd_dev            658 virt/kvm/arm/vgic/vgic-mmio-v3.c 	kvm_io_bus_unregister_dev(vcpu->kvm, KVM_MMIO_BUS, &rd_dev->dev);
rd_dev            966 virt/kvm/arm/vgic/vgic-mmio-v3.c 	struct vgic_io_device rd_dev = {
rd_dev            971 virt/kvm/arm/vgic/vgic-mmio-v3.c 	return vgic_uaccess(vcpu, &rd_dev, is_write, offset, val);