blob: 00db6fef06176a7074860bfacaa9d2cfd4123405 [file] [log] [blame]
#include <linux/platform_device.h>
#include <test/mock.h>
static inline struct platform_driver *platform_driver_find(const char *name)
{
struct device_driver *driver;
driver = driver_find(name, &platform_bus_type);
if (!driver)
return NULL;
return to_platform_driver(driver);
}
/**
* of_fake_node()
* @test: the test to associate node with
* @name: name of the node
*
* The &struct device_node returned is allocated as a root node with the given
* name and otherwise behaves as a real &struct device_node.
*
* Returns: the faked &struct device_node
*/
struct device_node *of_fake_node(struct test *test, const char *name);
/**
* of_fake_probe_platform()
* @test: the test to associate the fake platform device with
* @driver: driver to probe
* @node_name: name of the device node created
*
* Creates a &struct platform_device and an associated &struct device_node,
* probes the provided &struct platform_driver with the &struct platform_device.
*
* Returns: the &struct platform_device that was created
*/
struct platform_device *
of_fake_probe_platform(struct test *test,
const struct platform_driver *driver,
const char *node_name);
/**
* of_fake_probe_platform_by_name()
* @test: the test to associate the fake platform device with
* @driver_name: name of the driver to probe
* @node_name: name of the device node created
*
* Same as of_fake_probe_platform() but looks up the &struct platform_driver by
* the provided name.
*
* Returns: the &struct platform_device that was created
*/
struct platform_device *of_fake_probe_platform_by_name(struct test *test,
const char *driver_name,
const char *node_name);