Commit Graph
304 Commits
Author SHA1 Message Date
tmakin c34b5ceee1 nx: use a better default dpi
The small ~7" 16:9 displays need smaller, higher res elements,
without making TVs look terrible when docked (without forcing
wm-based dpi changes). Use 214 (~tvdpi) for density and use tvdpi
assets on atv and xhdpi assets on mobile.

Change-Id: I1d5847ef5dbb11a83e403788f4f8d757b0ec55cd
2024-01-25 15:54:02 -05:00
tmakin 015f2f32bc nx: add nvaudio bt sco support
Based on abca config
https://nv-tegra.nvidia.com/r/gitweb?p=tegra/prebuilts-device-nvidia.git;a=blob_plain;f=platform/t210/abca_nvaudio_conf.xml;h=2505492cd06428a2d4cb3c82cbcaf35f61630f71;hb=4e7a0a212dac90c0781f7b74d669bb6bc44cdd28

Change-Id: I5aba9df05d0098a0e488706df5233ac760f55a0f
2024-01-25 15:54:02 -05:00
tmakin b158b0ad5c nx: add mic support to nvaudio conf
Change-Id: I2053c6023ea592c3163af000af326db5d98bed66
2024-01-25 15:54:02 -05:00
tmakin d296289aed nx: add gcc dep
Needed for bootstack compile

Change-Id: I19fcc85031093a6fba9a3c5baf25245f7ee21242
2024-01-25 15:54:02 -05:00
Nolen Johnson f9cfe15b74 nx: firmware: Statically set defconfig
* This variable is only present in common trees on 19.1+.

Change-Id: If0632d9c820d1140c5cf095480decf065f47ffd9
2024-01-25 15:54:02 -05:00
Nolen Johnson 0650d4f2a7 nx: Migrate to using nx kernel DT
Change-Id: Ic528a16fb3ed831cae4df652ac6270de9aab925d
2024-01-25 15:54:02 -05:00
Nolen Johnson 98d85a8b80 nx: firmware: Don't set NX_VENDOR_PATH
* Incorrect, and unused in this makefile.

Change-Id: Id87f4bd2c43c223de150e9b39e023405208f3621
2024-01-25 15:54:02 -05:00
tmakin 04fbabf802 nx: CEC: Add idc to disable CEC rc device
* Inputs are duplicated because the CEC HAL directly processes them while
  the RC device is handled as a standard input device. This disables the
  latter to stop the duplication.

Change-Id: Ifa07683b4f0509e8027630a15af6e0dbd1636452
2024-01-25 15:54:02 -05:00
tmakin 7d8d7f10f8 nx: cec: switch checked prop to cec_disable
This works together with a change to U-Boot to allow kernel and
userspace HDMI-CEC functionality to be disabled manually (or
automatically on vali). Now users who do not care about CEC do not
have to suffer from the CEC volume UI platform bug.

Change-Id: I34a89c78052193c38dc8217841a816615f135fb2
2024-01-25 15:54:02 -05:00
tmakin 4c4e9d36da nx: Override and hide cec on vali
* Again, we do not plan to support vali display hacks for the
  time being. If so, we will add env and do it that way.

* filter-out CEC for vali because common trees assume that unified
  devices will all support CEC or none.

Change-Id: I1df0d895de870a3ebd76825fe278997e83435922
2024-01-25 15:54:02 -05:00
tmakin f5c8a02ed8 nx: redo bcm_firmware targets
For optimal nx wifi/bt performance we want:
- nx dumped bt patchfile for tuning
- mdarcy wifi firmware for p2p support etc.
- mdarcy clm_blob for country mapping
- nx dumped wifi nvram with patched ccode for tuning
(copied to all skus)

Change-Id: I854756c89cf8b367d3f6604183f87e346689737a
2024-01-25 15:54:02 -05:00
tmakin c63f0d1d35 nx: Specify proper board ids for skus
Change-Id: I88fe9f961e53cfb8e669cf89d9864e347d46763c
2024-01-25 15:54:02 -05:00
tmakin 8bb5bf7347 nx: build bootstack for l4t-loader
We are migrating from coreboot to an ATF loader
built into hekate-ipl. This will load sc7 bins etc. along
with ATF (bl31) and U-Boot (bl33), which will chainload
kernel (as is currently the case). This also migrates to new
R2P method/driver as the new loader/ATF will stash a
copy of the bootloader in RAM so we do not have to
load a hekate payload.

Change-Id: I11e4a1810829ab3ac4c8830fd03afd6054e40bad
2024-01-25 15:54:02 -05:00
Billy Laws ef6a02e5f6 nx: Add Wi-Fi reset script
Change-Id: Ica5129d824253b5a2576b68f290555d90dd31116
2024-01-25 15:54:02 -05:00
tmakin f5cb972636 nx: twrp: Fix this target
Change-Id: Ia3652c027a5840139fe8ce4986b93df9c548db42
2024-01-25 15:54:02 -05:00
Billy Laws 5342e76c3a nx: Build joycond
* A daemon providing mappings for joycons and controlling docking.

Change-Id: I0f9832bd2edfce628ef296bec7117e2a7b0370af
2024-01-25 15:54:02 -05:00
Billy Laws 37a52bc997 nx: joycons: Add serdev joycon driver modules
Change-Id: I25659a940d3367162a089749b966d991d8855509
2024-01-25 15:54:02 -05:00
tmakin 18f3ced0a6 nx: joycons: Add auto-pairing scripts
Change-Id: I24d093638eb6b8ff1d4ad218f7cc2f303711766a
2024-01-25 15:54:02 -05:00
Nolen Johnson 2197a26d86 nx: Opt out of GMS comms suite
Change-Id: I7ebd0960ac9adad758ecb5ca1a3660f73447a9d1
2024-01-25 15:54:02 -05:00
Bruno Martins 525c9b6d18 nx: Use minimal GMS if building with it
Only minimal GMS fits.

Change-Id: If9ce99880bcd6949354f80882176aaaded9aad85
2024-01-25 15:54:02 -05:00
tmakin df1c423111 nx: devicesettings: Customize appearance
- new icon
- new banner
- adjust strings etc.
- show in all launcher

Change-Id: I615fdce801a45929e119ac895615d7c83f845871
2024-01-25 15:54:02 -05:00
tmakin 837547077c nx: devicesettings: Update fan profiles
Change-Id: I410c7c38869dfa9ee321f31e54ee02926035f7b2
2024-01-25 15:54:02 -05:00
tmakin 6ff57aca6a nx: devicesettings: Refactor dockservice
Completely redo DockService to:
- Work around NVIDIA hwcomposer issues
- Properly support docking
- Actually use set display preferences

Change-Id: Ic1ea73c113f291bcbe40ecd4ecca3288c88368b4
2024-01-25 15:54:02 -05:00
tmakin c48f464980 nx: devicesettings: Guard display settings for vali
vali does not have display out, and we will not support hw hacks
at the moment. This could change, in which case we will add env
in bootloader and set prop from cmdline for hdmi display.

Change-Id: I769b8ed1d1efcc4e4aae57697c632352c98eb55a
2024-01-25 15:54:02 -05:00
tmakin 8a7d0fb861 nx: devicesettings: Rename performance category
Change-Id: I6a688813e0e862fbe250ece1c5dfcda338808428
2024-01-25 15:54:02 -05:00
tmakin 0bcbb773ae nx: devicesettings: Add OLED panel preference
* Adds selection for Samsung OLED panel modes.

Change-Id: Ifd90e764deb8b481b81c04911e8680a4bb577ac6
2024-01-25 15:54:02 -05:00
de575ce4ac nx: devicesettings: Initial NX specific version
This is a squash of the following loosely kept history:

```
Rename device settings, override the common version, and build it

Change-Id: Ifff795f77ccc299d284eed56b050dfd59c8563a3

Set display resolution, disable HW overlays and unlock screen automatically when docked

devicesettings: Add power profiles support and cleanup scaling

Code cleanup and fix docked display size setting

devicesettings: Add DPI scaling

Always disable HW Overlays

Properly handle multiple external displays rather than hardcoding ID

devicesettings: Add fan profile support

Remove internal display dpi scaling

Add nice devicesettings icon

devicesettings: Fix atv scaling by restoring past resolution on undock

devicesettings: Fix icon colour and reset power profile on unlock

Expose DeviceSettings in leanback launcher

In the future a leanback variant should be made.

DockService: Updates to support ATV display handling

devicesettings: Add HWC wake rotation workaround

Remove HW overlays workaround from DockService and use prop instead

devicesettings: Add fan coefficient setting for perf profiles
Change-Id: Idf524a50ac96e1adc299b109be9319f6cc161cd9

Cleanup DockService

dockservice: update log statements

- Adds log statement on entering HDMI disconnected block
- Changes display index logging from error to information
```

Co-authored-by: Thomas Makin <halorocker89@gmail.com>
Co-authored-by: CTCaer <ctcaer@gmail.com>
Co-authored-by: Billy Laws <blaws05@gmail.com>
Co-authored-by: Aaron Kling <webgeek1234@gmail.com>
Change-Id: I0013b598431c7ec28e95de92343f4aa25b9ee5e5
2024-01-25 15:54:02 -05:00
Aaron Kling d088f2f0c3 nx: Import devicesettings from tegra-common 9c7025b
This is a baseline to modify

Change-Id: Ifaf5309ec0e2a15626571b667d567bc514082cad
2024-01-25 15:54:02 -05:00
tmakin 1148c4d66d nx: initfiles: Deduplicate overridden/nonexistant entries
Change-Id: Ic670d7fe13deafee03d3d48185ce61b9bc745451
2024-01-25 15:54:02 -05:00
tmakin b6aebdc198 nx: bt: set 200ms patchfile settlement time
For some reason bcm fw patchfiles take way too long to load, at
least on nx and some other reference devices. 200ms seems to be
the standard as per reference devices in bcm libbt, and this
rectifies bt issues with bcm bt on nx.

Change-Id: Ifccb1129f6ac2e183490a608fafc1b230d4ece0d
2024-01-25 15:54:02 -05:00
tmakin c8e8bed19d nx: rro: WifiOverlay: Enable associated_network_selection
* Associated net selection should be fine

Change-Id: I26bac99eafe61e8ebe05999c7fcaec333c0ac4df
2024-01-25 15:54:02 -05:00
tmakin 1f7ae2abc5 nx: bootfiles: Compile uscript inline
Change-Id: Ib2cdfa323d35c0e33a190b7b6b8bf720ba29806b
2024-01-25 15:54:02 -05:00
tmakin c985f15d27 nx: Import and build boot-files
* 00-android - Used to configure the hekate boot menu.
* *.bmp - Displayed by hekate in the boot menu.

Change-Id: I01016e166c5dfc4b5f50a4d1a81b8f5f3b47a8ae
2024-01-25 15:54:02 -05:00
Billy Laws 222288f085 nx: Add upstream brcmfmac support
Change-Id: I75d23cac951610f23c3a6f8f7a9e0dea573de243
2024-01-25 15:54:02 -05:00
c9d5a295bd nx: lkm_loader: Remove irrelevant modules/guards
* We don't care about other nv devices.

Co-authored-by: Nolen Johnson <johnsonnolen@gmail.com>
Co-authored-by: Thomas Makin <halorocker89@gmail.com>
Co-authored-by: Billy Laws <blaws05@gmail.com>
Change-Id: Ib2f7711c87df2b25d8497eebdb9e71975566a3ab
2024-01-25 15:54:02 -05:00
tmakin 3d240e46cc nx: hwc: Work around broken hwcomposer impl
NVIDIA's hwcomposer implementation has a number of crippling issues
which we manually work around.

* It completely breaks down when default rotation is anything but 0,
so the DTB has been modified so HWC treats the display as being in
portrait (natural rotation of the panel). SurfaceFlinger now handles
the default orientation settings (ORIENTATION_270) and lock screen
rotation has been enabled previously via overlay.

* It lacks proper display duplication, so pending an OSS docking
handler service, `stb_mode` has been enabled to attempt to replicate
stock Switch behavior. NOTE: at the moment, the 2nd display out shows
as rotated 1080p.

Change-Id: Ic7d46ed0c61c9aea44faf2e91bd102f9d7360fde
2024-01-25 15:54:02 -05:00
Nolen Johnson d9498d6ff0 nx: recovery: Set density to HDPI
* This fixes DPI issues in recovery.

Change-Id: Id0b79882ca6ae480e3e5eeec5ee9c764d783e6b5
2024-01-25 15:54:02 -05:00
Nolen Johnson 6c9de6e896 nx: Statically set USB ConfigFS properties
* These won't vary per model.
* Also alphabetize.

Change-Id: Ie4f57c469ff49fcde35fc63b3f91180320ec2340
2024-01-25 15:54:02 -05:00
Nolen Johnson 594315bd7e nx: Inherit proper shipping API via makefile
* We don't have multiple shipping API's, so set
  the lowest common denominator for blobs/kernel.

Change-Id: I69248774df49c42253ef967df057f467625bb5b1
2024-01-25 15:54:02 -05:00
tmakin 5147f676ae nx: Set secureos prop to default to sw gatekeeper
* We have no TLK to interact with here.

Change-Id: Icae71062246b448f483f63368aa6b2adf4760a42
2024-01-25 15:54:02 -05:00
Nolen Johnson 1c517026bb nx: Disable MSD audio
* We don't support it.

Change-Id: I528c5bb6a8589796e2ece6c6b6e5352c2c3da883
2024-01-25 15:54:01 -05:00
tmakin e18af28bdb nx: media: Tailor codecs
- update policy configuration based on latest aosp
- remove secure decode entries for nx

Change-Id: I1160e9e192059fc6a8428ed9e6161e719d3b0896
2024-01-25 15:01:11 -05:00
Billy Laws ea7bef805a nx: audio: Wire up headset input audio policy
Change-Id: I93739c853430437211f9be39ddd531b7d24fd68f
2024-01-25 14:56:46 -05:00
Nolen Johnson 878f432e06 nx: Remove wifi_scan_config
* Used for blake and nvwifi support, which we
  don't include on nx.

Change-Id: Idce7243ccbe9f380700680c5b2d47d51dfde1237
2024-01-25 14:56:46 -05:00
Nolen Johnson f126e4a849 nx: Inherit 7-inch dalvik-head instead of 10-inch
* We're closer to a 7-inch tablet.

Change-Id: I7961697b565fd415b0c87c49c62bb2fe65374a65
2024-01-25 14:56:46 -05:00
Nolen Johnson c043f8fde0 nx: Inherit loki_foster_e_common instead of loki_e_common
* We don't need `update_js_touch_fw.sh` which is the only
  thing housed in `init.loki_e_common.rc`.

Change-Id: I0025fc0fd7297af276964a73e54195cd30513be6
2024-01-25 14:56:46 -05:00
Nolen Johnson 6c436fd9d7 nx: keylayout: Remove unused pairing keycode
* 116 is the standard gpio keycode on tegra for the power button.
* Foster uses the power button to act as the pairing button.
* NX devices don't use gpio for the power button, instead wiring
  it to the max mfd. So it is safe to remove this line.

Change-Id: Ib9524e76277ec0d9d7c38e717f5486d7123535a1
2024-01-25 14:56:46 -05:00
Nolen Johnson e5c7e57635 nx: Remove button and keyboard backlight values
* We have neither.

Change-Id: I6ae419385f8aed386de1c8fd01831845b0bd55d3
2024-01-25 14:56:46 -05:00
Nolen Johnson c9ad01fab9 nx: Remove lid-wake support
* We have no lid.

Change-Id: I3fef14c8d7472009f391a3981b2d51b0b14e4da8
2024-01-25 14:56:46 -05:00
Nolen Johnson b9b546046b nx: Remove cellular support from overlays
* NX devices don't have cellular.

Change-Id: Ia8838f8afdb81eb2a7a9ca185319acbe6bba36a6
2024-01-25 14:56:46 -05:00