aboutsummaryrefslogtreecommitdiff
path: root/sys/sun4v
diff options
context:
space:
mode:
Diffstat (limited to 'sys/sun4v')
-rw-r--r--sys/sun4v/conf/GENERIC2
-rw-r--r--sys/sun4v/include/_inttypes.h7
-rw-r--r--sys/sun4v/include/ofw_machdep.h1
-rw-r--r--sys/sun4v/include/proc.h2
-rw-r--r--sys/sun4v/sun4v/machdep.c6
-rw-r--r--sys/sun4v/sun4v/pmap.c11
6 files changed, 18 insertions, 11 deletions
diff --git a/sys/sun4v/conf/GENERIC b/sys/sun4v/conf/GENERIC
index 13db23d25a34..26ec3afa4ce3 100644
--- a/sys/sun4v/conf/GENERIC
+++ b/sys/sun4v/conf/GENERIC
@@ -51,7 +51,6 @@ options PROCFS # Process filesystem (requires PSEUDOFS)
options PSEUDOFS # Pseudo-filesystem framework
options GEOM_PART_GPT # GUID Partition Tables.
options GEOM_LABEL # Provides labelization
-options COMPAT_43TTY # BSD 4.3 TTY compat (sgtty)
options SCSI_DELAY=5000 # Delay (in ms) before probing SCSI
options KTRACE # ktrace(1) support
options STACK # stack(9) support
@@ -184,6 +183,7 @@ device faith # IPv6-to-IPv4 relaying (translation)
device bpf # Berkeley packet filter
# USB support
+options USB_DEBUG # enable debug msgs
#device uhci # UHCI PCI->USB interface
#device ohci # OHCI PCI->USB interface
device usb # USB Bus (required)
diff --git a/sys/sun4v/include/_inttypes.h b/sys/sun4v/include/_inttypes.h
index e6b2536ff379..a7cbea593b93 100644
--- a/sys/sun4v/include/_inttypes.h
+++ b/sys/sun4v/include/_inttypes.h
@@ -13,13 +13,6 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the NetBSD
- * Foundation, Inc. and its contributors.
- * 4. Neither the name of The NetBSD Foundation nor the names of its
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
diff --git a/sys/sun4v/include/ofw_machdep.h b/sys/sun4v/include/ofw_machdep.h
index 625b13137adc..658d9c7b0d25 100644
--- a/sys/sun4v/include/ofw_machdep.h
+++ b/sys/sun4v/include/ofw_machdep.h
@@ -36,6 +36,7 @@ typedef uint64_t cell_t;
int OF_decode_addr(phandle_t, int, int *, bus_addr_t *);
void OF_getetheraddr(device_t, u_char *);
+u_int OF_getscsinitid(device_t);
void cpu_shutdown(void *);
int ofw_entry(void *);
void ofw_exit(void *);
diff --git a/sys/sun4v/include/proc.h b/sys/sun4v/include/proc.h
index bfd1268e433c..84eaed5a00ed 100644
--- a/sys/sun4v/include/proc.h
+++ b/sys/sun4v/include/proc.h
@@ -51,4 +51,6 @@ struct mdproc {
void *md_sigtramp;
};
+#define KINFO_PROC_SIZE 1088
+
#endif /* !_MACHINE_PROC_H_ */
diff --git a/sys/sun4v/sun4v/machdep.c b/sys/sun4v/sun4v/machdep.c
index 3913d35ca02a..e14eebd9f8c3 100644
--- a/sys/sun4v/sun4v/machdep.c
+++ b/sys/sun4v/sun4v/machdep.c
@@ -869,7 +869,7 @@ ptrace_clear_single_step(struct thread *td)
}
void
-exec_setregs(struct thread *td, u_long entry, u_long stack, u_long ps_strings)
+exec_setregs(struct thread *td, struct image_params *imgp, u_long stack)
{
struct trapframe *tf;
struct pcb *pcb;
@@ -897,8 +897,8 @@ exec_setregs(struct thread *td, u_long entry, u_long stack, u_long ps_strings)
tf->tf_out[3] = p->p_sysent->sv_psstrings;
tf->tf_out[6] = sp - SPOFF - sizeof(struct frame);
- tf->tf_tnpc = entry + 4;
- tf->tf_tpc = entry;
+ tf->tf_tnpc = imgp->entry_addr + 4;
+ tf->tf_tpc = imgp->entry_addr;
tf->tf_tstate = TSTATE_IE | TSTATE_PEF | TSTATE_MM_TSO;
td->td_retval[0] = tf->tf_out[0];
diff --git a/sys/sun4v/sun4v/pmap.c b/sys/sun4v/sun4v/pmap.c
index d3b8c79467e8..2633b8eb76ff 100644
--- a/sys/sun4v/sun4v/pmap.c
+++ b/sys/sun4v/sun4v/pmap.c
@@ -1592,6 +1592,17 @@ pmap_is_prefaultable(pmap_t pmap, vm_offset_t va)
}
/*
+ * Return whether or not the specified physical page was referenced
+ * in any physical maps.
+ */
+boolean_t
+pmap_is_referenced(vm_page_t m)
+{
+
+ return (tte_get_phys_bit(m, VTD_REF));
+}
+
+/*
* Extract the physical page address associated with the given kernel virtual
* address.
*/