Module Name: src Committed By: thorpej Date: Wed Dec 23 02:56:11 UTC 2020
Modified Files: src/sys/arch/arm/broadcom: bcm2835_bsc_fdt.c Log Message: Add missing call to fdtbus_register_i2c_controller(). This doesn't affect basic child attachment, but would have broken other references to the i2c controller in DT overlays. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 src/sys/arch/arm/broadcom/bcm2835_bsc_fdt.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/broadcom/bcm2835_bsc_fdt.c diff -u src/sys/arch/arm/broadcom/bcm2835_bsc_fdt.c:1.2 src/sys/arch/arm/broadcom/bcm2835_bsc_fdt.c:1.3 --- src/sys/arch/arm/broadcom/bcm2835_bsc_fdt.c:1.2 Sun May 31 23:52:19 2020 +++ src/sys/arch/arm/broadcom/bcm2835_bsc_fdt.c Wed Dec 23 02:56:11 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: bcm2835_bsc_fdt.c,v 1.2 2020/05/31 23:52:19 thorpej Exp $ */ +/* $NetBSD: bcm2835_bsc_fdt.c,v 1.3 2020/12/23 02:56:11 thorpej Exp $ */ /* * Copyright (c) 2019 Jason R. Thorpe @@ -28,7 +28,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: bcm2835_bsc_fdt.c,v 1.2 2020/05/31 23:52:19 thorpej Exp $"); +__KERNEL_RCSID(0, "$NetBSD: bcm2835_bsc_fdt.c,v 1.3 2020/12/23 02:56:11 thorpej Exp $"); #include <sys/param.h> #include <sys/bus.h> @@ -46,6 +46,18 @@ __KERNEL_RCSID(0, "$NetBSD: bcm2835_bsc_ #include <dev/fdt/fdtvar.h> +static i2c_tag_t +bsciic_fdt_get_tag(device_t dev) +{ + struct bsciic_softc * const sc = device_private(dev); + + return &sc->sc_i2c; +} + +static const struct fdtbus_i2c_controller_func bsciic_fdt_funcs = { + .get_tag = bsciic_fdt_get_tag, +}; + static int bsciic_fdt_match(device_t, cfdata_t, void *); static void bsciic_fdt_attach(device_t, device_t, void *); @@ -129,5 +141,7 @@ bsciic_fdt_attach(device_t parent, devic sc->sc_i2c.ic_release_bus = bsciic_release_bus; sc->sc_i2c.ic_exec = bsciic_exec; + fdtbus_register_i2c_controller(self, phandle, &bsciic_fdt_funcs); + fdtbus_attach_i2cbus(self, phandle, &sc->sc_i2c, iicbus_print); }