CVS commit: src/sys/arch/arm/samsung

2022-10-29 Thread Jared D. McNeill
Module Name:src
Committed By:   jmcneill
Date:   Sat Oct 29 13:29:47 UTC 2022

Modified Files:
src/sys/arch/arm/samsung: exynos_platform.c exynos_soc.c

Log Message:
Build fixes.


To generate a diff of this commit:
cvs rdiff -u -r1.38 -r1.39 src/sys/arch/arm/samsung/exynos_platform.c
cvs rdiff -u -r1.40 -r1.41 src/sys/arch/arm/samsung/exynos_soc.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/arm/samsung/exynos_platform.c
diff -u src/sys/arch/arm/samsung/exynos_platform.c:1.38 src/sys/arch/arm/samsung/exynos_platform.c:1.39
--- src/sys/arch/arm/samsung/exynos_platform.c:1.38	Sat Apr 24 23:36:28 2021
+++ src/sys/arch/arm/samsung/exynos_platform.c	Sat Oct 29 13:29:46 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: exynos_platform.c,v 1.38 2021/04/24 23:36:28 thorpej Exp $ */
+/* $NetBSD: exynos_platform.c,v 1.39 2022/10/29 13:29:46 jmcneill Exp $ */
 
 /*-
  * Copyright (c) 2017 Jared D. McNeill 
@@ -35,15 +35,15 @@
 #include "ukbd.h"
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: exynos_platform.c,v 1.38 2021/04/24 23:36:28 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: exynos_platform.c,v 1.39 2022/10/29 13:29:46 jmcneill Exp $");
 
+#define	EXYNOS_CORE_VBASE	KERNEL_IO_VBASE
 
 /*
  * Booting a CA7 core on Exynos5422 is currently broken, disable starting CA7 secondaries.
  */
 #defineEXYNOS5422_DISABLE_CA7_CLUSTER
 
-
 #include 
 #include 
 #include 
@@ -62,7 +62,7 @@ __KERNEL_RCSID(0, "$NetBSD: exynos_platf
 #include 
 #include 
 
-#include 
+#include 
 #include 
 
 #include 

Index: src/sys/arch/arm/samsung/exynos_soc.c
diff -u src/sys/arch/arm/samsung/exynos_soc.c:1.40 src/sys/arch/arm/samsung/exynos_soc.c:1.41
--- src/sys/arch/arm/samsung/exynos_soc.c:1.40	Sun Sep 19 10:34:08 2021
+++ src/sys/arch/arm/samsung/exynos_soc.c	Sat Oct 29 13:29:46 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: exynos_soc.c,v 1.40 2021/09/19 10:34:08 andvar Exp $	*/
+/*	$NetBSD: exynos_soc.c,v 1.41 2022/10/29 13:29:46 jmcneill Exp $	*/
 
 /*-
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -33,7 +33,7 @@
 #include "opt_exynos.h"
 
 #include 
-__KERNEL_RCSID(1, "$NetBSD: exynos_soc.c,v 1.40 2021/09/19 10:34:08 andvar Exp $");
+__KERNEL_RCSID(1, "$NetBSD: exynos_soc.c,v 1.41 2022/10/29 13:29:46 jmcneill Exp $");
 
 #include 
 #include 
@@ -58,8 +58,9 @@ __KERNEL_RCSID(1, "$NetBSD: exynos_soc.c
 #include 
 #include 
 
-/* XXXNH */
-#include 
+#include 
+
+#define	EXYNOS_CORE_VBASE	KERNEL_IO_VBASE
 
 
 /* these variables are retrieved in start.S and stored in .data */



CVS commit: src/sys/arch/arm/samsung

2022-10-29 Thread Jared D. McNeill
Module Name:src
Committed By:   jmcneill
Date:   Sat Oct 29 13:29:47 UTC 2022

Modified Files:
src/sys/arch/arm/samsung: exynos_platform.c exynos_soc.c

Log Message:
Build fixes.


To generate a diff of this commit:
cvs rdiff -u -r1.38 -r1.39 src/sys/arch/arm/samsung/exynos_platform.c
cvs rdiff -u -r1.40 -r1.41 src/sys/arch/arm/samsung/exynos_soc.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/arm/samsung

2022-02-11 Thread Taylor R Campbell
Module Name:src
Committed By:   riastradh
Date:   Fri Feb 11 23:48:50 UTC 2022

Modified Files:
src/sys/arch/arm/samsung: exynos_gpio.c

Log Message:
arm/samsung: Don't abuse child's dv_private for the parent's uses.

dv_private belongs to the device itself, i.e., the child here.

This overwrote the child's softc pointer, causing all kinds of havoc;
if this worked it was by an amazing accident.


To generate a diff of this commit:
cvs rdiff -u -r1.32 -r1.33 src/sys/arch/arm/samsung/exynos_gpio.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/arm/samsung/exynos_gpio.c
diff -u src/sys/arch/arm/samsung/exynos_gpio.c:1.32 src/sys/arch/arm/samsung/exynos_gpio.c:1.33
--- src/sys/arch/arm/samsung/exynos_gpio.c:1.32	Sat Aug  7 16:18:45 2021
+++ src/sys/arch/arm/samsung/exynos_gpio.c	Fri Feb 11 23:48:50 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: exynos_gpio.c,v 1.32 2021/08/07 16:18:45 thorpej Exp $ */
+/*	$NetBSD: exynos_gpio.c,v 1.33 2022/02/11 23:48:50 riastradh Exp $ */
 
 /*-
 * Copyright (c) 2014, 2020 The NetBSD Foundation, Inc.
@@ -34,7 +34,7 @@
 #include "gpio.h"
 
 #include 
-__KERNEL_RCSID(1, "$NetBSD: exynos_gpio.c,v 1.32 2021/08/07 16:18:45 thorpej Exp $");
+__KERNEL_RCSID(1, "$NetBSD: exynos_gpio.c,v 1.33 2022/02/11 23:48:50 riastradh Exp $");
 
 #include 
 #include 
@@ -398,7 +398,6 @@ exynos_gpio_bank_config(struct exynos_pi
 	bank->bank_sc = sc;
 	bank->bank_dev =
 	config_found(parent->sc_dev, , exynos_gpio_cfprint, CFARGS_NONE);
-	bank->bank_dev->dv_private = sc;
 
 	/* read in our initial settings */
 	bank->bank_cfg.cfg = GPIO_READ(bank, EXYNOS_GPIO_CON);
@@ -451,7 +450,14 @@ exynos_gpio_pin_lookup(const char *name)
 static void *
 exynos_gpio_fdt_acquire(device_t dev, const void *data, size_t len, int flags)
 {
+	device_t parent = device_parent(dev);
+	struct exynos_pinctrl_softc *sc = device_private(parent);
+	const struct exynos_pinctrl_banks *epb = sc->sc_epb;
+	struct exynos_gpio_bank *bank = NULL;
 	struct exynos_gpio_pin *gpin;
+	u_int n;
+
+	KASSERT(device_is_a(parent, "exyopctl"));
 
 	if (len != 12)
 		return NULL;
@@ -460,8 +466,14 @@ exynos_gpio_fdt_acquire(device_t dev, co
 	const int pin = be32toh(cells[1]) & 0x0f;
 	const int actlo = be32toh(cells[2]) & 0x01;
 
-	struct exynos_gpio_softc *bank_sc = device_private(dev);
-	struct exynos_gpio_bank * const bank = bank_sc->sc_bank;
+	for (n = 0; n < epb->epb_nbanks; n++) {
+		if (epb->epb_banks[n].bank_dev == dev) {
+			bank = >epb_banks[n];
+			break;
+		}
+	}
+	KASSERTMSG(bank != NULL, "no such gpio bank child of %s @ %p: %s @ %p",
+	device_xname(parent), parent, device_xname(dev), dev);
 
 	gpin = kmem_alloc(sizeof(*gpin), KM_SLEEP);
 	gpin->pin_sc = bank->bank_sc;



CVS commit: src/sys/arch/arm/samsung

2022-02-11 Thread Taylor R Campbell
Module Name:src
Committed By:   riastradh
Date:   Fri Feb 11 23:48:50 UTC 2022

Modified Files:
src/sys/arch/arm/samsung: exynos_gpio.c

Log Message:
arm/samsung: Don't abuse child's dv_private for the parent's uses.

dv_private belongs to the device itself, i.e., the child here.

This overwrote the child's softc pointer, causing all kinds of havoc;
if this worked it was by an amazing accident.


To generate a diff of this commit:
cvs rdiff -u -r1.32 -r1.33 src/sys/arch/arm/samsung/exynos_gpio.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/arm/samsung

2022-02-11 Thread Taylor R Campbell
Module Name:src
Committed By:   riastradh
Date:   Fri Feb 11 23:48:41 UTC 2022

Modified Files:
src/sys/arch/arm/samsung: exynos_pinctrl.c

Log Message:
exyopctl(4): Don't leak a duplicate softc on attach.


To generate a diff of this commit:
cvs rdiff -u -r1.21 -r1.22 src/sys/arch/arm/samsung/exynos_pinctrl.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/arm/samsung/exynos_pinctrl.c
diff -u src/sys/arch/arm/samsung/exynos_pinctrl.c:1.21 src/sys/arch/arm/samsung/exynos_pinctrl.c:1.22
--- src/sys/arch/arm/samsung/exynos_pinctrl.c:1.21	Wed Jan 27 03:10:19 2021
+++ src/sys/arch/arm/samsung/exynos_pinctrl.c	Fri Feb 11 23:48:41 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: exynos_pinctrl.c,v 1.21 2021/01/27 03:10:19 thorpej Exp $ */
+/*	$NetBSD: exynos_pinctrl.c,v 1.22 2022/02/11 23:48:41 riastradh Exp $ */
 
 /*-
 * Copyright (c) 2015, 2020 The NetBSD Foundation, Inc.
@@ -34,14 +34,13 @@
 #include "gpio.h"
 
 #include 
-__KERNEL_RCSID(1, "$NetBSD: exynos_pinctrl.c,v 1.21 2021/01/27 03:10:19 thorpej Exp $");
+__KERNEL_RCSID(1, "$NetBSD: exynos_pinctrl.c,v 1.22 2022/02/11 23:48:41 riastradh Exp $");
 
 #include 
 #include 
 #include 
 #include 
 #include 
-#include 
 #include 
 
 #include 
@@ -93,8 +92,7 @@ exynos_pinctrl_match(device_t parent, cf
 static void
 exynos_pinctrl_attach(device_t parent, device_t self, void *aux)
 {
-	struct exynos_pinctrl_softc * const sc
-		= kmem_zalloc(sizeof(*sc), KM_SLEEP);
+	struct exynos_pinctrl_softc * const sc = device_private(self);
 	struct fdt_attach_args * const faa = aux;
 	bus_addr_t addr;
 	bus_size_t size;
@@ -107,7 +105,6 @@ exynos_pinctrl_attach(device_t parent, d
 	}
 
 	aprint_normal(" pinctrl @ 0x%08x ", (uint)addr);
-	self->dv_private = sc;
 	sc->sc_dev = self;
 	sc->sc_bst = faa->faa_bst;
 	sc->sc_epb = of_compatible_lookup(faa->faa_phandle, compat_data)->data;



CVS commit: src/sys/arch/arm/samsung

2022-02-11 Thread Taylor R Campbell
Module Name:src
Committed By:   riastradh
Date:   Fri Feb 11 23:48:41 UTC 2022

Modified Files:
src/sys/arch/arm/samsung: exynos_pinctrl.c

Log Message:
exyopctl(4): Don't leak a duplicate softc on attach.


To generate a diff of this commit:
cvs rdiff -u -r1.21 -r1.22 src/sys/arch/arm/samsung/exynos_pinctrl.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/arm/samsung

2019-10-18 Thread Nick Hudson
Module Name:src
Committed By:   skrll
Date:   Fri Oct 18 06:13:38 UTC 2019

Modified Files:
src/sys/arch/arm/samsung: exynos5410_clock.c exynos5422_clock.c
exynos_combiner.c exynos_dwcmmc.c exynos_i2c.c exynos_pinctrl.c
exynos_pwm.c exynos_rtc.c exynos_wdt.c mct.c

Log Message:
Use PRIxBUSADDR


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/sys/arch/arm/samsung/exynos5410_clock.c
cvs rdiff -u -r1.13 -r1.14 src/sys/arch/arm/samsung/exynos5422_clock.c
cvs rdiff -u -r1.10 -r1.11 src/sys/arch/arm/samsung/exynos_combiner.c \
src/sys/arch/arm/samsung/exynos_wdt.c
cvs rdiff -u -r1.8 -r1.9 src/sys/arch/arm/samsung/exynos_dwcmmc.c
cvs rdiff -u -r1.16 -r1.17 src/sys/arch/arm/samsung/exynos_i2c.c
cvs rdiff -u -r1.14 -r1.15 src/sys/arch/arm/samsung/exynos_pinctrl.c
cvs rdiff -u -r1.1 -r1.2 src/sys/arch/arm/samsung/exynos_pwm.c
cvs rdiff -u -r1.2 -r1.3 src/sys/arch/arm/samsung/exynos_rtc.c
cvs rdiff -u -r1.15 -r1.16 src/sys/arch/arm/samsung/mct.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/arm/samsung

2019-10-18 Thread Nick Hudson
Module Name:src
Committed By:   skrll
Date:   Fri Oct 18 06:13:38 UTC 2019

Modified Files:
src/sys/arch/arm/samsung: exynos5410_clock.c exynos5422_clock.c
exynos_combiner.c exynos_dwcmmc.c exynos_i2c.c exynos_pinctrl.c
exynos_pwm.c exynos_rtc.c exynos_wdt.c mct.c

Log Message:
Use PRIxBUSADDR


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/sys/arch/arm/samsung/exynos5410_clock.c
cvs rdiff -u -r1.13 -r1.14 src/sys/arch/arm/samsung/exynos5422_clock.c
cvs rdiff -u -r1.10 -r1.11 src/sys/arch/arm/samsung/exynos_combiner.c \
src/sys/arch/arm/samsung/exynos_wdt.c
cvs rdiff -u -r1.8 -r1.9 src/sys/arch/arm/samsung/exynos_dwcmmc.c
cvs rdiff -u -r1.16 -r1.17 src/sys/arch/arm/samsung/exynos_i2c.c
cvs rdiff -u -r1.14 -r1.15 src/sys/arch/arm/samsung/exynos_pinctrl.c
cvs rdiff -u -r1.1 -r1.2 src/sys/arch/arm/samsung/exynos_pwm.c
cvs rdiff -u -r1.2 -r1.3 src/sys/arch/arm/samsung/exynos_rtc.c
cvs rdiff -u -r1.15 -r1.16 src/sys/arch/arm/samsung/mct.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/arm/samsung/exynos5410_clock.c
diff -u src/sys/arch/arm/samsung/exynos5410_clock.c:1.4 src/sys/arch/arm/samsung/exynos5410_clock.c:1.5
--- src/sys/arch/arm/samsung/exynos5410_clock.c:1.4	Sun Sep  9 07:21:18 2018
+++ src/sys/arch/arm/samsung/exynos5410_clock.c	Fri Oct 18 06:13:38 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: exynos5410_clock.c,v 1.4 2018/09/09 07:21:18 aymeric Exp $ */
+/* $NetBSD: exynos5410_clock.c,v 1.5 2019/10/18 06:13:38 skrll Exp $ */
 
 /*-
  * Copyright (c) 2015-2017 Jared McNeill 
@@ -27,7 +27,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: exynos5410_clock.c,v 1.4 2018/09/09 07:21:18 aymeric Exp $");
+__KERNEL_RCSID(0, "$NetBSD: exynos5410_clock.c,v 1.5 2019/10/18 06:13:38 skrll Exp $");
 
 #include 
 #include 
@@ -451,8 +451,8 @@ exynos5410_clock_attach(device_t parent,
 	
 	error = bus_space_map(sc->sc_bst, addr, size, 0, >sc_bsh);
 	if (error) {
-		aprint_error(": couldn't map %#llx: %d",
-			 (uint64_t)addr, error);
+		aprint_error(": couldn't map %#" PRIxBUSADDR ": %d",
+			 addr, error);
 		return;
 	}
 

Index: src/sys/arch/arm/samsung/exynos5422_clock.c
diff -u src/sys/arch/arm/samsung/exynos5422_clock.c:1.13 src/sys/arch/arm/samsung/exynos5422_clock.c:1.14
--- src/sys/arch/arm/samsung/exynos5422_clock.c:1.13	Sun Sep  9 07:21:18 2018
+++ src/sys/arch/arm/samsung/exynos5422_clock.c	Fri Oct 18 06:13:38 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: exynos5422_clock.c,v 1.13 2018/09/09 07:21:18 aymeric Exp $ */
+/* $NetBSD: exynos5422_clock.c,v 1.14 2019/10/18 06:13:38 skrll Exp $ */
 
 /*-
  * Copyright (c) 2015 Jared D. McNeill 
@@ -29,7 +29,7 @@
 #include "locators.h"
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: exynos5422_clock.c,v 1.13 2018/09/09 07:21:18 aymeric Exp $");
+__KERNEL_RCSID(0, "$NetBSD: exynos5422_clock.c,v 1.14 2019/10/18 06:13:38 skrll Exp $");
 
 #include 
 #include 
@@ -628,8 +628,8 @@ exynos5422_clock_attach(device_t parent,
 	
 	error = bus_space_map(sc->sc_bst, addr, size, 0, >sc_bsh);
 	if (error) {
-		aprint_error(": couldn't map %#llx: %d",
-			 (uint64_t)addr, error);
+		aprint_error(": couldn't map %#" PRIxBUSADDR ": %d",
+			 addr, error);
 		return;
 	}
 

Index: src/sys/arch/arm/samsung/exynos_combiner.c
diff -u src/sys/arch/arm/samsung/exynos_combiner.c:1.10 src/sys/arch/arm/samsung/exynos_combiner.c:1.11
--- src/sys/arch/arm/samsung/exynos_combiner.c:1.10	Thu Oct 18 09:01:53 2018
+++ src/sys/arch/arm/samsung/exynos_combiner.c	Fri Oct 18 06:13:38 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: exynos_combiner.c,v 1.10 2018/10/18 09:01:53 skrll Exp $ */
+/*	$NetBSD: exynos_combiner.c,v 1.11 2019/10/18 06:13:38 skrll Exp $ */
 
 /*-
 * Copyright (c) 2015 The NetBSD Foundation, Inc.
@@ -35,7 +35,7 @@
 #include "gpio.h"
 
 #include 
-__KERNEL_RCSID(1, "$NetBSD: exynos_combiner.c,v 1.10 2018/10/18 09:01:53 skrll Exp $");
+__KERNEL_RCSID(1, "$NetBSD: exynos_combiner.c,v 1.11 2019/10/18 06:13:38 skrll Exp $");
 
 #include 
 #include 
@@ -134,8 +134,8 @@ exynos_combiner_attach(device_t parent, 
 
 	error = bus_space_map(sc->sc_bst, addr, size, 0, >sc_bsh);
 	if (error) {
-		aprint_error(": couldn't map %#llx: %d",
-			 (uint64_t)addr, error);
+		aprint_error(": couldn't map %#" PRIxBUSADDR ": %d",
+			 addr, error);
 		return;
 	}
 
Index: src/sys/arch/arm/samsung/exynos_wdt.c
diff -u src/sys/arch/arm/samsung/exynos_wdt.c:1.10 src/sys/arch/arm/samsung/exynos_wdt.c:1.11
--- src/sys/arch/arm/samsung/exynos_wdt.c:1.10	Thu Jan  7 04:41:46 2016
+++ src/sys/arch/arm/samsung/exynos_wdt.c	Fri Oct 18 06:13:38 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: exynos_wdt.c,v 1.10 2016/01/07 04:41:46 marty Exp $	*/
+/*	$NetBSD: exynos_wdt.c,v 1.11 2019/10/18 06:13:38 skrll Exp $	*/
 
 /*-
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
@@ -32,7 +32,7 @@
 #include "exynos_wdt.h"
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: exynos_wdt.c,v 1.10