.. | .. |
---|
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 | |
---|