Lines Matching refs:rsdp
176 check_rsdp(struct acpi_rsdp *rsdp) in check_rsdp() argument
178 if (memcmp(rsdp->signature, "RSD PTR ", sizeof(rsdp->signature)) != 0) in check_rsdp()
180 if (calculate_checksum((u8 *)rsdp, sizeof(*rsdp)) != 0) in check_rsdp()
188 struct acpi_rsdp *rsdp; in check_and_parse_rsdp() local
189 unsigned char buf[sizeof(*rsdp) + sizeof(*rsdp->rsdp20)]; in check_and_parse_rsdp()
196 rsdp = (struct acpi_rsdp *)buf; in check_and_parse_rsdp()
197 memcpy(rsdp, (unsigned char *)map + (addr & (pagesize-1)), sizeof(buf)); in check_and_parse_rsdp()
201 if (!check_rsdp(rsdp)) in check_and_parse_rsdp()
204 *rsdt_address = rsdp->rsdt_address; in check_and_parse_rsdp()
206 if (rsdp->revision != 0 && in check_and_parse_rsdp()
207 (*rsdp->rsdp20).length == sizeof(*rsdp) + sizeof(*rsdp->rsdp20) && in check_and_parse_rsdp()
208 calculate_checksum((u8 *)rsdp, (*rsdp->rsdp20).length) == 0) in check_and_parse_rsdp()
209 *xsdt_address = (*rsdp->rsdp20).xsdt_address; in check_and_parse_rsdp()