static void pnpacpi_parse_allocated_vendor(struct pnp_dev *dev, struct acpi_resource_vendor_typed *vendor) { if (vendor_resource_matches(dev, vendor, &hp_ccsr_uuid, 16)) { u64 start, length; memcpy(&start, vendor->byte_data, sizeof(start)); memcpy(&length, vendor->byte_data + 8, sizeof(length)); pnp_add_mem_resource(dev, start, start + length - 1, 0); } }
static void pnpacpi_parse_allocated_memresource(struct pnp_dev *dev, u64 start, u64 len, int write_protect) { int flags = 0; u64 end = start + len - 1; if (len == 0) flags |= IORESOURCE_DISABLED; if (write_protect == ACPI_READ_WRITE_MEMORY) flags |= IORESOURCE_MEM_WRITEABLE; pnp_add_mem_resource(dev, start, end, flags); }