[Pixel C Q&A, Help & Troubleshooting] brando56894:
Theoretically it should be pretty easy to load up ChromeOS on it since everything is already setup for it. Cheep said that the bootloader already expects a ChromeOS payload, which is provided, which then provides the Android payload within it. For ChromeOS to work we need to rewrite the partition table, since ChromeOS doesn't use the same partition layout that Android uses. Also as mentioned above, it would pretty much make your device unbrickable.

Here's the ChromeOS Partition Layout

I made a spreadsheet for all the partitions on the Pixel C

here

Here's the raw data:

KERN-A -> /dev/block/mmcblk0p1
KERN-B -> /dev/block/mmcblk0p2
recovery -> /dev/block/mmcblk0p3
APP -> /dev/block/mmcblk0p4 (mounted as /system)
VNR -> /dev/block/mmcblk0p5 (mounted as /vendor)
CAC -> /dev/block/mmcblk0p6 (mounted as /cache)
UDA -> /dev/block/mmcblk0p7 (mounted as /data)
MD1 -> /dev/block/mmcblk0p8
LNX -> /dev/block/mmcblk0p9
MSC -> /dev/block/mmcblk0p10
PST -> /dev/block/mmcblk0p11

mmcblk0boot0 -> /dev/block/mmcblk0boot0
mmcblk0boot1 -> /dev/block/mmcblk0boot1

mmcblk0rpmb -> /dev/block/mmcblk0rpmb

running fastboot getvar all shows even more partitions, including a chromeos partition, which it looks like is actually /data I've been trying to get some of these partitions to mount in Android to see what they actually contain but so far I've been unsuccessful :(

partition-type:boot: ext4
partition-type:kernel-a: ext4
partition-type:kernel-b: ext4
partition-type:recovery: ext4
partition-type:kernel: ext4
partition-type:system: ext4
partition-type:system-a: ext4
partition-type:vendor: ext4
partition-type:vendor-a: ext4
partition-type:cache: ext4
partition-type:data: ext4
partition-type:userdata: ext4
partition-type:metadata: ext4
partition-type:lnx: ext4
partition-type:misc: ext4
partition-type:persistent: ext4
partition-type:system-b: ext4
partition-type:vendor-b: ext4

partition-size:boot: 0x2000000
partition-size:kernel-a: 0x2000000
partition-size:kernel-b: 0x2000000
partition-size:recovery: 0x2000000
partition-size:kernel: 0x2000000
partition-size:system: 0xe0000000
partition-size:system-a: 0xe0000000
partition-size:vendor: 0x13000000
partition-size:vendor-a: 0x13000000
partition-size:cache: 0x19000000
partition-size:data: 0xd76b00000
partition-size:userdata: 0xd76b00000
partition-size:metadata: 0x4000000
partition-size:lnx: 0x2000000
partition-size:misc: 0x400000
partition-size:persistent: 0x80000
partition-size:chromeos: 0xe8f800000
partition-size:mbr: 0x200
partition-size:gpt: 0x4200
partition-size:RO_SECTION: 0x3f0000
partition-size:RO_VPD: 0x10000
partition-size:RW_SECTION_A: 0x580000
partition-size:RW_SECTION_B: 0x580000
partition-size:bootloader: 0x1000000

Edit: According to this wiki page about the developer switch, it just enables or disables the execution of unsigned code, which we have already achieved via software methods (aka rooting). Once dev mode is activated you see the "scary warning screen" and have to wait 30 seconds, which we all see every time we boot up our Pixel. The only difference is that there is no key combo to reset the device to a locked state, probably because it runs Android instead of ChromeOS. Since we can already boot unsigned code and flash various partitions, including the bootloader itself, we shouldn't need to flip the switch. The only question I have is how to we rewrite the partition table?

Edit 2: We may be getting our terms confused, while doing some research I came upon the Chromebook Pixel 2015 wiki where they make a distinction between a sofware developer mode switch which allows unsigned code/root shell access/etc.. and Firmware Write Protect which when removed allows writing to the BIOS/firmware. When I was loading Arch Linux on to my HP Pavilion I had to do both of these. First I had to gain basic shell access in ChromeOS by using the hotkeys Ctrl+Alt+T which would open up a terminal in Chrome, then from there you issued a few commands to enable developer mode, which would then reboot and wipe your data. Upon signing in again it would resync your files and you had full root access to the Linux system instead of being stuck in a jail of sorts. I had to completely disassemble my Chromebook to remove the firmware write protect screw so I could flash a BIOS that accept other payloads besides ChromeOS. Newer Chromebooks don't need this because all Chromebooks since either 2014 or 2015 now come with SeaBIOS which allows you to boot ChromeOS and a normal Linux distro. Since the bootloader is already setup to load ChromeOS, we shouldn't need to change much, possibly only disable the second stage payload.

Now the question is what functionality does the camera flex cable switch provide? From the looks of it, it's probably the firmware write protect switch and not the developer mode switch since the latter seems to be a software switch.....which we have already flipped long ago.