Hardware/Drive Interface: Difference between revisions
full support for the dvd drive in mainline |
m →Software compatibility: Rephrase to reflect current status of rvl-di |
||
| (7 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
The [[Wii]] | The [[GameCube]] and [[Wii]] contain a DVD optical disc drive. Their intended purpose is to read the proprietary [[NROM]] format, but this is not all they can be used for. This drive is interfaced with via the DI (Drive Interface) in the [[GameCube Hardware/Flipper|Flipper]] and [[Wii Hardware/Hollywood|Hollywood]] SoCs. | ||
== | == Non-NROM media support == | ||
In early model Wiis (pre-2008), this drive is capable of reading burned DVD-R or pressed DVD-ROM discs, through special "DVD video" commands, blocked from being sent to the drive via an <code>HW_COMPAT</code> bit normally, but they can be enabled by setting it. Later drive models removed this functionality, regardless of whether commands are permitted to be sent according to the SoC. All GameCube drives can have their firmware patched via software to support reading DVD-R/DVD-ROM. | |||
== Software compatibility == | |||
[[Wii-Linux]] supports interfacing with the DVD drive via the <code>rvl-di</code> driver (file path: <code>drivers/block/rvl-di.c</code>). Before the current driver was ported from [[NPLL]], <code>rvl-di</code> became increasingly broken throughout kernel releases: | |||
* 3.15.10 (stable-v3.x): Full support | * 3.15.10 (stable-v3.x): Full support | ||
| Line 8: | Line 11: | ||
* 4.4.302-cip80: Can't read any drive response data (even metadata). | * 4.4.302-cip80: Can't read any drive response data (even metadata). | ||
* 4.19 (possibly older?): can't even send basic commands to the drive, like a drive reset. | * 4.19 (possibly older?): can't even send basic commands to the drive, like a drive reset. | ||
* | * Mainline: Full support (via new driver, ported from [[NPLL]]) | ||
[[NetBSD]] has a functional driver for the Wii's DVD drive. | [[NetBSD]] has a functional driver for the Wii's DVD drive. | ||
[[Category:Wii Hardware]] | |||
Latest revision as of 19:36, 17 October 2026
The GameCube and Wii contain a DVD optical disc drive. Their intended purpose is to read the proprietary NROM format, but this is not all they can be used for. This drive is interfaced with via the DI (Drive Interface) in the Flipper and Hollywood SoCs.
Non-NROM media support
[edit | edit source]In early model Wiis (pre-2008), this drive is capable of reading burned DVD-R or pressed DVD-ROM discs, through special "DVD video" commands, blocked from being sent to the drive via an HW_COMPAT bit normally, but they can be enabled by setting it. Later drive models removed this functionality, regardless of whether commands are permitted to be sent according to the SoC. All GameCube drives can have their firmware patched via software to support reading DVD-R/DVD-ROM.
Software compatibility
[edit | edit source]Wii-Linux supports interfacing with the DVD drive via the rvl-di driver (file path: drivers/block/rvl-di.c). Before the current driver was ported from NPLL, rvl-di became increasingly broken throughout kernel releases:
- 3.15.10 (stable-v3.x): Full support
- 4.3.6 (experimental-v4.x): Hang trying to read data from the disc.
- 4.4.302-cip80: Can't read any drive response data (even metadata).
- 4.19 (possibly older?): can't even send basic commands to the drive, like a drive reset.
- Mainline: Full support (via new driver, ported from NPLL)
NetBSD has a functional driver for the Wii's DVD drive.