1*1527f51aSFrançois Tigeot /* 2*1527f51aSFrançois Tigeot * Copyright (c) 2017 François Tigeot 3*1527f51aSFrançois Tigeot * All rights reserved. 4*1527f51aSFrançois Tigeot * 5*1527f51aSFrançois Tigeot * Redistribution and use in source and binary forms, with or without 6*1527f51aSFrançois Tigeot * modification, are permitted provided that the following conditions 7*1527f51aSFrançois Tigeot * are met: 8*1527f51aSFrançois Tigeot * 1. Redistributions of source code must retain the above copyright 9*1527f51aSFrançois Tigeot * notice unmodified, this list of conditions, and the following 10*1527f51aSFrançois Tigeot * disclaimer. 11*1527f51aSFrançois Tigeot * 2. Redistributions in binary form must reproduce the above copyright 12*1527f51aSFrançois Tigeot * notice, this list of conditions and the following disclaimer in the 13*1527f51aSFrançois Tigeot * documentation and/or other materials provided with the distribution. 14*1527f51aSFrançois Tigeot * 15*1527f51aSFrançois Tigeot * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 16*1527f51aSFrançois Tigeot * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 17*1527f51aSFrançois Tigeot * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 18*1527f51aSFrançois Tigeot * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 19*1527f51aSFrançois Tigeot * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 20*1527f51aSFrançois Tigeot * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21*1527f51aSFrançois Tigeot * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22*1527f51aSFrançois Tigeot * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23*1527f51aSFrançois Tigeot * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 24*1527f51aSFrançois Tigeot * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25*1527f51aSFrançois Tigeot */ 26*1527f51aSFrançois Tigeot 27*1527f51aSFrançois Tigeot #ifndef _LINUX_COMPONENT_H_ 28*1527f51aSFrançois Tigeot #define _LINUX_COMPONENT_H_ 29*1527f51aSFrançois Tigeot 30*1527f51aSFrançois Tigeot struct device; 31*1527f51aSFrançois Tigeot 32*1527f51aSFrançois Tigeot struct component_ops { 33*1527f51aSFrançois Tigeot int (*bind)(struct device *comp, struct device *master, 34*1527f51aSFrançois Tigeot void *master_data); 35*1527f51aSFrançois Tigeot void (*unbind)(struct device *comp, struct device *master, 36*1527f51aSFrançois Tigeot void *master_data); 37*1527f51aSFrançois Tigeot }; 38*1527f51aSFrançois Tigeot 39*1527f51aSFrançois Tigeot #endif /* _LINUX_COMPONENT_H_ */ 40