if (response != NULL && rlen > 0) {
memset(response, 0, rlen);
if (response != NULL && rlen > 0) {
memset(response, 0, rlen);
"lr %0,4\n"
"lr %1,5\n"
: "=d" (return_code), "=d" (return_len)
: "a" (cpcmd_buf), "d" (cmdlen),
"a" (response), "d" (rlen), "m" (mask)
: "cc", "2", "3", "4", "5" );
"lr %0,4\n"
"lr %1,5\n"
: "=d" (return_code), "=d" (return_len)
: "a" (cpcmd_buf), "d" (cmdlen),
"a" (response), "d" (rlen), "m" (mask)
: "cc", "2", "3", "4", "5" );
"lgr %0,4\n"
"lgr %1,5\n"
: "=d" (return_code), "=d" (return_len)
: "a" (cpcmd_buf), "d" (cmdlen),
"a" (response), "d" (rlen), "m" (mask)
: "cc", "2", "3", "4", "5" );
"lgr %0,4\n"
"lgr %1,5\n"
: "=d" (return_code), "=d" (return_len)
: "a" (cpcmd_buf), "d" (cmdlen),
"a" (response), "d" (rlen), "m" (mask)
: "cc", "2", "3", "4", "5" );
}
spin_unlock_irqrestore(&cpcmd_lock, flags);
if (response_code != NULL)
}
spin_unlock_irqrestore(&cpcmd_lock, flags);
if (response_code != NULL)
int cpcmd(const char *cmd, char *response, int rlen, int *response_code)
{
char *lowbuf;
int cpcmd(const char *cmd, char *response, int rlen, int *response_code)
{
char *lowbuf;