コード例 #1
0
static int
beri_sdcard_disk_print(int verbose)
{
	struct disk_devdesc dev;
	char line[80];
	int ret;

	printf("%s devices:", beri_sdcard_disk.dv_name);
	if ((ret = pager_output("\n")) != 0)
		return (ret);
	
	snprintf(line, sizeof(line), "    sdcard%d   Altera SD card drive\n", 0);
	ret = pager_output(line);
	if (ret != 0)
	    return (ret);
	dev.dd.d_dev = &beri_sdcard_disk;
	dev.dd.d_unit = 0;
	dev.d_slice = D_SLICENONE;
	dev.d_partition = D_PARTNONE;
	if (disk_open(&dev, altera_sdcard_get_mediasize(),
	    altera_sdcard_get_sectorsize()) == 0) {
		snprintf(line, sizeof(line), "    sdcard%d", 0);
		ret = disk_print(&dev, line, verbose);
		disk_close(&dev);
	}
	return (ret);
}
コード例 #2
0
ファイル: beri_disk_sdcard.c プロジェクト: Alkzndr/freebsd
static void
beri_sdcard_disk_print(int verbose)
{
	struct disk_devdesc dev;
	char line[80];

	sprintf(line, "    sdcard%d   Altera SD card drive\n", 0);
	pager_output(line);
	dev.d_dev = &beri_sdcard_disk;
	dev.d_unit = 0;
	dev.d_slice = -1;
	dev.d_partition = -1;
	if (disk_open(&dev, altera_sdcard_get_mediasize(),
	    altera_sdcard_get_sectorsize(), 0) == 0) {
		sprintf(line, "    sdcard%d", 0);
		disk_print(&dev, line, verbose);
		disk_close(&dev);
	}
}
コード例 #3
0
static int
beri_sdcard_disk_open(struct open_file *f, ...)
{
	va_list ap;
	struct disk_devdesc *dev;

	va_start(ap, f);
	dev = va_arg(ap, struct disk_devdesc *);
	va_end(ap);

	if (!(altera_sdcard_get_present())) {
		printf("SD card not present or not supported\n");
		return (ENXIO);
	}

	if (dev->dd.d_unit != 0)
		return (EIO);
	return (disk_open(dev, altera_sdcard_get_mediasize(),
	    altera_sdcard_get_sectorsize()));
}