Module Name: src
Committed By: jmcneill
Date: Wed Dec 16 19:46:56 UTC 2015
Modified Files:
src/sys/arch/arm/nvidia: tegra_com.c tegra_i2c.c tegra_lic.c
tegra_sdhc.c tegra_usbphy.c
Log Message:
use of_getprop_uint32
To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/sys/arch/arm/nvidia/tegra_com.c \
src/sys/arch/arm/nvidia/tegra_usbphy.c
cvs rdiff -u -r1.9 -r1.10 src/sys/arch/arm/nvidia/tegra_i2c.c
cvs rdiff -u -r1.1 -r1.2 src/sys/arch/arm/nvidia/tegra_lic.c
cvs rdiff -u -r1.13 -r1.14 src/sys/arch/arm/nvidia/tegra_sdhc.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/nvidia/tegra_com.c
diff -u src/sys/arch/arm/nvidia/tegra_com.c:1.3 src/sys/arch/arm/nvidia/tegra_com.c:1.4
--- src/sys/arch/arm/nvidia/tegra_com.c:1.3 Sun Dec 13 17:39:19 2015
+++ src/sys/arch/arm/nvidia/tegra_com.c Wed Dec 16 19:46:55 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: tegra_com.c,v 1.3 2015/12/13 17:39:19 jmcneill Exp $ */
+/* $NetBSD: tegra_com.c,v 1.4 2015/12/16 19:46:55 jmcneill Exp $ */
/*-
* Copyright (c) 2013 The NetBSD Foundation, Inc.
@@ -31,7 +31,7 @@
#include <sys/cdefs.h>
-__KERNEL_RCSID(1, "$NetBSD: tegra_com.c,v 1.3 2015/12/13 17:39:19 jmcneill Exp $");
+__KERNEL_RCSID(1, "$NetBSD: tegra_com.c,v 1.4 2015/12/16 19:46:55 jmcneill Exp $");
#include <sys/param.h>
#include <sys/bus.h>
@@ -98,17 +98,17 @@ tegra_com_attach(device_t parent, device
bus_addr_t addr;
bus_size_t size;
u_int reg_shift;
- int error, len;
+ int error;
if (fdtbus_get_reg(faa->faa_phandle, 0, &addr, &size) != 0) {
aprint_error(": couldn't get registers\n");
return;
}
- len = OF_getprop(faa->faa_phandle, "reg-shift", ®_shift,
- sizeof(reg_shift));
- if (len == sizeof(reg_shift)) {
- reg_shift = be32toh(reg_shift);
+ if (of_getprop_uint32(faa->faa_phandle, "reg-shift", ®_shift)) {
+ /* missing or bad reg-shift property, assume 2 */
+ bst = faa->faa_a4x_bst;
+ } else {
if (reg_shift == 2) {
bst = faa->faa_a4x_bst;
} else if (reg_shift == 0) {
@@ -118,9 +118,6 @@ tegra_com_attach(device_t parent, device
reg_shift);
return;
}
- } else {
- /* missing or bad reg-shift property, assume 2 */
- bst = faa->faa_a4x_bst;
}
sc->sc_dev = self;
Index: src/sys/arch/arm/nvidia/tegra_usbphy.c
diff -u src/sys/arch/arm/nvidia/tegra_usbphy.c:1.3 src/sys/arch/arm/nvidia/tegra_usbphy.c:1.4
--- src/sys/arch/arm/nvidia/tegra_usbphy.c:1.3 Sun Dec 13 17:39:19 2015
+++ src/sys/arch/arm/nvidia/tegra_usbphy.c Wed Dec 16 19:46:55 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: tegra_usbphy.c,v 1.3 2015/12/13 17:39:19 jmcneill Exp $ */
+/* $NetBSD: tegra_usbphy.c,v 1.4 2015/12/16 19:46:55 jmcneill Exp $ */
/*-
* Copyright (c) 2015 Jared D. McNeill <[email protected]>
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: tegra_usbphy.c,v 1.3 2015/12/13 17:39:19 jmcneill Exp $");
+__KERNEL_RCSID(0, "$NetBSD: tegra_usbphy.c,v 1.4 2015/12/16 19:46:55 jmcneill Exp $");
#include <sys/param.h>
#include <sys/bus.h>
@@ -69,16 +69,16 @@ struct tegra_usbphy_softc {
u_int sc_port;
struct tegra_gpio_pin *sc_pin_vbus;
- uint8_t sc_hssync_start_delay;
- uint8_t sc_idle_wait_delay;
- uint8_t sc_elastic_limit;
- uint8_t sc_term_range_adj;
- uint8_t sc_xcvr_setup;
- uint8_t sc_xcvr_lsfslew;
- uint8_t sc_xcvr_lsrslew;
- uint8_t sc_hssquelch_level;
- uint8_t sc_hsdiscon_level;
- uint8_t sc_xcvr_hsslew;
+ uint32_t sc_hssync_start_delay;
+ uint32_t sc_idle_wait_delay;
+ uint32_t sc_elastic_limit;
+ uint32_t sc_term_range_adj;
+ uint32_t sc_xcvr_setup;
+ uint32_t sc_xcvr_lsfslew;
+ uint32_t sc_xcvr_lsrslew;
+ uint32_t sc_hssquelch_level;
+ uint32_t sc_hsdiscon_level;
+ uint32_t sc_xcvr_hsslew;
};
static int tegra_usbphy_parse_properties(struct tegra_usbphy_softc *);
@@ -147,19 +147,12 @@ tegra_usbphy_attach(device_t parent, dev
static int
tegra_usbphy_parse_properties(struct tegra_usbphy_softc *sc)
{
- const int phandle = sc->sc_phandle;
- const int plen = sizeof(u_int);
- u_int val;
-
#define PROPGET(k, v) \
-do { \
- if (OF_getprop(phandle, (k), &val, plen) != plen) { \
+ if (of_getprop_uint32(sc->sc_phandle, (k), (v))) { \
aprint_error_dev(sc->sc_dev, \
"missing property '%s'\n", (k)); \
return EIO; \
- } \
- *(v) = be32toh(val); \
-} while (0)
+ }
PROPGET("nvidia,hssync-start-delay", &sc->sc_hssync_start_delay);
PROPGET("nvidia,idle-wait-delay", &sc->sc_idle_wait_delay);
Index: src/sys/arch/arm/nvidia/tegra_i2c.c
diff -u src/sys/arch/arm/nvidia/tegra_i2c.c:1.9 src/sys/arch/arm/nvidia/tegra_i2c.c:1.10
--- src/sys/arch/arm/nvidia/tegra_i2c.c:1.9 Sun Dec 13 17:39:19 2015
+++ src/sys/arch/arm/nvidia/tegra_i2c.c Wed Dec 16 19:46:55 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: tegra_i2c.c,v 1.9 2015/12/13 17:39:19 jmcneill Exp $ */
+/* $NetBSD: tegra_i2c.c,v 1.10 2015/12/16 19:46:55 jmcneill Exp $ */
/*-
* Copyright (c) 2015 Jared D. McNeill <[email protected]>
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: tegra_i2c.c,v 1.9 2015/12/13 17:39:19 jmcneill Exp $");
+__KERNEL_RCSID(0, "$NetBSD: tegra_i2c.c,v 1.10 2015/12/16 19:46:55 jmcneill Exp $");
#include <sys/param.h>
#include <sys/bus.h>
@@ -126,15 +126,16 @@ tegra_i2c_attach(device_t parent, device
{
struct tegra_i2c_softc * const sc = device_private(self);
struct fdt_attach_args * const faa = aux;
+ const int phandle = faa->faa_phandle;
struct i2cbus_attach_args iba;
prop_dictionary_t devs;
char intrstr[128];
bus_addr_t addr;
bus_size_t size;
u_int address_cells;
- int len, error;
+ int error;
- if (fdtbus_get_reg(faa->faa_phandle, 0, &addr, &size) != 0) {
+ if (fdtbus_get_reg(phandle, 0, &addr, &size) != 0) {
aprint_error(": couldn't get registers\n");
return;
}
@@ -153,12 +154,12 @@ tegra_i2c_attach(device_t parent, device
aprint_naive("\n");
aprint_normal(": I2C%d\n", sc->sc_port + 1);
- if (!fdtbus_intr_str(faa->faa_phandle, 0, intrstr, sizeof(intrstr))) {
+ if (!fdtbus_intr_str(phandle, 0, intrstr, sizeof(intrstr))) {
aprint_error_dev(self, "failed to decode interrupt\n");
return;
}
- sc->sc_ih = fdtbus_intr_establish(faa->faa_phandle, 0, IPL_VM,
+ sc->sc_ih = fdtbus_intr_establish(phandle, 0, IPL_VM,
FDT_INTR_MPSAFE, tegra_i2c_intr, sc);
if (sc->sc_ih == NULL) {
aprint_error_dev(self, "couldn't establish interrupt on %s\n",
@@ -180,17 +181,13 @@ tegra_i2c_attach(device_t parent, device
sc->sc_ic.ic_release_bus = tegra_i2c_release_bus;
sc->sc_ic.ic_exec = tegra_i2c_exec;
- fdtbus_register_i2c_controller(self, faa->faa_phandle,
- &tegra_i2c_funcs);
+ fdtbus_register_i2c_controller(self, phandle, &tegra_i2c_funcs);
devs = prop_dictionary_create();
- len = OF_getprop(faa->faa_phandle, "#address-cells",
- &address_cells, sizeof(address_cells));
- if (len == sizeof(address_cells)) {
- address_cells = be32toh(address_cells);
- } else {
+
+ if (of_getprop_uint32(phandle, "#address-cells", &address_cells))
address_cells = 1;
- }
+
of_enter_i2c_devs(devs, faa->faa_phandle, address_cells * 4, 0);
iba.iba_tag = &sc->sc_ic;
Index: src/sys/arch/arm/nvidia/tegra_lic.c
diff -u src/sys/arch/arm/nvidia/tegra_lic.c:1.1 src/sys/arch/arm/nvidia/tegra_lic.c:1.2
--- src/sys/arch/arm/nvidia/tegra_lic.c:1.1 Sun Dec 13 17:39:19 2015
+++ src/sys/arch/arm/nvidia/tegra_lic.c Wed Dec 16 19:46:55 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: tegra_lic.c,v 1.1 2015/12/13 17:39:19 jmcneill Exp $ */
+/* $NetBSD: tegra_lic.c,v 1.2 2015/12/16 19:46:55 jmcneill Exp $ */
/*-
* Copyright (c) 2015 Jared D. McNeill <[email protected]>
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: tegra_lic.c,v 1.1 2015/12/13 17:39:19 jmcneill Exp $");
+__KERNEL_RCSID(0, "$NetBSD: tegra_lic.c,v 1.2 2015/12/16 19:46:55 jmcneill Exp $");
#include <sys/param.h>
#include <sys/bus.h>
@@ -105,11 +105,10 @@ tegra_lic_establish(device_t dev, int ph
u_int *interrupts;
int interrupt_cells, len;
- len = OF_getprop(sc->sc_phandle, "#interrupt-cells", &interrupt_cells,
- sizeof(interrupt_cells));
- if (len != sizeof(interrupt_cells) || interrupt_cells <= 0)
+ if (of_getprop_uint32(sc->sc_phandle, "#interrupt-cells",
+ &interrupt_cells)) {
return NULL;
- interrupt_cells = be32toh(interrupt_cells);
+ }
len = OF_getproplen(phandle, "interrupts");
if (len <= 0)
@@ -157,12 +156,10 @@ tegra_lic_intrstr(device_t dev, int phan
u_int *interrupts;
int interrupt_cells, len;
- len = OF_getprop(sc->sc_phandle, "#interrupt-cells", &interrupt_cells,
- sizeof(interrupt_cells));
- if (len != sizeof(interrupt_cells) || interrupt_cells <= 0) {
+ if (of_getprop_uint32(sc->sc_phandle, "#interrupt-cells",
+ &interrupt_cells)) {
return false;
}
- interrupt_cells = be32toh(interrupt_cells);
len = OF_getproplen(phandle, "interrupts");
if (len <= 0) {
Index: src/sys/arch/arm/nvidia/tegra_sdhc.c
diff -u src/sys/arch/arm/nvidia/tegra_sdhc.c:1.13 src/sys/arch/arm/nvidia/tegra_sdhc.c:1.14
--- src/sys/arch/arm/nvidia/tegra_sdhc.c:1.13 Tue Dec 15 15:33:19 2015
+++ src/sys/arch/arm/nvidia/tegra_sdhc.c Wed Dec 16 19:46:55 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: tegra_sdhc.c,v 1.13 2015/12/15 15:33:19 jmcneill Exp $ */
+/* $NetBSD: tegra_sdhc.c,v 1.14 2015/12/16 19:46:55 jmcneill Exp $ */
/*-
* Copyright (c) 2015 Jared D. McNeill <[email protected]>
@@ -29,7 +29,7 @@
#include "locators.h"
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: tegra_sdhc.c,v 1.13 2015/12/15 15:33:19 jmcneill Exp $");
+__KERNEL_RCSID(0, "$NetBSD: tegra_sdhc.c,v 1.14 2015/12/16 19:46:55 jmcneill Exp $");
#include <sys/param.h>
#include <sys/bus.h>
@@ -115,12 +115,8 @@ tegra_sdhc_attach(device_t parent, devic
return;
}
- if (OF_getprop(faa->faa_phandle, "bus-width", &bus_width,
- sizeof(bus_width)) == sizeof(bus_width)) {
- bus_width = be32toh(bus_width);
- } else {
+ if (of_getprop_uint32(faa->faa_phandle, "bus-width", &bus_width))
bus_width = 4;
- }
sc->sc.sc_dev = self;
sc->sc.sc_dmat = faa->faa_dmat;