Make it possible to build a custom UI which uses EthernetRecoveryUI.
Since EthernetRecoveryUI must be used with EthernetDevice, but the
make_device() function is the only place a custom UI can be specified,
we need to move the common EthernetDevice to the recovery_ui core and
make a new "default_ethernet_device" which looks like the other
default device library stubs, for backwards compatibility.
This makes it possible to use EthernetRecoveryUI on cuttlefish.
Bug: 172693524
Change-Id: I6a66bb949ef97d06f532adb286d2db4c002d2924
The current fastbootd only supports USB protocol. But some Android TV
devices are built without USB port. The fastbootd cannot be used on
those ATV devices due to it. aosp/1295566 enables fastbootd over
ethernet.
This change adds an EthernetDevice to manage ethernet connection and set
fastbootd protcol property fastbootd.protocol to enable fastbootd over
ethernet in recovery mode. It uses IPv6 link-local address to not expose
the devices out of the network segment. The devices who want to use this
EthernetDevice should add
“TARGET_RECOVERY_UI_LIB := librecovery_ui_ethernet” into BoardConfig.mk.
BUG: 152544169
Test: Enter and exit fastboot mode and check eth0 IPv6 link-local address
on screen UI.
Change-Id: I73fe44be3790bdba5a6059fbba3f7264b21eed99