I've deposited an updated copy of the spec as sdcard.spec.txt in the
final.materials directory. The diffs follow below. I've also deposited
a copy of the issues file, with my responses inline, in the
final.materials directory.
I'll be drafting an opinion and hope to have a first draft out for
review later today or tomorrow.
-- Garrett
--- 659/inception.materials/sdcard.spec.txt Fri Nov 16 14:57:51 2007
+++ 659/final.materials/sdcard.spec.txt Wed Nov 28 10:47:47 2007
@@ -2,7 +2,7 @@
Functional Specification
Garrett D'Amore (gdamore at sun.com)
-Nov 16, 2007
+Nov 28, 2007
CHAPTER 1: Introduction
@@ -307,10 +307,10 @@
This marks the SD slot online, and attaches nexus devices.
-int sda_slot_offline(sda_slot_t *);
+void sda_slot_offline(sda_slot_t *);
- This detaches the slot from the system. It returns DDI_SUCCESS on
success,
- DDI_FAILURE otherwise.
+ This detaches the slot from the system, and releases any associated
+ resources in the framework.
void sda_cmd_done(sda_cmd_t *cmd, int errno);
@@ -334,7 +334,11 @@
void sda_slot_detect(sda_slot_t *);
- This is called by the nexus driver when a card has been inserted or
removed.
+ This is called by the device driver when a card has been inserted or
removed.
+ The framework will subsequently call the driver's so_getprop()
routine with
+ SDA_PROP_INSERTED to determine whether a card is physically present
in the
+ system or not. (The driver should call this in response to a change
in the
+ SDCD# signal level, for example.)
void sda_slot_err(sda_slot_t *slot, const char *format, ...);
void sda_slot_log(sda_slot_t *slot, const char *format, ...);