mirror of
https://github.com/torvalds/linux.git
synced 2024-11-21 19:41:42 +00:00
docs: driver-model: move it to the driver-api book
The audience for the Kernel driver-model is clearly Kernel hackers. Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> Acked-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> # ice driver changes
This commit is contained in:
parent
56198359b6
commit
fe34c89d25
@ -1,5 +1,3 @@
|
||||
:orphan:
|
||||
|
||||
============
|
||||
Driver Model
|
||||
============
|
@ -9,7 +9,7 @@ Patrick Mochel
|
||||
|
||||
Overview
|
||||
|
||||
Please refer to `Documentation/driver-model/*.rst` for definitions of
|
||||
Please refer to `Documentation/driver-api/driver-model/*.rst` for definitions of
|
||||
various driver types and concepts.
|
||||
|
||||
Most of the work of porting devices drivers to the new model happens
|
@ -399,7 +399,7 @@ symbol:
|
||||
will pass the struct gpio_chip* for the chip to all IRQ callbacks, so the
|
||||
callbacks need to embed the gpio_chip in its state container and obtain a
|
||||
pointer to the container using container_of().
|
||||
(See Documentation/driver-model/design-patterns.rst)
|
||||
(See Documentation/driver-api/driver-model/design-patterns.rst)
|
||||
|
||||
- gpiochip_irqchip_add_nested(): adds a nested cascaded irqchip to a gpiochip,
|
||||
as discussed above regarding different types of cascaded irqchips. The
|
||||
|
@ -14,6 +14,7 @@ available subsections can be seen below.
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
driver-model/index
|
||||
basics
|
||||
infrastructure
|
||||
early-userspace/index
|
||||
|
@ -103,7 +103,7 @@ id_table an array of NULL terminated EISA id strings,
|
||||
(driver_data).
|
||||
|
||||
driver a generic driver, such as described in
|
||||
Documentation/driver-model/driver.rst. Only .name,
|
||||
Documentation/driver-api/driver-model/driver.rst. Only .name,
|
||||
.probe and .remove members are mandatory.
|
||||
=============== ====================================================
|
||||
|
||||
@ -152,7 +152,7 @@ state set of flags indicating the state of the device. Current
|
||||
flags are EISA_CONFIG_ENABLED and EISA_CONFIG_FORCED.
|
||||
res set of four 256 bytes I/O regions allocated to this device
|
||||
dma_mask DMA mask set from the parent device.
|
||||
dev generic device (see Documentation/driver-model/device.rst)
|
||||
dev generic device (see Documentation/driver-api/driver-model/device.rst)
|
||||
======== ============================================================
|
||||
|
||||
You can get the 'struct eisa_device' from 'struct device' using the
|
||||
|
@ -319,7 +319,7 @@ quick way to lookup the sysfs interface for a device from the result of
|
||||
a stat(2) operation.
|
||||
|
||||
More information can driver-model specific features can be found in
|
||||
Documentation/driver-model/.
|
||||
Documentation/driver-api/driver-model/.
|
||||
|
||||
|
||||
TODO: Finish this section.
|
||||
|
@ -89,7 +89,7 @@ increase the chances of your change being accepted.
|
||||
console. Excessive logging can seriously affect system performance.
|
||||
|
||||
* Use devres functions whenever possible to allocate resources. For rationale
|
||||
and supported functions, please see Documentation/driver-model/devres.rst.
|
||||
and supported functions, please see Documentation/driver-api/driver-model/devres.rst.
|
||||
If a function is not supported by devres, consider using devm_add_action().
|
||||
|
||||
* If the driver has a detect function, make sure it is silent. Debug messages
|
||||
|
@ -288,7 +288,7 @@ dev/ 包含两个子目录: char/ 和 block/。在这两个子目录中,有
|
||||
中相应的设备。/sys/dev 提供一个通过一个 stat(2) 操作结果,查找
|
||||
设备 sysfs 接口快捷的方法。
|
||||
|
||||
更多有关 driver-model 的特性信息可以在 Documentation/driver-model/
|
||||
更多有关 driver-model 的特性信息可以在 Documentation/driver-api/driver-model/
|
||||
中找到。
|
||||
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
* Copyright (c) 2002-3 Patrick Mochel
|
||||
* Copyright (c) 2002-3 Open Source Development Labs
|
||||
*
|
||||
* Please see Documentation/driver-model/platform.rst for more
|
||||
* Please see Documentation/driver-api/driver-model/platform.rst for more
|
||||
* information.
|
||||
*/
|
||||
|
||||
|
@ -41,7 +41,7 @@ MODULE_PARM_DESC(mask, "GPIO channel mask.");
|
||||
|
||||
/*
|
||||
* FIXME: convert this singleton driver to use the state container
|
||||
* design pattern, see Documentation/driver-model/design-patterns.rst
|
||||
* design pattern, see Documentation/driver-api/driver-model/design-patterns.rst
|
||||
*/
|
||||
static struct cs5535_gpio_chip {
|
||||
struct gpio_chip chip;
|
||||
|
@ -2286,7 +2286,7 @@ ice_probe(struct pci_dev *pdev, const struct pci_device_id __always_unused *ent)
|
||||
struct ice_hw *hw;
|
||||
int err;
|
||||
|
||||
/* this driver uses devres, see Documentation/driver-model/devres.rst */
|
||||
/* this driver uses devres, see Documentation/driver-api/driver-model/devres.rst */
|
||||
err = pcim_enable_device(pdev);
|
||||
if (err)
|
||||
return err;
|
||||
|
@ -15,7 +15,7 @@ normally be unsharable, specifically:
|
||||
* visorinput - keyboard and mouse
|
||||
|
||||
These drivers conform to the standard Linux bus/device model described
|
||||
within Documentation/driver-model/, and utilize a driver named visorbus to
|
||||
within Documentation/driver-api/driver-model/, and utilize a driver named visorbus to
|
||||
present the virtual busses involved. Drivers in the 'visor*' driver set are
|
||||
commonly referred to as "guest drivers" or "client drivers". All drivers
|
||||
except visorbus expose a device of a specific usable class to the Linux guest
|
||||
@ -141,7 +141,7 @@ called automatically by the visorbus driver at appropriate times:
|
||||
-----------------------------------
|
||||
|
||||
Because visorbus is a standard Linux bus driver in the model described in
|
||||
Documentation/driver-model/, the hierarchy of s-Par virtual devices is
|
||||
Documentation/driver-api/driver-model/, the hierarchy of s-Par virtual devices is
|
||||
published in the sysfs tree beneath /bus/visorbus/, e.g.,
|
||||
/sys/bus/visorbus/devices/ might look like:
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
* Copyright (c) 2004-2009 Greg Kroah-Hartman <gregkh@suse.de>
|
||||
* Copyright (c) 2008-2009 Novell Inc.
|
||||
*
|
||||
* See Documentation/driver-model/ for more information.
|
||||
* See Documentation/driver-api/driver-model/ for more information.
|
||||
*/
|
||||
|
||||
#ifndef _DEVICE_H_
|
||||
|
@ -4,7 +4,7 @@
|
||||
*
|
||||
* Copyright (c) 2001-2003 Patrick Mochel <mochel@osdl.org>
|
||||
*
|
||||
* See Documentation/driver-model/ for more information.
|
||||
* See Documentation/driver-api/driver-model/ for more information.
|
||||
*/
|
||||
|
||||
#ifndef _PLATFORM_DEVICE_H_
|
||||
|
@ -3,7 +3,7 @@
|
||||
/// functions. Values allocated using the devm_functions are freed when
|
||||
/// the device is detached, and thus the use of the standard freeing
|
||||
/// function would cause a double free.
|
||||
/// See Documentation/driver-model/devres.rst for more information.
|
||||
/// See Documentation/driver-api/driver-model/devres.rst for more information.
|
||||
///
|
||||
/// A difficulty of detecting this problem is that the standard freeing
|
||||
/// function might be called from a different function than the one
|
||||
|
Loading…
Reference in New Issue
Block a user