/*-1* SPDX-License-Identifier: BSD-2-Clause2*3* Copyright (c) 2001 by Thomas Moestl <[email protected]>.4* All rights reserved.5*6* Redistribution and use in source and binary forms, with or without7* modification, are permitted provided that the following conditions8* are met:9* 1. Redistributions of source code must retain the above copyright10* notice, this list of conditions and the following disclaimer.11* 2. Redistributions in binary form must reproduce the above copyright12* notice, this list of conditions and the following disclaimer in the13* documentation and/or other materials provided with the distribution.14*15* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR16* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES17* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.18* IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,19* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES20* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR21* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER22* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,23* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE24* USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.25*/2627#ifndef _MACHINE_OFW_MACHDEP_H_28#define _MACHINE_OFW_MACHDEP_H_2930#include <sys/types.h>31#include <sys/rman.h>32#include <sys/bus.h>33#include <dev/ofw/openfirm.h>34#include <machine/platform.h>3536struct mem_region;37struct numa_mem_region;3839typedef uint32_t cell_t;4041void OF_getetheraddr(device_t dev, u_char *addr);4243void OF_initial_setup(void *fdt_ptr, void *junk, int (*openfirm)(void *));44bool OF_bootstrap(void);4546void OF_reboot(void);4748void ofw_mem_regions(struct mem_region *, int *, struct mem_region *, int *);49void ofw_numa_mem_regions(struct numa_mem_region *, int *);50void ofw_quiesce(void); /* Must be called before VM is up! */51void ofw_save_trap_vec(char *);52int ofw_pcibus_get_domain(device_t dev, device_t child, int *domain);53int ofw_pcibus_get_cpus(device_t dev, device_t child, enum cpu_sets op,54size_t setsize, cpuset_t *cpuset);5556#endif /* _MACHINE_OFW_MACHDEP_H_ */575859