[beagleboard] AM335x Sharing the GPMC_AD with both EMMC and another synchronous 8-bit width device

If you put the eMMC in reset and do not use it, then it will be fine. I do not see how you can use both because in order to used AD0-7, you have to change the pin mux mode to only be that.
.

Gerald

Hi Gerald,

How do you put the eMMC in reset?

It's in the BBB System Reference Manual (section 8.1.2), and on the
schematic.

Pull the eMMC_RSTn line (GPIO1_20) low.

- --
Charles Steinkuehler
charles@steinkuehler.net

Set the RESET enable bit in the eMMC and take the reset line low.

Gerald

RST_n Input Reset: The RST_n signal is used by the host for resetting the device, moving the device to the preidle
state. By default, the RST_n signal is temporarily disabled in the device. The host must set ECSD
register byte 162, bits[1:0] to 0x1 to enable this functionality before the host can use it.

Gerald

That sounds like it's out of the eMMC part datasheet, which is a
secured document from Micron (I've requested access, but it will
likely take a day or two before they forward me a copy). The JEDEC
eMMC specification (84-A441) shows the RST_n_FUNCTION register byte
162 as readable and one-time programmable (setting survives a power
cycle and can only be written once in the life of the part), or am I
missing something?

I would hope/expect that the RST_n_FUNCTION register is being
configured properly (hardware reset enabled) as part of the production
programming of the 'Black, but could you verify this is the case?

I'm hoping I just have to dink an I/O bit in the boot loader and can
avoid having to write an eMMC configuration utility...

...or is there an eMMC configuration utility already available somewhere?

- --
Charles Steinkuehler
charles@steinkuehler.net

Using the cape manager disable command in uENV.txt (you need to look that up on the forum) to ignore the eMMC, you can then activate the eMMC, set that bit, and then activate the reset line from the processor.

Or just bot from uSD, write the command to the eMMC and then set the reset line. This has been tested and does work.

Gerald.