vbox_mode_valid always returns MODE_OK, which is also the default if no
mode_valid callback is defined.
vbox_best_single_encoder chains to drm_encoder_find, the drm-core will
call drm_encoder_find itself if there is no best_encoder call back.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Extend our planes atomic_check callbacks to be more thorough by calling
the drm_atomic_helper_check_plane_state helper.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Replace vbox_crtc_commit and vbox_crtc_disable with
vbox_crtc_atomic_[en|dis]able which are the preferred callbacks for
these for atomic drivers.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Atomic modesetting does not use the traditional dpms call backs, instead
we should check crtc_state->active.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Restore page-flip support now that the atomic conversion is complete.
Since the mode parameter to vbox_crtc_set_base_and_mode() now never
is NULL call drm_atomic_crtc_needs_modeset() to check if we need to
check for input-mapping changes, to avoid doing unnecesarry work on
a flip. And hookup the drm_atomic_helper_page_flip helper to implement
the page_flip callback.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Now that the state objects are wired up, we can:
1) Move to the final atomic handlers
2) Wire up atomic set_config helper
3) Switch to drm_mode_config_helper_suspend/resume for suspend/resume
4) Enable atomic modesetting ioctl
This is all done in one commit because doing this piecemeal leads to
an intermediate state which triggers WARN_ONs in the atomic code because
e.g. plane->fb is still being set.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Once we are fully atomic plane->fb will always be NULL and we also
should not access things like crtc->enabled and crt->[hw]mode.
Now that we've wired up the state object handlers, we always have a
plane_state and crtc_state so change the code referencing plane->fb and
crtc->* to use the data from the plane_state and crt_state instead.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Wire up state object handlers for the crtc-s and the planes, call
drm_mode_config_reset() after creating all the crtc-s and encoders and
remove the legacy drm_helper_disable_unused_functions() call.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Use drm_plane_helpers for the primary plane and replace our custom
mode_set callback with drm_helper_crtc_mode_set.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
In preparation for atomic conversion, let's use the transitional atomic
helpers drm_plane_helper_update/disable.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
When setting a mode we not only pass the mode to the hypervisor,
but also information on how to map / translate input coordinates
for the emulated USB tablet. This input-mapping may change when
the mode on *another* crtc changes.
This means that sometimes we must do a modeset on other crtc-s then
the one being changed to update the input-mapping. Including crtc-s
which may be disabled inside the guest (shown as a black window
on the host unless closed by the user).
With atomic modesetting the mode-info of disabled crtcs gets zeroed
yet we need it when updating the input-map to avoid resizing the
window as a side effect of a mode_set on another crtc.
This commit adds caching of the mode info into out private vbox_crtc
struct so that we always have the info at hand when we need it.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drm_mode_page_flip_ioctl() cannot deal with the in between phase of
the transitioning to atomic modeset support. Once we start using
drm_helper_crtc_mode_set(), we start setting plane->state on the primary
plane. But we are not fully atomic yet so then set both plane-state->fb
and plane->fb.
If both plane-state->fb and plane->fb are set drm_mode_page_flip_ioctl()
gets confused and stops calling drm_framebuffer_get() on the new fb while
still calling drm_framebuffer_put() on the old fb.
The current page_flip implementation expects drm_mode_page_flip_ioctl()
to take care of both and once we switch to drm_atomic_helper_page_flip()
that will expect neither to be done, taking care of both itself.
So for the transition we need to remove page_flip support and then after
the transition is complete and we set DRIVER_ATOMIC in our driver_features,
we can start using drm_atomic_helper_page_flip().
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
All the encoder_helper_funcs are optional, and even setting the
drm_encoder_helper_funcs vtable itself is optional and may be left out
when not using any of the helper funcs, so lets drop all of this.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This cleanups 2 things:
1) The first time we loop over the crtc-s, to compare framebuffers, fb1 may
get set to NULL by the fb1 = CRTC_FB(crtci); statement and then we call
to_vbox_framebuffer() on it. The result of this call is only used for
an address comparison, so we don't end up dereferencing the bad pointer,
but still it is better to not do this.
2) Since we already figure out the first crtc with a fb in the first loop
and store that in fb1, there is no need to loop over the crtc-s again just
to find the first crtc with a fb again.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
p80211metadef.h and p80211metastruct.h both have comments stating they
are autogenerated and should not be edited. However, neither is
generated during build and both have had numerous manual edits since
the driver has been in staging.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The reformatting of case blocks has shortened some lines such that
previously split lines can be rejoined without exceeding 80
characters. Rejoined those lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
For switch statements with case blocks make the format consistent by
applying K&R formatting, a space before the opening brace, single
indentation of contained code, break inside the block and closing
brace aligned with case.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Combine previously split lines for an assignment; now fits in 80
characters as the name of the macro being assigned was shortened.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_p2_p2MAC_p2CurrentTxRate in p80211metadef.h to
DIDMIB_P2_MAC_CURRENTTXRATE to fix "Avoid CamelCase" message from
checkpatch and conform to the coding style guidelines. Also shorten
name by removing repeated use of "P2" to ease readability and reduce
long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_p2_p2MAC in p80211metadef.h to DIDMIB_P2_MAC to fix
"Avoid CamelCase" message from checkpatch and conform to the coding
style guidelines. Also shorten name by removing repeated use of "P2"
to ease readability and reduce long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_p2_p2NIC_p2PRISupRange in p80211metadef.h to
DIDMIB_P2_NIC_PRISUPRANGE to fix "Avoid CamelCase" message from
checkpatch and conform to the coding style guidelines. Also shorten
name by removing repeated use of "P2" to ease readability and reduce
long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_p2_p2Static_p2CnfPortType in p80211metadef.h to
DIDMIB_P2_STATIC_CNFPORTTYPE to fix "Avoid CamelCase" message from
checkpatch and conform to the coding style guidelines. Also shorten
name by removing repeated use of "P2" to ease readability and reduce
long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_p2_p2Static in p80211metadef.h to DIDMIB_P2_STATIC to
fix "Avoid CamelCase" message from checkpatch and conform to the
coding style guidelines. Also shorten name by removing repeated use of
"P2" to ease readability and reduce long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_cat_p2 in p80211metadef.h to DIDMIB_CAT_P2 to fix "Avoid
CamelCase" message from checkpatch and conform to the coding style
guidelines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_lnx_lnxConfigTable_lnxRSNAIE in p80211metadef.h to
DIDMIB_LNX_CONFIGTABLE_RSNAIE to fix "Avoid CamelCase" message from
checkpatch and conform to the coding style guidelines. Also shorten
name by removing repeated use of "LNX" to ease readability and reduce
long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_lnx_lnxConfigTable in p80211metadef.h to
DIDMIB_LNX_CONFIGTABLE to fix "Avoid CamelCase" message from
checkpatch and conform to the coding style guidelines. Also shorten
name by removing repeated use of "LNX" to ease readability and
reduce long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_cat_lnx in p80211metadef.h to DIDMIB_CAT_LNX to fix
"Avoid CamelCase" message from checkpatch and conform to the coding
style guidelines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_dot11phy_dot11PhyDSSSTable_dot11CurrentChannel in
p80211metadef.h to DIDMIB_DOT11PHY_DSSSTABLE_CURRENTCHANNEL to fix
"Avoid CamelCase" message from checkpatch and conform to the coding
style guidelines. Also shorten name by removing repeated use of
"DOT11" and "DOT11PHY" to ease readability and reduce long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_dot11phy_dot11PhyDSSSTable in p80211metadef.h to
DIDMIB_DOT11PHY_DSSSTABLE to fix "Avoid CamelCase" message from
checkpatch and conform to the coding style guidelines. Also shorten
name by removing repeated use of "DOT11PHY" to ease readability and
reduce long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_dot11phy_dot11PhyTxPowerTable_dot11CurrentTxPowerLevel
in p80211metadef.h to DIDMIB_DOT11PHY_TXPOWERTABLE_CURRENTTXPOWERLEVEL
to fix "Avoid CamelCase" message from checkpatch and conform to the
coding style guidelines. Also shorten name by removing repeated use of
"DOT11" and "DOT11PHY" to ease readability and reduce long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_dot11phy_dot11PhyOperationTable in p80211metadef.h to
DIDMIB_DOT11PHY_OPERATIONTABLE to fix "Avoid CamelCase" message from
checkpatch and conform to the coding style guidelines. Also shorten
name by removing repeated use of "DOT11PHY" to ease readability and
reduce long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_cat_dot11phy in p80211metadef.h to DIDMIB_CAT_DOT11PHY
to fix "Avoid CamelCase" message from checkpatch and conform to the
coding style guidelines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename
DIDmib_dot11mac_dot11OperationTable_dot11MaxTransmitMSDULifetime in
p80211metadef.h to
DIDMIB_DOT11MAC_OPERATIONTABLE_MAXTRANSMITMSDULIFETIME to fix "Avoid
CamelCase" message from checkpatch and conform to the coding style
guidelines. Also shorten name by removing repeated use of "DOT11" to
ease readability and reduce long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_dot11mac_dot11OperationTable_dot11FragmentationThreshold
in p80211metadef.h to
DIDMIB_DOT11MAC_OPERATIONTABLE_FRAGMENTATIONTHRESHOLD to fix "Avoid
CamelCase" message from checkpatch and conform to the coding style
guidelines. Also shorten name by removing repeated use of "DOT11" to
ease readability and reduce long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_dot11mac_dot11OperationTable_dot11LongRetryLimitin
p80211metadef.h to DIDMIB_DOT11MAC_OPERATIONTABLE_LONGRETRYLIMIT to
fix "Avoid CamelCase" message from checkpatch and conform to the
coding style guidelines. Also shorten name by removing repeated use of
"DOT11" to ease readability and reduce long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_dot11mac_dot11OperationTable_dot11ShortRetryLimit in
p80211metadef.h to DIDMIB_DOT11MAC_OPERATIONTABLE_SHORTRETRYLIMIT to
fix "Avoid CamelCase" message from checkpatch and conform to the
coding style guidelines. Also shorten name by removing repeated use of
"DOT11" to ease readability and reduce long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_dot11mac_dot11OperationTable_dot11RTSThreshold in
p80211metadef.h to DIDMIB_DOT11MAC_OPERATIONTABLE_RTSTHRESHOLD to fix
"Avoid CamelCase" message from checkpatch and conform to the coding
style guidelines. Also shorten name by removing repeated use of
"DOT11" to ease readability and reduce long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_dot11mac_dot11OperationTable_dot11MACAddress in
p80211metadef.h to DIDMIB_DOT11MAC_OPERATIONTABLE_MACADDRESS to fix
"Avoid CamelCase" message from checkpatch and conform to the coding
style guidelines. Also shorten name by removing repeated use of
"DOT11" to ease readability and reduce long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_dot11mac_dot11OperationTable in p80211metadef.h to
DIDMIB_DOT11MAC_OPERATIONTABLE to fix "Avoid CamelCase" message from
checkpatch and conform to the coding style guidelines. Also shorten
name by removing repeated use of "DOT11" to ease readability and
reduce long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_dot11smt_dot11PrivacyTable_dot11ExcludeUnencrypted in
p80211metadef.h to DIDMIB_DOT11SMT_PRIVACYTABLE_EXCLUDEUNENCRYPTED to
fix "Avoid CamelCase" message from checkpatch and conform to the
coding style guidelines. Also shorten name by removing repeated use of
"DOT11" to ease readability and reduce long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_dot11smt_dot11PrivacyTable_dot11WEPDefaultKeyID in
p80211metadef.h to DIDMIB_DOT11SMT_PRIVACYTABLE_WEPDEFAULTKEYID to fix
"Avoid CamelCase" message from checkpatch and conform to the coding
style guidelines. Also shorten name by removing repeated use of
"DOT11" to ease readability and reduce long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_dot11smt_dot11PrivacyTable_dot11PrivacyInvoked to
DIDMIB_DOT11SMT_PRIVACYTABLE_PRIVACYINVOKED to fix "Avoid CamelCase"
message from checkpatch and conform to the coding style
guidelines. Also shorten name by removing repeated use of "DOT11" to
ease readability and reduce long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_dot11smt_dot11PrivacyTable to
DIDMIB_DOT11SMT_PRIVACYTABLE to fix "Avoid CamelCase" message from
checkpatch and conform to the coding style guidelines. Also shorten
name by removing repeated use of "DOT11" to ease readability and
reduce long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_dot11smt_dot11WEPDefaultKeysTable_key in p80211metadef.h
to didmib_dot11smt_wepdefaultkeystable_key to fix "Avoid CamelCase"
message from checkpatch and conform to the coding style
guidelines. Also shorten name by removing repeated use of "DOT11" to
ease readability and reduce long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_dot11smt_dot11WEPDefaultKeysTable in p80211metadef.h to
DIDMIB_DOT11SMT_WEPDEFAULTKEYSTABLE to fix "Avoid CamelCase" message
from checkpatch and conform to the coding style guidelines. Also
shorten name by removing repeated use of "DOT11" to ease readability
and reduce long lines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmib_cat_dot11smt in p80211metadef.h to DIDMIB_CAT_DOT11SMT
to fix "Avoid CamelCase" message from checkpatch and conform to the
coding style guidelines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmsg_p2req_flashdl_write in p80211metadef.h to
DIDMSG_P2REQ_FLASHDL_WRITE to fix "Avoid CamelCase" message from
checkpatch and conform to the coding style guidelines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmsg_p2req_flashdl_state in p80211metadef.h to
DIDMSG_P2REQ_FLASHDL_STATE to fix "Avoid CamelCase" message from
checkpatch and conform to the coding style guidelines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmsg_p2req_ramdl_write_resultcode in p80211metadef.h to
DIDMSG_P2REQ_RAMDL_WRITE_RESULTCODE to fix "Avoid CamelCase" message
from checkpatch and conform to the coding style guidelines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Rename DIDmsg_p2req_ramdl_write_data in p80211metadef.h to
DIDMSG_P2REQ_RAMDL_WRITE_DATA to fix "Avoid CamelCase" message from
checkpatch and conform to the coding style guidelines.
Signed-off-by: Tim Collier <osdevtc@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>