1dbeace10SLouis Mayencourt@startuml 2dbeace10SLouis Mayencourt 3*ec477e7dSSandrine Bailleuxparticipant arm_io_storage 4*ec477e7dSSandrine Bailleuxparticipant io_storage 5*ec477e7dSSandrine Bailleuxparticipant io_fip 6*ec477e7dSSandrine Bailleuxparticipant io_memmap 7dbeace10SLouis Mayencourt 8dbeace10SLouis Mayencourt -> arm_io_storage : arm_io_setup() 9dbeace10SLouis Mayencourt 10dbeace10SLouis Mayencourtgroup io dev registration 11dbeace10SLouis Mayencourt 12dbeace10SLouis Mayencourtarm_io_storage -> io_fip : register_io_dev_fip(&fip_dev_con) 13dbeace10SLouis Mayencourtio_fip -> io_storage : io_register_device(&dev_info_pool[]) 14dbeace10SLouis Mayencourtnote over io_storage 15dbeace10SLouis Mayencourt devices[dev_count] = (fip_)dev_info_pool 16dbeace10SLouis Mayencourt dev_count++ 17dbeace10SLouis Mayencourtend note 18dbeace10SLouis Mayencourt 19dbeace10SLouis Mayencourtarm_io_storage -> io_memmap : register_io_dev_memmap(&memmap_dev_con) 20dbeace10SLouis Mayencourtio_memmap -> io_storage : io_register_device(&memmap_dev_info) 21dbeace10SLouis Mayencourtnote over io_storage 22dbeace10SLouis Mayencourt devices[dev_count] = memmap_dev_info 23dbeace10SLouis Mayencourt dev_count++ 24dbeace10SLouis Mayencourtend note 25dbeace10SLouis Mayencourt 26dbeace10SLouis Mayencourtarm_io_storage -> io_storage : io_dev_open(fip_dev_con, NULL, fip_dev_handle) 27dbeace10SLouis Mayencourt io_storage -> io_storage : dev_open(dev_con, dev_spec, handle) 28dbeace10SLouis Mayencourtactivate io_storage 29dbeace10SLouis Mayencourtopt dev_open() on fip device 30dbeace10SLouis Mayencourt io_storage -> io_fip : fip_dev_open(dev_spec, dev_info) 31dbeace10SLouis Mayencourt note over io_fip 32dbeace10SLouis Mayencourt dev_info = one of the 33dbeace10SLouis Mayencourt "fip_dev_info" from 34dbeace10SLouis Mayencourt dev_info_pool[] 35dbeace10SLouis Mayencourt end note 36dbeace10SLouis Mayencourtend opt 37dbeace10SLouis Mayencourtdeactivate io_storage 38dbeace10SLouis Mayencourt 39dbeace10SLouis Mayencourt 40dbeace10SLouis Mayencourtarm_io_storage -> io_storage : io_dev_open(memmap_dev_con, NULL, memmap_dev_handle) 41dbeace10SLouis Mayencourtio_storage -> io_storage : dev_open(dev_con, dev_spec, handle) 42dbeace10SLouis Mayencourtactivate io_storage 43dbeace10SLouis Mayencourtopt dev_open() on memmap device 44dbeace10SLouis Mayencourt io_storage -> io_memmap : memmap_dev_open(dev_spec, dev_info) 45dbeace10SLouis Mayencourt note over io_memmap 46dbeace10SLouis Mayencourt dev_info = memmap_dev_info 47dbeace10SLouis Mayencourt end note 48dbeace10SLouis Mayencourtend opt 49dbeace10SLouis Mayencourtdeactivate io_storage 50dbeace10SLouis Mayencourt 51dbeace10SLouis Mayencourtend group 52dbeace10SLouis Mayencourt@enduml 53