| .. | .. |
|---|
| 132 | 132 | if (!adev || !adev->active) |
|---|
| 133 | 133 | return 0; |
|---|
| 134 | 134 | |
|---|
| 135 | | - if (!pdev->ops || !pdev->ops->enter) |
|---|
| 135 | + if (!pdev->ops || !pdev->ops->exit) |
|---|
| 136 | 136 | return -EOPNOTSUPP; |
|---|
| 137 | 137 | |
|---|
| 138 | 138 | /* Moving to USB Safe State */ |
|---|
| .. | .. |
|---|
| 152 | 152 | * |
|---|
| 153 | 153 | * Notifies the partner of @adev about Attention command. |
|---|
| 154 | 154 | */ |
|---|
| 155 | | -void typec_altmode_attention(struct typec_altmode *adev, u32 vdo) |
|---|
| 155 | +int typec_altmode_attention(struct typec_altmode *adev, u32 vdo) |
|---|
| 156 | 156 | { |
|---|
| 157 | | - struct typec_altmode *pdev = &to_altmode(adev)->partner->adev; |
|---|
| 157 | + struct altmode *partner = to_altmode(adev)->partner; |
|---|
| 158 | + struct typec_altmode *pdev; |
|---|
| 159 | + |
|---|
| 160 | + if (!partner) |
|---|
| 161 | + return -ENODEV; |
|---|
| 162 | + |
|---|
| 163 | + pdev = &partner->adev; |
|---|
| 158 | 164 | |
|---|
| 159 | 165 | if (pdev->ops && pdev->ops->attention) |
|---|
| 160 | 166 | pdev->ops->attention(pdev, vdo); |
|---|
| 167 | + |
|---|
| 168 | + return 0; |
|---|
| 161 | 169 | } |
|---|
| 162 | 170 | EXPORT_SYMBOL_GPL(typec_altmode_attention); |
|---|
| 163 | 171 | |
|---|