summaryrefslogtreecommitdiff
path: root/usr/src/cmd/bhyveload-uefi
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/cmd/bhyveload-uefi')
-rw-r--r--usr/src/cmd/bhyveload-uefi/Makefile41
-rw-r--r--usr/src/cmd/bhyveload-uefi/Makefile.com52
-rw-r--r--usr/src/cmd/bhyveload-uefi/amd64/Makefile21
-rw-r--r--usr/src/cmd/bhyveload-uefi/bhyveload-uefi.c190
-rw-r--r--usr/src/cmd/bhyveload-uefi/i386/Makefile18
5 files changed, 0 insertions, 322 deletions
diff --git a/usr/src/cmd/bhyveload-uefi/Makefile b/usr/src/cmd/bhyveload-uefi/Makefile
deleted file mode 100644
index bbcbacf32f..0000000000
--- a/usr/src/cmd/bhyveload-uefi/Makefile
+++ /dev/null
@@ -1,41 +0,0 @@
-#
-# This file and its contents are supplied under the terms of the
-# Common Development and Distribution License ("CDDL"), version 1.0.
-# You may only use this file in accordance with the terms of version
-# 1.0 of the CDDL.
-#
-# A full copy of the text of the CDDL should have accompanied this
-# source. A copy of the CDDL is also available via the Internet at
-# http://www.illumos.org/license/CDDL.
-#
-
-#
-# Copyright 2013 Pluribus Networks Inc.
-#
-
-PROG = bhyveload-uefi
-
-include ../Makefile.cmd
-
-$(BUILD64)SUBDIRS += $(MACH64)
-
-all := TARGET = all
-install := TARGET = install
-clean := TARGET = clean
-clobber := TARGET = clobber
-lint := TARGET = lint
-
-.KEEP_STATE:
-
-all clean clobber lint: $(SUBDIRS)
-
-install: $(SUBDIRS)
- -$(RM) $(ROOTUSRSBINPROG)
- -$(LN) $(ISAEXEC) $(ROOTUSRSBINPROG)
-
-$(SUBDIRS): FRC
- @cd $@; pwd; $(MAKE) CW_NO_SHADOW=true __GNUC= $(TARGET)
-
-FRC:
-
-include ../Makefile.targ
diff --git a/usr/src/cmd/bhyveload-uefi/Makefile.com b/usr/src/cmd/bhyveload-uefi/Makefile.com
deleted file mode 100644
index 7865cca8d8..0000000000
--- a/usr/src/cmd/bhyveload-uefi/Makefile.com
+++ /dev/null
@@ -1,52 +0,0 @@
-#
-# This file and its contents are supplied under the terms of the
-# Common Development and Distribution License ("CDDL"), version 1.0.
-# You may only use this file in accordance with the terms of version
-# 1.0 of the CDDL.
-#
-# A full copy of the text of the CDDL should have accompanied this
-# source. A copy of the CDDL is also available via the Internet at
-# http://www.illumos.org/license/CDDL.
-#
-
-#
-# Copyright 2013 Pluribus Networks Inc.
-#
-
-PROG= bhyveload-uefi
-
-SRCS = ../bhyveload-uefi.c expand_number.c
-OBJS = bhyveload-uefi.o expand_number.o
-
-include ../../Makefile.cmd
-
-.KEEP_STATE:
-
-CFLAGS += $(CCVERBOSE)
-CPPFLAGS = -I$(COMPAT)/freebsd -I$(CONTRIB)/freebsd $(CPPFLAGS.master) \
- -I$(ROOT)/usr/platform/i86pc/include
-LDLIBS += -lvmmapi
-
-all: $(PROG)
-
-$(PROG): $(OBJS)
- $(LINK.c) -o $@ $(OBJS) $(LDFLAGS) $(LDLIBS)
- $(POST_PROCESS)
-
-install: all $(ROOTUSRSBINPROG)
-
-clean:
- $(RM) $(OBJS)
-
-lint: lint_SRCS
-
-include ../../Makefile.targ
-
-%.o: ../%.c
- $(COMPILE.c) $<
- $(POST_PROCESS_O)
-
-%.o: $(CONTRIB)/freebsd/lib/libutil/%.c
- $(COMPILE.c) $<
- $(POST_PROCESS_O)
-
diff --git a/usr/src/cmd/bhyveload-uefi/amd64/Makefile b/usr/src/cmd/bhyveload-uefi/amd64/Makefile
deleted file mode 100644
index b602c50d05..0000000000
--- a/usr/src/cmd/bhyveload-uefi/amd64/Makefile
+++ /dev/null
@@ -1,21 +0,0 @@
-#
-# This file and its contents are supplied under the terms of the
-# Common Development and Distribution License ("CDDL"), version 1.0.
-# You may only use this file in accordance with the terms of version
-# 1.0 of the CDDL.
-#
-# A full copy of the text of the CDDL should have accompanied this
-# source. A copy of the CDDL is also available via the Internet at
-# http://www.illumos.org/license/CDDL.
-#
-
-#
-# Copyright 2013 Pluribus Networks Inc.
-#
-
-include ../Makefile.com
-include ../../Makefile.cmd.64
-
-CPPFLAGS += -I$(COMPAT)/freebsd/amd64 -I$(CONTRIB)/freebsd/amd64
-
-install: all $(ROOTUSRSBINPROG64)
diff --git a/usr/src/cmd/bhyveload-uefi/bhyveload-uefi.c b/usr/src/cmd/bhyveload-uefi/bhyveload-uefi.c
deleted file mode 100644
index 62a7ca5d0f..0000000000
--- a/usr/src/cmd/bhyveload-uefi/bhyveload-uefi.c
+++ /dev/null
@@ -1,190 +0,0 @@
-/*
- * This file and its contents are supplied under the terms of the
- * Common Development and Distribution License ("CDDL"), version 1.0.
- * You may only use this file in accordance with the terms of version
- * 1.0 of the CDDL.
- *
- * A full copy of the text of the CDDL should have accompanied this
- * source. A copy of the CDDL is also available via the Internet at
- * http://www.illumos.org/license/CDDL.
- */
-
-/*
- * Copyright 2013 Pluribus Networks Inc.
- */
-
-#include <sys/types.h>
-
-#include <machine/vmm.h>
-
-#include <errno.h>
-#include <err.h>
-#include <fcntl.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <sysexits.h>
-#include <unistd.h>
-
-#include <vmmapi.h>
-
-#define KB (1024UL)
-#define MB (1024 * 1024UL)
-#define GB (1024 * 1024 * 1024UL)
-
-#define UEFI_ROM_ADDR 0xFFE00000
-#define UEFI_ROM_SIZE (2 * MB)
-/*
- * N.B. the UEFI code zeros the first page in memory so use the second.
- */
-#define BHYVE_HOB_ADDR 0x00002000
-#define BHYVE_BO_HOB_ADDR 0x00002080
-
-#define UEFI_ROM_PATH "/usr/share/bhyve/uefi-rom.bin"
-
-struct platform_info {
- uint32_t ncpus;
-};
-
-/*
- * Boot order code:
- * 0 - EFI_CD_HD
- * 1 - EFI_CD
- * 2 - EFI_HD_CD
- * 3 - EFI_HD
- * 4 - EFI_NET
- * 5 - EFI_NET_CD_HD
- * 6 - EFI_HD_HD_CD
- * 7 - LEGACY_CD_HD
- * 8 - LEGACY_CD
- * 9 - LEGACY_HD_CD
- * 10 - LEGACY_HD
- * 11 - EFI_SHELL
- */
-
-struct bootorder_info {
- uint32_t guestbootorder;
-};
-
-static char *vmname, *progname;
-static struct vmctx *ctx;
-
-static void
-usage(void)
-{
- printf("usage: %s "
- "[-c vcpus] [-m mem-size] [-b bootorder]"
- "<vmname>\n", progname);
- exit(1);
-}
-
-int
-main(int argc, char** argv)
-{
- int opt, error, fd;
- int guest_ncpus;
- int guest_bootorder = 0;
- uint64_t mem_size;
- char *membase, *rombase;
- struct platform_info *pi;
- struct bootorder_info *bi;
-
- progname = argv[0];
-
- guest_ncpus = 1;
- mem_size = 256 * MB;
-
- while ((opt = getopt(argc, argv, "c:m:b:")) != -1) {
- switch (opt) {
- case 'c':
- guest_ncpus = atoi(optarg);
- break;
- case 'm':
- error = vm_parse_memsize(optarg, &mem_size);
- if (error != 0 || mem_size == 0)
- errx(EX_USAGE, "Invalid memsize '%s'", optarg);
- break;
- case 'b':
- guest_bootorder = atoi(optarg);
- if (guest_bootorder < 0 || guest_bootorder > 11) {
- errx(EX_USAGE, "Invalid bootoption: %d\n"
- "\tBoot order code:\n"
- "\t0 - EFI_CD_HD\n"
- "\t1 - EFI_CD\n"
- "\t2 - EFI_HD_CD\n"
- "\t3 - EFI_HD\n"
- "\t4 - EFI_NET\n"
- "\t5 - EFI_NET_CD_HD\n"
- "\t6 - EFI_HD_HD_CD\n"
- "\t7 - LEGACY_CD_HD\n"
- "\t8 - LEGACY_CD\n"
- "\t9 - LEGACY_HD_CD\n"
- "\t10 - LEGACY_HD\n"
- "\t11 - EFI_SHELL\n", guest_bootorder);
- exit(1);
- }
- break;
- case '?':
- usage();
- }
- }
-
- argc -= optind;
- argv += optind;
-
- if (argc != 1)
- usage();
-
- vmname = argv[0];
- error = vm_create(vmname);
- if (error != 0 && errno != EEXIST) {
- perror("vm_create");
- exit(1);
-
- }
-
- ctx = vm_open(vmname);
- if (ctx == NULL) {
- perror("vm_open");
- exit(1);
- }
-
- error = vm_set_capability(ctx, 0, VM_CAP_UNRESTRICTED_GUEST, 1);
- if (error) {
- perror("vm_set_capability(VM_CAP_UNRESTRICTED_GUEST)");
- }
-
- error = vm_setup_memory(ctx, mem_size, VM_MMAP_ALL);
- if (error) {
- perror("vm_setup_memory");
- exit(1);
- }
- membase = vm_map_gpa(ctx, 0, 8 * KB);
-
- error = vm_setup_rom(ctx, UEFI_ROM_ADDR, UEFI_ROM_SIZE);
- if (error) {
- perror("vm_setup_rom");
- exit(1);
- }
- rombase = vm_map_gpa(ctx, UEFI_ROM_ADDR, UEFI_ROM_SIZE);
-
- fd = open(UEFI_ROM_PATH, O_RDONLY);
- if (fd == -1) {
- perror("open");
- exit(1);
- }
- read(fd, rombase, UEFI_ROM_SIZE);
- close(fd);
-
- pi = (struct platform_info *)(membase + BHYVE_HOB_ADDR);
- pi->ncpus = guest_ncpus;
- bi = (struct bootorder_info *)(membase + BHYVE_BO_HOB_ADDR);
- bi->guestbootorder = guest_bootorder;
-
- error = vcpu_reset(ctx, 0);
- if (error) {
- perror("vcpu_reset");
- exit(1);
- }
-
- return (0);
-}
diff --git a/usr/src/cmd/bhyveload-uefi/i386/Makefile b/usr/src/cmd/bhyveload-uefi/i386/Makefile
deleted file mode 100644
index f5b7bb6915..0000000000
--- a/usr/src/cmd/bhyveload-uefi/i386/Makefile
+++ /dev/null
@@ -1,18 +0,0 @@
-#
-# This file and its contents are supplied under the terms of the
-# Common Development and Distribution License ("CDDL"), version 1.0.
-# You may only use this file in accordance with the terms of version
-# 1.0 of the CDDL.
-#
-# A full copy of the text of the CDDL should have accompanied this
-# source. A copy of the CDDL is also available via the Internet at
-# http://www.illumos.org/license/CDDL.
-#
-
-#
-# Copyright 2013 Pluribus Networks Inc.
-#
-
-include ../Makefile.com
-
-install: all $(ROOTUSRSBINPROG32)