Hi Lucas, On Wed, Aug 10, 2011 at 4:06 PM, Lucas De Marchi <lucas.demarchi@xxxxxxxxxxxxxx> wrote: > static void mp_get_playback_status(struct media_player *mp, uint8_t *status, > uint32_t *elapsed, uint32_t *track_len) > { > @@ -754,6 +823,13 @@ static void mp_set_playback_status(struct control *control, uint8_t status, > return; > > mp->status = status; > + > + if (control->state == AVCTP_STATE_CONNECTED && !control->target && > + (control->registered_events & > + (1 << AVRCP_EVENT_PLAYBACK_STATUS_CHANGED))) { > + avctp_send_event(control, AVRCP_EVENT_PLAYBACK_STATUS_CHANGED, > + &status); > + } Are you sure it would be valid to call mp_set_playback_status when acting as a controller? Im afraid we should not cache anything, or perhaps not even register MediaPlayer interface in case the device is a target. > > /* > @@ -901,6 +977,12 @@ static void mp_set_media_attributes(struct control *control, > "\tTrack number: %u\n\tTrack duration: %u", > mi->title, mi->artist, mi->album, mi->genre, > mi->ntracks, mi->track, mi->track_len); > + > + if (control->state == AVCTP_STATE_CONNECTED && !control->target && > + (control->registered_events & > + (1 << AVRCP_EVENT_TRACK_CHANGED))) { > + avctp_send_event(control, AVRCP_EVENT_TRACK_CHANGED, NULL); > + } Same here. -- Luiz Augusto von Dentz -- To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html