Quantcast
Channel: MobileRead Forums - Kobo Reader
Viewing all articles
Browse latest Browse all 11140

Q: /dev/mmcblk0 media change

$
0
0
I attempted a magic trick: make a fully autonomous memory upgrade mod that allows you to replace the internal SD card while the reader is running. So instead of WinDiskImager PartitionEditor Resizer the Kobo would do it all for you, pop the old card out, pop the new card in, make some magic happen in betwixt, and done.

I got passing far. The data that needs to be transferred is 512MiB at most (much less in practice) and the device has 512MiB of RAM. So in theory, you should be able to read the 512MiB into RAM, pop the old card out, pop the new card in, write the 512MiB back, fix the partitions, reboot and there you are.

However, there's a snag. The Kobo refuses to acknowledge that the internal card was replaced while the system was running. The result is a load of read errors:

Code:

Buffer I/O error on device mmcblk0, logical block 190
mmcblk0: retrying using single block read
mmcblk0: error -110 sending status comand
mmcblk0: error -110 sending read/write command, response 0x0, card status 0x0
end_request: I/O error, dev mmcblk0, sector 0
mmcblk0: error -110 sending status comand
mmcblk0: error -110 sending read/write command, response 0x0, card status 0x0
end_request: I/O error, dev mmcblk0, sector 1

Only way it accepts the card is a power-off which loses RAM so the magic trick is kaputt.

So, a question for developers, Linux Gurus, whatever: is there some way to make the internal card switch work?

What I attempted so far:

- make sure the internal card is entirely umounted (everything on tmpfs)
- set /sys/module/mmc_core/parameters/removable to 1 or Y
- go into standby and back
- mmc-utils, sdtool, eject

There don't seem to be the usual facilities (rescan scsi whatnots).

Code: https://github.com/frostschutz/Kobo/...bin/magic_init

Viewing all articles
Browse latest Browse all 11140

Trending Articles