CSD logic shared between V1 and V2

This commit is contained in:
soypat
2024-01-14 12:39:10 -03:00
parent 5b6571350d
commit 2f85c8bd04
5 changed files with 311 additions and 108 deletions
+13 -1
View File
@@ -38,9 +38,21 @@ func main() {
if err != nil {
panic(err.Error())
}
cid := sdcard.CID()
pname := cid.ProductName()
csd := sdcard.CSD()
fmt.Printf("cid=%+v\ncsd=%+v\ncsdfmt=\n%s\ndone!", sdcard.CID(), csd, csd.String())
valid := csd.IsValid()
if !valid {
data := csd.RawCopy()
crc := sd.CRC7(data[:15])
always1 := data[15]&(1<<7) != 0
println("CSD not valid got", crc, "want", data[15]&^(1<<7), "always1:", always1)
} else {
println("CSD valid!")
}
fmt.Printf("name=%s\ncsd=\n%s\n", pname, csd.String())
return
var buf [512]byte
for i := 1; i < 11; i += 1 {
time.Sleep(time.Millisecond)