# RIL Adapter - [Introduction](#section117mcpsimp) - [Directory Structure](#section122mcpsimp) - [Constraints](#section126mcpsimp) - [Usage Guidelines](#section264mcpsimp) - [Repositories Involved](#section279mcpsimp) ## Introduction The RIL Adapter module provides functions such as vendor library loading, service interface implementation, and event scheduling and management. The module shields the differences of modems supplied by different vendors to provide a unified interface for the telephony service layer. It communicates with the telephony service layer by registering a Hardware Driver Foundation \(HDF\) service. **Figure 1** Architecture of the RIL Adapter module ![](figures/en-us_architecture-of-the-ril-adapter-module.png) ## Directory Structure ```shell base/telephony/ril_adapter ├── figures # Resource file of readme ├── frameworks │   ├── BUILD.gn │   └── src # Serialized file ├── interfaces # Provide internal interfaces for each business │   └── innerkits ├── services # Service │   ├── hril # Implementation of service module APIs of the hril layer │   ├── hril_hdf # HDF service that provides initial vendor lib APIs │   └── vendor # Vendor file │── test # Test code │ ├── BUILD.gn │ └── unittest # Unit test code └── utils # Utilities ``` ## Constraints - In terms of software, the RIL Adapter needs to work with the HDF (drivers\_interface and drivers\_peripheral) and an interworking interface needs to be implemented by the modem vendor lib. - In terms of hardware, the device must be equipped with a modem capable of independent cellular communication. ## Usage Guidelines The RIL Adapter does not provide external APIs and can only be called by through drivers\_peripheral. ## Repositories Involved [Telephony](https://gitee.com/openharmony/docs/blob/master/en/readme/telephony.md) **telephony_ril_adapter** [telephony_core_service](https://gitee.com/openharmony/telephony_core_service/blob/master/README.md) [drivers_interface](https://gitee.com/openharmony/drivers_interface) [drivers_peripheral](https://gitee.com/openharmony/drivers_peripheral)