diff --git a/en_US.ISO8859-1/books/arch-handbook/newbus/chapter.sgml b/en_US.ISO8859-1/books/arch-handbook/newbus/chapter.sgml index 186880d010..c8a7ccad1c 100644 --- a/en_US.ISO8859-1/books/arch-handbook/newbus/chapter.sgml +++ b/en_US.ISO8859-1/books/arch-handbook/newbus/chapter.sgml @@ -49,6 +49,9 @@ Device Drivers Purpose of a Device Driver + + device driver + device driverintroduction A device driver is a software component which provides the interface between the kernel's generic view of a peripheral (e.g. disk, network adapter) and the actual implementation of the @@ -69,6 +72,8 @@ pseudo-device drivers + block devices + Block devices performed in way that used fixed size blocks [of data]. This type of driver depended on the so called buffer cache, which had the purpose @@ -80,6 +85,9 @@ Character devices + + character devices + However, in the versions of FreeBSD 4.0 and onward the distinction between block and character devices became non-existent. @@ -92,6 +100,9 @@ Newbus, Busspace and the Resource Manager, an Explanation of the Possibilities --> Overview of Newbus + + Newbus + Newbus is the implementation of a new bus architecture based on abstraction layers which saw its introduction in FreeBSD 3.0 when the Alpha port was imported into the source tree. It was diff --git a/en_US.ISO8859-1/books/arch-handbook/pccard/chapter.sgml b/en_US.ISO8859-1/books/arch-handbook/pccard/chapter.sgml index 0cdfdefaed..138dbf3e37 100644 --- a/en_US.ISO8859-1/books/arch-handbook/pccard/chapter.sgml +++ b/en_US.ISO8859-1/books/arch-handbook/pccard/chapter.sgml @@ -7,6 +7,9 @@ PC Card + PC Card + CardBus + This chapter will talk about the FreeBSD mechanisms for writing a device driver for a PC Card or CardBus device. However, at the present time, it just documents how to add a driver to an @@ -26,6 +29,7 @@ Overview + CIS PC Cards are identified in one of two ways, both based on information in the CIS of the card. The first method is to use numeric manufacturer and product @@ -47,6 +51,10 @@ strings in the CIS space, but leave the manufacturer and product ids unchanged. + NetGear + Linksys + D-Link + Because of the above practice, it is a smaller work load for FreeBSD to use the numeric IDs. It also introduces some minor complications into the process of adding IDs to the @@ -195,6 +203,8 @@ product ALLIEDTELESIS WR211PCM { "Allied&spTelesis&spK.K.", "WR211PCM", Sample probe routine + PC Cardprobe + To understand how to add a device to the list of supported devices, one must understand the probe and/or match routines that many drivers have. It is complicated a little in FreeBSD diff --git a/en_US.ISO8859-1/books/arch-handbook/sound/chapter.sgml b/en_US.ISO8859-1/books/arch-handbook/sound/chapter.sgml index 9c211df637..cbefbeb46b 100644 --- a/en_US.ISO8859-1/books/arch-handbook/sound/chapter.sgml +++ b/en_US.ISO8859-1/books/arch-handbook/sound/chapter.sgml @@ -20,6 +20,8 @@ Introduction + + sound subsystem The FreeBSD sound subsystem cleanly separates generic sound handling issues from device-specific ones. This makes it easier @@ -28,6 +30,8 @@ The &man.pcm.4; framework is the central piece of the sound subsystem. It mainly implements the following elements: + system call interface + A system call interface (read, write, ioctls) to @@ -117,6 +121,7 @@ DRIVER_MODULE(snd_xxxpci, pci, xxx_driver, pcm_devclass, 0, 0); MODULE_DEPEND(snd_xxxpci, snd_pcm, PCM_MINVER, PCM_PREFVER,PCM_MAXVER); + device driverssound Most sound drivers need to store additional private information about their device. A private data structure is usually allocated in the attach routine. Its address is @@ -587,7 +592,7 @@ - The device is specified as a SOUND_MIXER_XXX + The device is specified as a SOUND_MIXER_XXX value The volume values are specified in range [0-100]. A value of zero should mute the device. @@ -652,6 +657,8 @@ The AC97 interface + AC97 + The AC97 interface is implemented by drivers with an AC97 codec. It only has three methods: