| The conventional embedded devices' chip has only one single function, so it requires several chips to cooperate to perform multifunction. There will be chances of replacing several chips with single one if the one has multifunction, and of dropping the cost and making the devices smaller. In this paper a multifunctional chip integrated with AC'97(Audio Codec'97) component specification Rev2.1 interface is discussed and several Linux mechanisms have been used to implement the whole management modules.A correct dispose is the key to drive the multifunctional chip. Based on chip's function, the analysis of Linux's interrupt and race conditions, all modules can be layered and their tasks can be assigned reasonably.The two pivotal modules' responsibilities are to respectively control AC'97 controller unit & AC-Link (AC'97 Digital interface) and to dispatch interrupt. In the two modules technology of kernel thread and mutex mechanism is used, and a solution to codec's power management is given.Audio codec is the main function in the chip. After having analyzed the AC-Link protocol, DMA (Direct Memory Access) interrupt and audio buffer are used to program the audio driver. A problem of the codec power management is solved in this module.There are several general-purpose I/O (Input/Output) ports, which can make up of keyboard's circuit. Because the press-and-hold keyboard driver is different from the normal driver, it is very important to analyze temporal coherence before driving the keyboard.Readout of touch screen and power management parameters is based on the 10 bits ADC (Analog-Digital Convertor) in chip. In noisy environments, using the ADC synchronous signal can make the touch screen more immune to high frequency fluctuations. In this section interrupt and polling are used to run the touch screen and the interface of power management is provided at last. |