111fccf17Sopenharmony_ci# RIL Adapter<a name="EN-US_TOPIC_0000001106353742"></a>
211fccf17Sopenharmony_ci
311fccf17Sopenharmony_ci-   [Introduction](#section117mcpsimp)
411fccf17Sopenharmony_ci-   [Directory Structure](#section122mcpsimp)
511fccf17Sopenharmony_ci-   [Constraints](#section126mcpsimp)
611fccf17Sopenharmony_ci-   [Usage Guidelines](#section264mcpsimp)
711fccf17Sopenharmony_ci-   [Repositories Involved](#section279mcpsimp)
811fccf17Sopenharmony_ci
911fccf17Sopenharmony_ci## Introduction<a name="section117mcpsimp"></a>
1011fccf17Sopenharmony_ci
1111fccf17Sopenharmony_ciThe 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.
1211fccf17Sopenharmony_ci
1311fccf17Sopenharmony_ci**Figure  1**  Architecture of the RIL Adapter module<a name="fig1675210296494"></a>
1411fccf17Sopenharmony_ci![](figures/en-us_architecture-of-the-ril-adapter-module.png)
1511fccf17Sopenharmony_ci
1611fccf17Sopenharmony_ci## Directory Structure<a name="section122mcpsimp"></a>
1711fccf17Sopenharmony_ci
1811fccf17Sopenharmony_ci```shell
1911fccf17Sopenharmony_cibase/telephony/ril_adapter
2011fccf17Sopenharmony_ci├── figures                             # Resource file of readme
2111fccf17Sopenharmony_ci├── frameworks
2211fccf17Sopenharmony_ci│   ├── BUILD.gn
2311fccf17Sopenharmony_ci│   └── src                             # Serialized file
2411fccf17Sopenharmony_ci├── interfaces                          # Provide internal interfaces for each business
2511fccf17Sopenharmony_ci│   └── innerkits
2611fccf17Sopenharmony_ci├── services                            # Service
2711fccf17Sopenharmony_ci│   ├── hril                            # Implementation of service module APIs of the hril layer
2811fccf17Sopenharmony_ci│   ├── hril_hdf                        # HDF service that provides initial vendor lib APIs
2911fccf17Sopenharmony_ci│   └── vendor                          # Vendor file
3011fccf17Sopenharmony_ci│── test                                # Test code
3111fccf17Sopenharmony_ci│   ├── BUILD.gn
3211fccf17Sopenharmony_ci│   └── unittest                        # Unit test code
3311fccf17Sopenharmony_ci└── utils                               # Utilities
3411fccf17Sopenharmony_ci```
3511fccf17Sopenharmony_ci
3611fccf17Sopenharmony_ci## Constraints<a name="section126mcpsimp"></a>
3711fccf17Sopenharmony_ci
3811fccf17Sopenharmony_ci-   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.
3911fccf17Sopenharmony_ci-   In terms of hardware, the device must be equipped with a modem capable of independent cellular communication.
4011fccf17Sopenharmony_ci
4111fccf17Sopenharmony_ci## Usage Guidelines<a name="section264mcpsimp"></a>
4211fccf17Sopenharmony_ci
4311fccf17Sopenharmony_ciThe RIL Adapter does not provide external APIs and can only be called by through drivers\_peripheral.
4411fccf17Sopenharmony_ci
4511fccf17Sopenharmony_ci## Repositories Involved<a name="section279mcpsimp"></a>
4611fccf17Sopenharmony_ci
4711fccf17Sopenharmony_ci[Telephony](https://gitee.com/openharmony/docs/blob/master/en/readme/telephony.md)
4811fccf17Sopenharmony_ci
4911fccf17Sopenharmony_ci**telephony_ril_adapter**
5011fccf17Sopenharmony_ci
5111fccf17Sopenharmony_ci[telephony_core_service](https://gitee.com/openharmony/telephony_core_service/blob/master/README.md)
5211fccf17Sopenharmony_ci
5311fccf17Sopenharmony_ci[drivers_interface](https://gitee.com/openharmony/drivers_interface)
5411fccf17Sopenharmony_ci
5511fccf17Sopenharmony_ci[drivers_peripheral](https://gitee.com/openharmony/drivers_peripheral)
56