Changes

Jump to navigation Jump to search
2,024 bytes added ,  08:59, 23 July 2021
Line 11: Line 11:  
|-
 
|-
 
| Framebuffer
 
| Framebuffer
| style="background-color:#ffccc9;" | 0%
+
| style="background-color:#ffeec9;" | 25%
 
| High
 
| High
 
| [[IFTU Registers]]
 
| [[IFTU Registers]]
|  
+
| Uses pre-configured framebuffer by [https://github.com/xerpi/vita-baremetal-linux-loader Vita Linux bootloader]
 
|-
 
|-
 
| PMU
 
| PMU
Line 23: Line 23:  
|-
 
|-
 
| GPIO
 
| GPIO
| style="background-color:#ffccc9;" | 0%
+
| style="background-color:#44ff44;" | 100%
| Med
+
| High
 
| [[GPIO Registers]]
 
| [[GPIO Registers]]
| LEDs mostly
+
| LEDs, Syscon, SPI, LCD backlight, etc
 
|-
 
|-
 
| UART
 
| UART
| style="background-color:#ffccc9;" | 0%
+
| style="background-color:#ddffcc;" | 75%
 
| High
 
| High
 
| [[UART Registers]] [[UART Console]]
 
| [[UART Registers]] [[UART Console]]
Line 59: Line 59:  
|-
 
|-
 
| SPI
 
| SPI
| style="background-color:#ffccc9;" | 0%
+
| style="background-color:#ddffcc;" | 75%
 
| Med
 
| Med
 
| [[SPI Registers]]
 
| [[SPI Registers]]
| Syscon, accelerometer, OLED
+
| Syscon, accelerometer, OLED, touchscreen
 +
|-
 +
| Syscon
 +
| style="background-color:#88ffaa;" | 95%
 +
| Med
 +
| [[Syscon]]
 +
| Syscon, accelerometer, touchscreen, buttons, analog sticks, RTC, etc
 +
|-
 +
| Buttons/joysticks
 +
| style="background-color:#44ff44;" | 100%
 +
| Med
 +
| [https://github.com/xerpi/vita-libbaremetal/blob/master/libbaremetal/src/ctrl.c libbaremetal implementation]
 +
|
 +
|-
 +
| Touch
 +
| style="background-color:#44ff44;" | 100%
 +
| Med
 +
| [https://github.com/xerpi/vita-libbaremetal/blob/master/libbaremetal/src/touch.c libbaremetal implementation]
 +
|
 +
|-
 +
| Motion
 +
| style="background-color:#ffccc9;" | 0%
 +
| Low
 +
|
 +
| SPI, some ST chip
 
|-
 
|-
 
| SDIO
 
| SDIO
 
| style="background-color:#ffccc9;" | 0%
 
| style="background-color:#ffccc9;" | 0%
 
| High
 
| High
| [[SceSdif]] [https://www.sdcard.org/developers/overview/host_controller/index.html]
+
| [[SceSdif]] [https://www.sdcard.org/developers/overview/host_controller/index.html Host Controllers spec]
 
| eMMC, GC, Wifi/BT uses this. Standard SD interface.
 
| eMMC, GC, Wifi/BT uses this. Standard SD interface.
 
|-
 
|-
Line 80: Line 104:  
| Med
 
| Med
 
|  
 
|  
| Marvell 88W878S-BKB2, SDIO interface
+
| [[Marvell_88W878S-BKB2|Marvell 88W878S-BKB2]], SDIO interface
 
|-
 
|-
 
| eMMC
 
| eMMC
Line 97: Line 121:  
| style="background-color:#ffccc9;" | 0%
 
| style="background-color:#ffccc9;" | 0%
 
| Low
 
| Low
| [[Memory Card]]
+
| [[Memory Card]] [https://github.com/xerpi/vita-libbaremetal/blob/master/libbaremetal/src/msif.c libbaremetal implementation]
 
| MSIF interface, extra auth
 
| MSIF interface, extra auth
 
|-
 
|-
Line 105: Line 129:  
| [[GPU]]
 
| [[GPU]]
 
| SGX543MP4+
 
| SGX543MP4+
 +
|-
 +
| USB
 +
| style="background-color:#ffccc9;" | 0%
 +
| Med
 +
| [[EHCI]]
 +
| Ethernet, Audio codec, accessories
 +
|-
 +
| UDC
 +
| style="background-color:#ffccc9;" | 0%
 +
| Low
 +
| [[UDC]] [[SceUdcd]]
 +
| Connecting to host PC
 +
|-
 +
| RTC
 +
| style="background-color:#ddffcc;" | 75%
 +
| Med
 +
| [[SceRtc]]
 +
| Time and date. RTC read support implemented. Missing RTC write support.
 
|-
 
|-
 
| PSP
 
| PSP
Line 118: Line 160:  
| Toshiba MeP based
 
| Toshiba MeP based
 
|}
 
|}
 +
 +
= Plan =
 +
 +
Start with the low level interfaces (SPI, I2C, etc). Those are relatively simple. Some might even have standard controller interface (like SDIO). The hardest is probably USB (unless the interface is standard). Then you can implement the devices on top of the interfaces. A lot of the devices seem to use standard chips (WLAN, motion, touch, etc) so we may get them "for free".
 +
 +
For power management, we need sleep/resume first. Would be great is we can use the dynamic clocking features to save battery but that's low priority. Battery fuel gauge is through a standard chip over I2C interface.
 +
 +
Framebuffer might be the hardest. Seems to be a custom interface. If we can find any open source device that uses a similar controller, it would make things a lot easier.
    
[[Category:Linux]]
 
[[Category:Linux]]
 
[[Category:Devices]]
 
[[Category:Devices]]
708

edits

Navigation menu