1
0
Fork 0
forked from len0rd/rockbox
foxbox/firmware/drivers
Dana Conrad 253eb79db3 erosqnative: hw4 support
Support hw4 units with AXP2101 PMU

Bootloader successfully compiles and loads onto device.
The LCD appears to be identical to hw3 units.
Scroll wheel and buttons work
Audio output works, including volume.
HP/LO detect works
Rockbox build is generic
GPIO gating logic seems to be working as intended now.

 - Added new GPIO definitions - some significant overlaps with pins
    from previous hardware revisions...
 - Added some GPIO definitions for older players we didn't know about
 - Add register definitions for AXP2101 from datasheet
    (these are very different from AXP192!)
 - Add AXP2101 regulator definitions, need to support multiple step
    sizes per regulator.
 - Verify AXP2101 voltage set multi-range logic
 - Verify AXP2101 voltage get multi-range logic
 - Make AXP2101 its own driver
 - AXP2101 driver should be "minimally viable", though I think
    there is some extra functionality that could be implemented.
 - Disabling the coulomb counter stuff - we could maybe make
   the E-Gauge work for the same purpose, but it only appears to
   be used on the debug screen at the moment so it doesn't seem
   like it's worth the effort.
 - Found new button GPIOs
 - Found error in my GPIO setting logic, blue light works now!
 - Set LDO/DCDC output voltages to OF's settings, as far as
   I can tell.
 - Determined we probably want TCS1421_CFG1:0 to be 0x00,
   for UFP behavior
 - Tested this rb build with both old and new bootloaders on hw1.5,
   hw2, hw4 in as many configurations as I can think of, works across
   the board.
 - Bootloader can install itself on hw4, so nand chip isn't novel
 - Uninstallation file can be made by patcher script, works on hw4
 - Installation file can be made by patcher script, works on hw4
 - Added HW4 to rbutil, manual

Change-Id: I5b75782273e81c2c6f2b9c79501c8b7cbf88391f
2024-11-22 17:01:39 -05:00
..
audio erosqhosted: Support HW volume control on rev2+ hardware 2024-11-01 14:12:31 -04:00
libertas Sansa Connect: Initial libertas WiFi driver port 2021-07-04 07:41:44 +00:00
rtc pdf50606: Fix questionable code that GCC9 complains about 2024-10-11 22:56:44 -04:00
tuner rda5802: document some registers 2024-10-27 09:10:15 -04:00
adc-as3514.c
ata-common.c ata: Prefer using "virtual" sector size where possible 2024-11-15 07:24:08 -05:00
ata.c ATA: Add some more logf debugging 2024-11-12 08:11:18 -05:00
axp-2101.c erosqnative: hw4 support 2024-11-22 17:01:39 -05:00
axp-pmu.c erosqnative: hw4 support 2024-11-22 17:01:39 -05:00
button.c clean up button.c optimize !filter_first_keypress 2023-01-02 11:04:47 -05:00
cw2015.c New port: Shanling Q1 native 2021-07-13 22:01:33 +01:00
eeprom_24cxx.c
fat.c filestr_cache: Some more 64-bit sector_t fixes 2024-11-11 10:38:58 -05:00
ft6x06.c Shanling Q1: enable multi-touch reporting 2021-11-24 18:49:03 -05:00
generic_i2c.c Sansa Connect: Use deviceid in USB Serial Number 2021-07-10 08:56:32 +02:00
i2c-async.c Add asynchronous I2C bus API 2021-03-23 15:42:54 +00:00
isp1362.c
isp1583.c usb: introduce new control request API 2021-10-16 15:58:43 -04:00
lcd-1bit-vert.c lcd: Fix bug in grayscale clear_display() implementation 2022-10-12 07:58:57 -04:00
lcd-2bit-horz.c lcd: Fix bug in grayscale clear_display() implementation 2022-10-12 07:58:57 -04:00
lcd-2bit-vert.c lcd: Fix bug in grayscale clear_display() implementation 2022-10-12 07:58:57 -04:00
lcd-2bit-vi.c lcd: Fix bug in grayscale clear_display() implementation 2022-10-12 07:58:57 -04:00
lcd-16bit-common.c Sansa e200v2: bootloader: fit size 2024-04-01 11:02:04 -04:00
lcd-16bit-vert.c Sansa e200v2: bootloader: fit size 2024-04-01 11:02:04 -04:00
lcd-16bit.c Sansa e200v2: bootloader: fit size 2024-04-01 11:02:04 -04:00
lcd-24bit.c Sansa e200v2: bootloader: fit size 2024-04-01 11:02:04 -04:00
lcd-bitmap-common.c [Fix Red] 957920e9 lcd-bitmap-common 16-bit devices 2024-04-02 19:43:58 -04:00
lcd-color-common.c Sansa e200v2: bootloader: fit size 2024-04-01 11:02:04 -04:00
lcd-memframe.c Revert "Remove YUV blitting functions and LCD modes" 2022-10-13 11:08:06 -04:00
lcd-remote-1bit-v.c
lcd-remote-2bit-vi.c
lcd-scroll.c Fix red fbc8b2156f 2024-08-28 21:26:06 -04:00
led.c
m5636.c
m66591.c usb: introduce new control request API 2021-10-16 15:58:43 -04:00
nand_id.c
pca9555.c
pcf50605.c
pcf50606.c
pcf50635.c
qt1106.c
ramdisk.c storage: Make ramdisk use the global SECTOR_SIZE definition 2024-11-04 21:10:51 -05:00
rds.c rds: make newly added function static 2022-03-16 11:54:26 -04:00
sd.c storage: 64-bit sector offsets 2024-08-12 14:23:44 -04:00
serial.c
sw_i2c.c
synaptics-mep.c misc: Fix some compile warnings when logf is enabled 2024-11-12 08:11:18 -05:00
touchpad.c
touchscreen.c
tsc200x.c
tsc2100.c
usb-designware.c usb dwc2: Fix a potential garbage string print in an error path. 2022-10-10 08:24:33 -04:00