mirror of
				https://gitlab.com/ubports/development/core/hybris-support/ofono-binder-plugin-ext-qti
				synced 2025-11-04 13:05:41 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			28 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
Qti ofono binder plugin extension
 | 
						|
====================================
 | 
						|
 | 
						|
It doesn't really do anything. It's just a demonstration of how
 | 
						|
the extension interfaces (BINDER_EXT_TYPE_IMS being used as an
 | 
						|
example) are supposed to be implemented.
 | 
						|
 | 
						|
Here is what happens when this extension gets loaded.
 | 
						|
 | 
						|
1. ofono calls qti_plugin_init(). That function creates an
 | 
						|
   instance of QtiExt and registers it under the name "qti"
 | 
						|
   by calling binder_ext_plugin_register()
 | 
						|
 | 
						|
2. ofono-binder-plugin finds the extension by name which it reads
 | 
						|
   from /etc/ofono/binder.d/qti.conf
 | 
						|
 | 
						|
3. ofono-binder-plugin calls qti_ext_new_slot() method of QtiExt
 | 
						|
   for each configured/detected slot. That creates per-slot QtiSlot
 | 
						|
   objects.
 | 
						|
 | 
						|
4. ofono-binder-plugin asks QtiSlot for particular interfaces by
 | 
						|
   calling its qti_slot_get_interface() method. QtiSlot only
 | 
						|
   reacts to BINDER_EXT_TYPE_IMS query and returns a pointer to
 | 
						|
   QtiIms object implementing BinderExtImsInterface
 | 
						|
 | 
						|
5. ofono-binder-plugin then goes on to call BinderExtImsInterface
 | 
						|
   methods of QtiIms object(s).
 |