Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
src: rename panel to button.
details: https://anonhg.NetBSD.org/src/rev/fb71290ceee7
branches: trunk
changeset: 317995:fb71290ceee7
user: christos <christos%NetBSD.org@localhost>
date: Mon Apr 09 20:07:22 2018 +0000
description:
rename panel to button.
diffstat:
sys/arch/sgimips/hpc/button.c | 154 +++++++++++++++++++++++++++++++++++++++++
sys/arch/sgimips/hpc/files.hpc | 4 +-
sys/arch/sgimips/hpc/panel.c | 154 -----------------------------------------
3 files changed, 156 insertions(+), 156 deletions(-)
diffs (truncated from 331 to 300 lines):
diff -r 656632042f4a -r fb71290ceee7 sys/arch/sgimips/hpc/button.c
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sys/arch/sgimips/hpc/button.c Mon Apr 09 20:07:22 2018 +0000
@@ -0,0 +1,154 @@
+/* $NetBSD: button.c,v 1.1 2018/04/09 20:07:22 christos Exp $ */
+
+/*-
+ * Copyright (c) 2009 Michael Lorenz
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 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.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include <sys/cdefs.h>
+__KERNEL_RCSID(0, "$NetBSD: button.c,v 1.1 2018/04/09 20:07:22 christos Exp $");
+
+#include <sys/param.h>
+#include <sys/systm.h>
+#include <sys/kernel.h>
+#include <sys/device.h>
+#include <sys/proc.h>
+#include <sys/kthread.h>
+
+#include <sys/bus.h>
+
+#include <dev/sysmon/sysmonvar.h>
+#include <dev/sysmon/sysmon_taskq.h>
+
+#include <machine/autoconf.h>
+#include <machine/machtype.h>
+
+#include <sgimips/ioc/iocreg.h>
+#include <sgimips/hpc/hpcvar.h>
+#include <sgimips/hpc/hpcreg.h>
+
+struct button_softc {
+ device_t sc_dev;
+ struct sysmon_pswitch sc_pbutton;
+ bus_space_tag_t sc_tag;
+ bus_space_handle_t sc_hreg;
+ int sc_last, sc_fired;
+};
+
+static int button_match(device_t, cfdata_t, void *);
+static void button_attach(device_t, device_t, void *);
+
+static int button_intr(void *);
+static void button_powerbutton(void *);
+
+CFATTACH_DECL_NEW(button, sizeof(struct button_softc),
+ button_match,
+ button_attach,
+ NULL,
+ NULL);
+
+static int
+button_match(device_t parent, cfdata_t match, void *aux)
+{
+ struct hpc_attach_args *ha = aux;
+
+ if (strcmp(ha->ha_name, match->cf_name) != 0)
+ return 0;
+
+ if (mach_type == MACH_SGI_IP22)
+ return 1;
+
+ return 0;
+}
+
+static void
+button_attach(device_t parent, device_t self, void *aux)
+{
+ struct button_softc *sc;
+ struct hpc_attach_args *haa;
+
+ sc = device_private(self);
+ sc->sc_dev = self;
+ haa = aux;
+ sc->sc_tag = haa->ha_st;
+ sc->sc_fired = 0;
+
+ aprint_normal("\n");
+ if (bus_space_subregion(haa->ha_st, haa->ha_sh, haa->ha_devoff,
+ 0x4, /* just a single register */
+ &sc->sc_hreg)) {
+ aprint_error(": unable to map button register\n");
+ return;
+ }
+
+ if ((cpu_intr_establish(haa->ha_irq, IPL_BIO,
+ button_intr, sc)) == NULL) {
+ printf(": unable to establish interrupt!\n");
+ return;
+ }
+
+ sc->sc_last = 0;
+
+ sysmon_task_queue_init();
+ memset(&sc->sc_pbutton, 0, sizeof(struct sysmon_pswitch));
+ sc->sc_pbutton.smpsw_name = device_xname(sc->sc_dev);
+ sc->sc_pbutton.smpsw_type = PSWITCH_TYPE_POWER;
+ if (sysmon_pswitch_register(&sc->sc_pbutton) != 0)
+ aprint_error_dev(sc->sc_dev,
+ "unable to register power button with sysmon\n");
+ pmf_device_register(self, NULL, NULL);
+}
+
+static int
+button_intr(void *cookie)
+{
+ struct button_softc *sc = cookie;
+ uint8_t reg;
+
+ reg = bus_space_read_4(sc->sc_tag, sc->sc_hreg, 0);
+ bus_space_write_4(sc->sc_tag, sc->sc_hreg, 0,
+ IOC_PANEL_VDOWN_IRQ | IOC_PANEL_VUP_IRQ | IOC_PANEL_POWER_IRQ);
+ if ((reg & IOC_PANEL_POWER_IRQ) == 0) {
+ if (!sc->sc_fired)
+ sysmon_task_queue_sched(0, button_powerbutton, sc);
+ sc->sc_fired = 1;
+ }
+ if (time_second == sc->sc_last)
+ return 1;
+ sc->sc_last = time_second;
+ if ((reg & IOC_PANEL_VDOWN_HOLD) == 0)
+ pmf_event_inject(NULL, PMFE_AUDIO_VOLUME_DOWN);
+ if ((reg & IOC_PANEL_VUP_HOLD) == 0)
+ pmf_event_inject(NULL, PMFE_AUDIO_VOLUME_UP);
+
+ return 1;
+}
+
+static void
+button_powerbutton(void *cookie)
+{
+ struct button_softc *sc = cookie;
+
+ sysmon_pswitch_event(&sc->sc_pbutton, PSWITCH_EVENT_PRESSED);
+}
diff -r 656632042f4a -r fb71290ceee7 sys/arch/sgimips/hpc/files.hpc
--- a/sys/arch/sgimips/hpc/files.hpc Mon Apr 09 19:33:14 2018 +0000
+++ b/sys/arch/sgimips/hpc/files.hpc Mon Apr 09 20:07:22 2018 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: files.hpc,v 1.15 2018/04/09 19:11:38 christos Exp $
+# $NetBSD: files.hpc,v 1.16 2018/04/09 20:07:22 christos Exp $
device sq: arp, ether, ifnet
attach sq at hpc
@@ -27,4 +27,4 @@
device button : sysmon_power, sysmon_taskq
attach button at hpc
-file arch/sgimips/hpc/panel.c button
+file arch/sgimips/hpc/button.c button
diff -r 656632042f4a -r fb71290ceee7 sys/arch/sgimips/hpc/panel.c
--- a/sys/arch/sgimips/hpc/panel.c Mon Apr 09 19:33:14 2018 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,154 +0,0 @@
-/* $NetBSD: panel.c,v 1.3 2015/02/18 16:47:58 macallan Exp $ */
-
-/*-
- * Copyright (c) 2009 Michael Lorenz
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 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.
- *
- * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
- * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: panel.c,v 1.3 2015/02/18 16:47:58 macallan Exp $");
-
-#include <sys/param.h>
-#include <sys/systm.h>
-#include <sys/kernel.h>
-#include <sys/device.h>
-#include <sys/proc.h>
-#include <sys/kthread.h>
-
-#include <sys/bus.h>
-
-#include <dev/sysmon/sysmonvar.h>
-#include <dev/sysmon/sysmon_taskq.h>
-
-#include <machine/autoconf.h>
-#include <machine/machtype.h>
-
-#include <sgimips/ioc/iocreg.h>
-#include <sgimips/hpc/hpcvar.h>
-#include <sgimips/hpc/hpcreg.h>
-
-struct panel_softc {
- device_t sc_dev;
- struct sysmon_pswitch sc_pbutton;
- bus_space_tag_t sc_tag;
- bus_space_handle_t sc_hreg;
- int sc_last, sc_fired;
-};
-
-static int panel_match(device_t, cfdata_t, void *);
-static void panel_attach(device_t, device_t, void *);
-
-static int panel_intr(void *);
-static void panel_powerbutton(void *);
-
-CFATTACH_DECL_NEW(panel, sizeof(struct panel_softc),
- panel_match,
- panel_attach,
- NULL,
- NULL);
-
-static int
-panel_match(device_t parent, cfdata_t match, void *aux)
-{
- struct hpc_attach_args *ha = aux;
-
- if (strcmp(ha->ha_name, match->cf_name) != 0)
- return 0;
-
- if (mach_type == MACH_SGI_IP22)
- return 1;
-
- return 0;
-}
-
-static void
-panel_attach(device_t parent, device_t self, void *aux)
-{
- struct panel_softc *sc;
- struct hpc_attach_args *haa;
-
- sc = device_private(self);
- sc->sc_dev = self;
- haa = aux;
- sc->sc_tag = haa->ha_st;
- sc->sc_fired = 0;
-
- aprint_normal("\n");
- if (bus_space_subregion(haa->ha_st, haa->ha_sh, haa->ha_devoff,
- 0x4, /* just a single register */
- &sc->sc_hreg)) {
- aprint_error(": unable to map panel register\n");
- return;
- }
-
- if ((cpu_intr_establish(haa->ha_irq, IPL_BIO,
- panel_intr, sc)) == NULL) {
- printf(": unable to establish interrupt!\n");
- return;
- }
-
- sc->sc_last = 0;
-
- sysmon_task_queue_init();
- memset(&sc->sc_pbutton, 0, sizeof(struct sysmon_pswitch));
- sc->sc_pbutton.smpsw_name = device_xname(sc->sc_dev);
- sc->sc_pbutton.smpsw_type = PSWITCH_TYPE_POWER;
- if (sysmon_pswitch_register(&sc->sc_pbutton) != 0)
- aprint_error_dev(sc->sc_dev,
- "unable to register power button with sysmon\n");
- pmf_device_register(self, NULL, NULL);
-}
-
-static int
Home |
Main Index |
Thread Index |
Old Index