Go to file
Adrien Destugues 5ec64c5cdd sd/mmc: Cleanup and improve reliability
Store the bus cookie in the mmc_disk driver and pass it to the bus
manager when executing commands. This avoids calling into the device
manager at each read and write operation. The code to get the cookie
from mmc_disk isn't so nice since it needs to access the grandparent
device (the mmc bus root), it would be simpler if this cookie would be
available directly from mmc bus devices.

We can get card removal and card insertion interrupt at the same time
due to insufficient hardware debouncing (the SDHCI spec says we
shouldn't, but it happens on Ricoh controllers. Can't blame them, they
don't advertise themselves as compliant with the spec). So, check the
card status from the interrupt handler and ignore the incorrect
interrupts.

Fix unreliable card initialization: power must be turned on before
starting up the SD clock. Remove a now unneeded delay that was added in
an attempt to avoid initial instability.

Change-Id: Ibd8d051da1a1d859f3924ee535f4a05d9b6398d4
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3639
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2021-01-20 19:02:38 +00:00
3rdparty Revert "IK: align BTextView text rect/fix alignment" 2020-08-19 03:38:41 +00:00
build jam/ArchitectureRules: Bump SDIMAGE_BEGIN to 2KiB 2021-01-12 15:03:40 -06:00
data Update translations from Pootle 2021-01-16 08:51:22 +00:00
docs FindDirectory docs: clarify where the functions are located 2021-01-13 12:57:00 +01:00
headers sd/mmc: Cleanup and improve reliability 2021-01-20 19:02:38 +00:00
src sd/mmc: Cleanup and improve reliability 2021-01-20 19:02:38 +00:00
.editorconfig editorconfig: Add new config file around our unique style 2017-09-26 14:22:32 -05:00
.gitignore .gitignore: Ignore .DS_Store (Mac OS X directory attribute files). 2016-06-18 18:25:40 -04:00
.gitreview gerrit: Add .gitreview config 2018-01-04 00:04:02 -06:00
configure configure & build: Rework legacy GCC detection to parse versions outside of Jam. 2020-10-09 01:20:02 +00:00
Jamfile Revert "Add gmp and mpfr to the regular image package set." 2020-06-03 04:11:40 +00:00
Jamrules Revert "Jamrules: Include the UserBuildConfig before processing repositories." 2019-09-15 17:33:36 +02:00
lgtm.yml Initial version of lgtm.com configuration file. 2019-09-19 04:03:09 +00:00
License.md LICENSE: Rename to License.md, and remove all licenses but the MIT. 2016-07-29 17:36:17 -04:00
ReadMe.Compiling.md Updated Readme.Compiling.md according to hrev54611 2020-12-11 11:45:12 +00:00
ReadMe.md ReadMe: Update links. 2020-02-17 14:43:59 -05:00

Haiku

Homepage | Mailing Lists | IRC Channels | Issue Tracker | API docs

Haiku is an open-source operating system that specifically targets personal computing. Inspired by the BeOS, Haiku is fast, simple to use, easy to learn and yet very powerful.

Goals

  • Sensible defaults with minimal configuration required.
  • Clean, clear, concise code.
  • Unified desktop environment.

Trying Haiku

Haiku provides pre-built nightly images and release images. Haiku is compatible with a large variety of hardware, but in case you don't want to "take the plunge" and install Haiku on bare metal, you can install it on a virtual machine (VM) instead. If you've never used a VM before, you can follow one of the "Emulating Haiku" guides.

Compiling Haiku

See ReadMe.Compiling.

Contributing

Haiku is a meritocratic open source project with a large variety of tasks. Even if you can't write code, you can still help! Haiku needs designers, (technical) writers, translators, testers... Get involved and help out!

Contributing code

If you're submitting a patch to us, please make sure you're following the patch submitting guidelines.

If you're having trouble finding something in the source tree, you can use one of our web-based source code browsers:

Contributing documentation

The main piece of documentation that still needs work are the API docs (found in the tree at docs/user). Just find an undocumented class, write documentation for it, and submit a patch.

Contributing translations

See wiki:i18n.

Contributing software ports

See HaikuPorts.

Contributing to our infrastructure

See Infrastructure.