[Shield Android TV General] verbosetextfile:
I can confirm that this works acceptable too (WIFI and Bluetooth not tested though) - I first manually flashed the 3.0 ROM in fastboot and then flashed the kernel and my initrd (which boots from my USB stick) (I did not flash my own dtb). I used the proprietary drivers for the USB port (called "tegra21x_xusb_firmware" and "tegra_xusb_firmware" which can be obtained by running extract-nv-bins.sh as described in the tutorial on how to download the sources and compile them) in my initrd and booting always works now. For whatever reason it seems that I can't always use my keyboard after boot even after disconnecting and reconnecting it while reading from the USB drive always works. (I can see it in lsusb and even see the device files in /dev/input, but when pressing a key nothing appears in the device files. I couldn't find any errors in dmesg. This doesn't matter too much to me since I'm planning to mostly use it as server anyway and SSH always worked fine.)

However, there are a few notable configuration options I'd like to share:

USE THOSE OPTIONS WITH CARE AND MAKE SURE YOU UNDERSTAND WHAT THEY DO BEFORE USING THEM. I don't think you could brick your device by setting the wrong options, but be a bit careful nonetheless.

To find out what the options do you can search them in menuconfig by entering '/'.

For Desktop users:

Options to enable:

CONFIG_LEDS_CY8C #enable control for the LED bar
CONFIG_TEGRA_PANEL_CY8C #this is not needed to control the LED bar it seems, but according to the description of the option in menuconfig it could become important at some point

Options to disable:

CONFIG_LESS_GCC_OPT #this compiles the kernel with -O1 instead of -O2 for easier debugging/disassembling. This isn't needed by end-users I guess and could increase the performance a little bit.

Might be useful for inexperienced Server admins (as, for example, me; experienced users will probably already now those options anyway) :

Options to enable:

CONFIG_SWAP #enable the possibility to use a SWAP partition/file (I wouldn't recommend putting this on anything but a spinning disk though)
CONFIG_PANIC_TIMEOUT=30 #reboot after e.g. 30 seconds when a kernel panic occurs - this ensures that you don't have to do manually reboot your server after a panic (which will probably never happen, but in case it does...)
CONFIG_BOOTPARAM_HARDLOCKUP_PANIC #panic if the kernel hangs for >10 seconds without allowing anything else to run ([I]I think[/I] keyboard input is impossible)
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC #panic if the kernel hangs for >20 seconds without allowing anything else to run ([I]I think[/I] that SysRQ-keys could still work)
CONFIG_PROFILING #make profiling possible
CONFIG_SECURITY_APPARMOR #in case you want to use AppArmor
CONFIG_TASKSTATS #needed for iotop
CONFIG_TASK_DELAY_ACCT #needed for iotop
CONFIG_TASK_XACCT #needed for iotop
CONFIG_TASK_IO_ACCOUNTING #needed for iotop

Options to disable:

CONFIG_DEVMEM #[I]might[/I] be interesting for slightly increased security (but most likely it can be left turned on without problems)
CONFIG_DEVKMEM #not necessarily needed when debugging the kernel is not intended

Random Sidenotes:

Don't disable CONFIG_TEGRA_DC_FAKE_PANEL_SUPPORT or enable CONFIG_TEGRA_CORE_EDP_LIMITS at the moment since it produces compilation errors.