iicbus.c (302408) | iicbus.c (310070) |
---|---|
1/*- 2 * Copyright (c) 1998, 2001 Nicolas Souchu 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 11 unchanged lines hidden (view full) --- 20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24 * SUCH DAMAGE. 25 */ 26 27#include <sys/cdefs.h> | 1/*- 2 * Copyright (c) 1998, 2001 Nicolas Souchu 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 11 unchanged lines hidden (view full) --- 20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24 * SUCH DAMAGE. 25 */ 26 27#include <sys/cdefs.h> |
28__FBSDID("$FreeBSD: stable/11/sys/dev/iicbus/iicbus.c 297199 2016-03-22 22:25:08Z jhibbits $"); | 28__FBSDID("$FreeBSD: stable/11/sys/dev/iicbus/iicbus.c 310070 2016-12-14 16:20:51Z avg $"); |
29 30/* 31 * Autoconfiguration and support routines for the Philips serial I2C bus 32 */ 33 34#include <sys/param.h> 35#include <sys/systm.h> 36#include <sys/kernel.h> --- 150 unchanged lines hidden (view full) --- 187 struct iicbus_ivar *devi = IICBUS_IVAR(child); 188 189 switch (which) { 190 default: 191 return (EINVAL); 192 case IICBUS_IVAR_ADDR: 193 *result = devi->addr; 194 break; | 29 30/* 31 * Autoconfiguration and support routines for the Philips serial I2C bus 32 */ 33 34#include <sys/param.h> 35#include <sys/systm.h> 36#include <sys/kernel.h> --- 150 unchanged lines hidden (view full) --- 187 struct iicbus_ivar *devi = IICBUS_IVAR(child); 188 189 switch (which) { 190 default: 191 return (EINVAL); 192 case IICBUS_IVAR_ADDR: 193 *result = devi->addr; 194 break; |
195 case IICBUS_IVAR_NOSTOP: 196 *result = devi->nostop; 197 break; |
|
195 } 196 return (0); 197} 198 | 198 } 199 return (0); 200} 201 |
202static int 203iicbus_write_ivar(device_t bus, device_t child, int which, uintptr_t value) 204{ 205 struct iicbus_ivar *devi = IICBUS_IVAR(child); 206 207 switch (which) { 208 default: 209 return (EINVAL); 210 case IICBUS_IVAR_ADDR: 211 return (EINVAL); 212 case IICBUS_IVAR_NOSTOP: 213 devi->nostop = value; 214 break; 215 } 216 return (0); 217} 218 |
|
199static device_t 200iicbus_add_child(device_t dev, u_int order, const char *name, int unit) 201{ 202 device_t child; 203 struct iicbus_ivar *devi; 204 205 child = device_add_child_ordered(dev, order, name, unit); 206 if (child == NULL) --- 116 unchanged lines hidden (view full) --- 323 DEVMETHOD(bus_get_resource, bus_generic_rl_get_resource), 324 DEVMETHOD(bus_release_resource, bus_generic_rl_release_resource), 325 DEVMETHOD(bus_set_resource, bus_generic_rl_set_resource), 326 DEVMETHOD(bus_get_resource_list, iicbus_get_resource_list), 327 DEVMETHOD(bus_add_child, iicbus_add_child), 328 DEVMETHOD(bus_print_child, iicbus_print_child), 329 DEVMETHOD(bus_probe_nomatch, iicbus_probe_nomatch), 330 DEVMETHOD(bus_read_ivar, iicbus_read_ivar), | 219static device_t 220iicbus_add_child(device_t dev, u_int order, const char *name, int unit) 221{ 222 device_t child; 223 struct iicbus_ivar *devi; 224 225 child = device_add_child_ordered(dev, order, name, unit); 226 if (child == NULL) --- 116 unchanged lines hidden (view full) --- 343 DEVMETHOD(bus_get_resource, bus_generic_rl_get_resource), 344 DEVMETHOD(bus_release_resource, bus_generic_rl_release_resource), 345 DEVMETHOD(bus_set_resource, bus_generic_rl_set_resource), 346 DEVMETHOD(bus_get_resource_list, iicbus_get_resource_list), 347 DEVMETHOD(bus_add_child, iicbus_add_child), 348 DEVMETHOD(bus_print_child, iicbus_print_child), 349 DEVMETHOD(bus_probe_nomatch, iicbus_probe_nomatch), 350 DEVMETHOD(bus_read_ivar, iicbus_read_ivar), |
351 DEVMETHOD(bus_write_ivar, iicbus_write_ivar), |
|
331 DEVMETHOD(bus_child_pnpinfo_str, iicbus_child_pnpinfo_str), 332 DEVMETHOD(bus_child_location_str, iicbus_child_location_str), 333 DEVMETHOD(bus_hinted_child, iicbus_hinted_child), 334 335 /* iicbus interface */ 336 DEVMETHOD(iicbus_transfer, iicbus_transfer), 337 DEVMETHOD(iicbus_get_frequency, iicbus_get_frequency), 338 --- 13 unchanged lines hidden --- | 352 DEVMETHOD(bus_child_pnpinfo_str, iicbus_child_pnpinfo_str), 353 DEVMETHOD(bus_child_location_str, iicbus_child_location_str), 354 DEVMETHOD(bus_hinted_child, iicbus_hinted_child), 355 356 /* iicbus interface */ 357 DEVMETHOD(iicbus_transfer, iicbus_transfer), 358 DEVMETHOD(iicbus_get_frequency, iicbus_get_frequency), 359 --- 13 unchanged lines hidden --- |