[Bug 155894] [at91] [patch] Enable at91 booting from SDHC (high capacity) cards

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Sat Jul 26 04:16:49 UTC 2014


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=155894

--- Comment #1 from commit-hook at freebsd.org ---
A commit references this bug:

Author: ian
Date: Sat Jul 26 04:16:05 UTC 2014
New revision: 269113
URL: http://svnweb.freebsd.org/changeset/base/269113

Log:
  Enable at91 systems to boot from high capacity SD cards.

  This also fixes a few minor violations of the SD protocol, such as running
  the bus at high speed during the card identification sequence.

  The sdcard_init() routine now probes for SDHC cards so that later read
  requests can make needed adjustments between block and byte offsets based
  on card type.

  There is a new MCI_readblocks() function that takes block number and block
  count parameters instead of byte-offset values.  Using this routine, boot
  loader code can load a kernel from any location on an SDHC or standard SD.

  The old MCI_read() interface remains unchanged so that existing customized
  boot loader code will still keep working without changes.  Using this
  routine, boot loaders can load a kernel from anywhere in the first 4GB of
  an SDHC card (or of course any location on a standard SD card).

  A new sdcard_use4wire() routine allows boot loaders to request 4-bit
  transfers; it should be called after sdcard_init().  The sdcard_init()
  routine no longer assumes the hardware is 4-wire capable and by default
  sets things up for 1-bit transfers.  (4-wire mode is unreliable on
  at91rm9200, works on later SoCs.)

  PR:        155894
  Submitted by:    me.  years ago.

Changes:
  head/sys/boot/arm/at91/libat91/mci_device.h
  head/sys/boot/arm/at91/libat91/sd-card.c
  head/sys/boot/arm/at91/libat91/sd-card.h

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-arm mailing list