1
1
mirror of https://github.com/NixOS/mobile-nixos.git synced 2024-09-11 12:05:26 +03:00
mobile-nixos/modules
Samuel Dionne-Riel a96c2b845c boot/init: Add support for FunctionFS on GadgetFS
FunctionFS on GadgetFS requires this to happen in order:

 - (1) preparing the gadget
 - (2) preparing the function
 - (3) mounting the functionfs
 - (4) starting the daemon
 - (5) enabling the device

Doing any of these steps in the wrong order *will* fail. You cannot
mount functionfs if the function name hasn't been allocated yet. You
cannot start the daemon without functionfs being mounted. You cannot
enable the device without the daemon running on the USB endpoints.

This is why the GadgetFS stuff here *has* to know about mounting the
filesystem and starting the daemon.

In fact, the generic library to be written to handle USB gadget mode
**will** have to have that knowledge!

The added TODOs are to be done when extracting as a standalone library.
2021-01-27 22:16:55 -05:00
..
_nixos-disintegration initrd: Allow disabling for shared rootfs 2020-12-27 17:38:29 -05:00
quirks quirks/wifi: Add quirk to disable MAC address randomization 2021-01-10 21:08:09 -05:00
stage-1/tasks boot/init: Add support for FunctionFS on GadgetFS 2021-01-27 22:16:55 -05:00
system-types system-types/android: Add odin-specific device-notes fragment 2021-01-09 19:23:21 -05:00
_nixos-integration.nix Allow evaluating without NixOS. 2020-04-06 18:32:45 -04:00
adb.nix modules/adb: ADB works just fine on any usb gadget 2021-01-27 22:16:55 -05:00
boot-initrd.nix boot-initrd: Removes outdated option 2020-02-03 16:19:10 -05:00
cross-workarounds.nix cross-workarounds: Disable udisks for cross-builds 2020-04-23 00:01:33 -04:00
devices-metadata.nix devices-metadata: Export documentation config 2021-01-09 19:23:20 -05:00
documentation.nix modules/documentation: Init 2021-01-09 19:23:20 -05:00
generated-filesystems.nix generated-filesystems: Allow passing raw images 2020-11-07 18:26:47 -05:00
hardware-allwinner.nix hardware-allwinner: Configure initial gap 2020-03-28 16:40:10 -04:00
hardware-exynos.nix exynos: Add Exynos 7880 2021-01-09 16:24:32 -05:00
hardware-generic.nix hardware: Add generic ARM platforms 2020-03-13 14:56:21 -04:00
hardware-mediatek.nix mediatek: Add MT6755 2020-06-28 23:54:14 -04:00
hardware-qualcomm.nix hardware-qualcomm: Add msm8940 2020-12-28 05:59:46 -05:00
hardware-ram.nix Adds qemu-x86_64 device. 2018-06-17 20:55:34 -04:00
hardware-rockchip.nix system-target: reviews implementation 2019-09-19 15:31:26 -04:00
hardware-screen.nix framebuffer: Removes fb.modes support... 2018-07-05 15:00:24 -04:00
hardware-soc.nix modules: misc minor refactor 2019-09-21 13:58:59 -04:00
hardware.nix hardware: init module with HAL for reboot modes 2020-10-15 22:08:21 -04:00
initrd-base.nix initrd-base: Use hardshutdown 2020-01-10 00:46:11 -05:00
initrd-boot-gui.nix initrd-boot-gui: Drop evtest dependency 2020-11-22 16:48:32 -05:00
initrd-fail.nix boot/error: Rework UI for better reporting 2020-11-13 19:46:44 -05:00
initrd-fbterm.nix initrd-fbterm: Port to new stage-1 init 2020-02-03 16:19:10 -05:00
initrd-firmware.nix initrd-firmware: Init module to add firmware to stage-1 2020-06-01 18:58:59 -04:00
initrd-kernel.nix fix build failure by providing kernel filename to internal NixOS option 2020-12-31 16:21:38 -05:00
initrd-logs.nix initrd: Fix where logging happens for a message 2020-12-27 17:38:29 -05:00
initrd-network.nix initrd-network: Port to a boot/init task 2020-02-03 16:19:10 -05:00
initrd-shell.nix initrd-shell: Fix job control 2021-01-24 23:38:05 -05:00
initrd-ssh.nix initrd-ssh: Reformat option description 2020-04-06 18:32:45 -04:00
initrd-usb.nix initrd-usb: provide modules required for gadgets in initrd 2020-05-25 16:38:54 -04:00
initrd-vendor.nix vendor: Provide an option for the vendor partition 2020-05-24 20:13:07 -04:00
initrd.nix boot/init: Fix shellOnFail 2021-01-27 19:09:07 -05:00
internal.nix modules/internal: Init 2020-03-30 23:49:28 -04:00
luks.nix modules/luks: Init 2020-11-07 18:26:47 -05:00
mobile-device.nix mobile-device: Remove device.info 2020-05-24 20:13:07 -04:00
module-list.nix modules/documentation: Init 2021-01-09 19:23:20 -05:00
nixpkgs.nix overlay: Import mruby 2020-02-03 16:19:10 -05:00
recovery.nix recovery.nix: Provide generic access to the recovery build 2020-12-29 18:21:52 -05:00
rootfs.nix generated-filesystems: overridable options for filesystem generation 2020-05-31 18:54:07 -04:00
shared-rootfs.nix modules: Add shared-rootfs 2020-12-27 17:38:29 -05:00
stage-0.nix stage-0: Disable by default 2020-12-27 17:50:30 -05:00
stage-2-splash.nix stage-2-splash: Init re-purposed module 2020-03-09 19:57:31 -04:00
system-target.nix Fix attribute 'selectBySystem' missing with lib.systems.elaborate 2020-12-24 18:25:13 -05:00
system-types.nix qemu-x86_64: Delete device 2020-12-29 19:22:43 -05:00