Lines Matching +full:mdi +full:- +full:x
1 /*-
4 * SPDX-License-Identifier: BSD-2-Clause
75 struct memdisk_info *mdi; in biosmemdisk_detect() local
91 if (memcmp(probe->sh_id, "$INT13SF", sizeof(probe->sh_id)) != 0) { in biosmemdisk_detect()
92 printf("Found int 13h unsafe hook at %p (%x:%x)\n", in biosmemdisk_detect()
96 if (memcmp(probe->sh_vendor, "MEMDISK ", sizeof(probe->sh_vendor)) != 0) in biosmemdisk_detect()
103 mbft = (ACPI_TABLE_HEADER *)PTOV(probe->sh_mbft); in biosmemdisk_detect()
104 if (memcmp(mbft->Signature, "mBFT", sizeof(mbft->Signature)) != 0) in biosmemdisk_detect()
108 for (int idx = 0; idx < mbft->Length; ++idx) in biosmemdisk_detect()
115 * section. If the sector size is present and non-zero use it in biosmemdisk_detect()
118 mdi = (struct memdisk_info *)PTOV(probe->sh_mbft + sizeof(*mbft)); in biosmemdisk_detect()
120 if (mdi->mdi_length + sizeof(mdi->mdi_13h_hook_ptr) >= sizeof(*mdi) && in biosmemdisk_detect()
121 mdi->mdi_sector_size != 0) in biosmemdisk_detect()
122 sector_size = 1 << mdi->mdi_sector_size; in biosmemdisk_detect()
124 printf("memdisk %d.%d disk at %#x (%d sectors = %d bytes)\n", in biosmemdisk_detect()
125 mdi->mdi_major, mdi->mdi_minor, mdi->mdi_disk_ptr, in biosmemdisk_detect()
126 mdi->mdi_disk_sectors, mdi->mdi_disk_sectors * sector_size); in biosmemdisk_detect()
129 snprintf(scratch, sizeof(scratch), "0x%08x", mdi->mdi_disk_ptr); in biosmemdisk_detect()
132 snprintf(scratch, sizeof(scratch), "%d", mdi->mdi_disk_sectors * sector_size); in biosmemdisk_detect()
137 offset = probe->sh_next_offset; in biosmemdisk_detect()
138 segment = probe->sh_next_segment; in biosmemdisk_detect()