Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linux-davinci
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
linux
linux-davinci
Commits
edea52f4
Commit
edea52f4
authored
Feb 06, 2006
by
Tony Lindgren
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ARM: OMAP: Update MMC for response types
Quick fix to make drivers compile and work again. Needs to be verified.
parent
eba8b594
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
16 additions
and
31 deletions
+16
-31
drivers/mmc/omap.c
drivers/mmc/omap.c
+16
-31
No files found.
drivers/mmc/omap.c
View file @
edea52f4
...
...
@@ -184,25 +184,16 @@ mmc_omap_start_command(struct mmc_omap_host *host, struct mmc_command *cmd)
host
->
hw_bus_mode
=
host
->
bus_mode
;
}
/* Protocol layer does not provide response type,
* but our hardware needs to know exact type, not just size!
*/
switch
(
cmd
->
flags
&
MMC_RSP_MASK
)
{
case
MMC_RSP_NONE
:
/* resp 0 */
break
;
case
MMC_RSP_SHORT
:
/* resp 1, resp 1b */
/* OR resp 3!! (assume this if bus is set opendrain) */
if
(
!
(
cmd
->
flags
&
MMC_RSP_PRESENT
))
resptype
=
0
;
/* Resp 0 */
if
(
cmd
->
flags
&
MMC_RSP_136
)
resptype
=
2
;
/* Resp 2 */
else
{
if
(
host
->
bus_mode
==
MMC_BUSMODE_OPENDRAIN
)
resptype
=
3
;
resptype
=
3
;
/* Resp 3 */
else
resptype
=
1
;
break
;
case
MMC_RSP_LONG
:
/* resp 2 */
resptype
=
2
;
break
;
resptype
=
1
;
/* Resp 1, Resp 1b */
}
/* Protocol layer does not provide command type, but our hardware
...
...
@@ -343,19 +334,8 @@ mmc_omap_cmd_done(struct mmc_omap_host *host, struct mmc_command *cmd)
{
host
->
cmd
=
NULL
;
switch
(
cmd
->
flags
&
MMC_RSP_MASK
)
{
case
MMC_RSP_NONE
:
/* resp 0 */
break
;
case
MMC_RSP_SHORT
:
/* response types 1, 1b, 3, 4, 5, 6 */
cmd
->
resp
[
0
]
=
OMAP_MMC_READ
(
host
->
base
,
RSP6
)
|
(
OMAP_MMC_READ
(
host
->
base
,
RSP7
)
<<
16
);
DBG
(
"MMC%d: Response %08x
\n
"
,
host
->
id
,
cmd
->
resp
[
0
]);
break
;
case
MMC_RSP_LONG
:
/* response type 2 */
if
(
cmd
->
flags
&
MMC_RSP_136
)
{
/* Response type 2 */
cmd
->
resp
[
3
]
=
OMAP_MMC_READ
(
host
->
base
,
RSP0
)
|
(
OMAP_MMC_READ
(
host
->
base
,
RSP1
)
<<
16
);
...
...
@@ -371,7 +351,12 @@ mmc_omap_cmd_done(struct mmc_omap_host *host, struct mmc_command *cmd)
DBG
(
"MMC%d: Response %08x %08x %08x %08x
\n
"
,
host
->
id
,
cmd
->
resp
[
0
],
cmd
->
resp
[
1
],
cmd
->
resp
[
2
],
cmd
->
resp
[
3
]);
break
;
}
else
{
/* Response types 1, 1b, 3, 4, 5, 6 */
cmd
->
resp
[
0
]
=
OMAP_MMC_READ
(
host
->
base
,
RSP6
)
|
(
OMAP_MMC_READ
(
host
->
base
,
RSP7
)
<<
16
);
DBG
(
"MMC%d: Response %08x
\n
"
,
host
->
id
,
cmd
->
resp
[
0
]);
}
if
(
host
->
data
==
NULL
||
cmd
->
error
!=
MMC_ERR_NONE
)
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment