mirror of
https://github.com/genodelabs/genode.git
synced 2024-12-21 22:47:50 +00:00
parent
0c5d8f1156
commit
daa6195732
@ -763,3 +763,15 @@ int request_firmware_direct(const struct firmware ** firmware_p,const char * nam
|
||||
lx_emul_trace(__func__);
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
||||
int ___ratelimit(struct ratelimit_state * rs, const char * func)
|
||||
{
|
||||
/*
|
||||
* from lib/ratelimit.c:
|
||||
* " 0 means callbacks will be suppressed.
|
||||
* 1 means go ahead and do it. "
|
||||
*/
|
||||
lx_emul_trace(__func__);
|
||||
return 1;
|
||||
}
|
||||
|
@ -16,14 +16,6 @@ void * PDE_DATA(const struct inode * inode)
|
||||
}
|
||||
|
||||
|
||||
#include <linux/ratelimit_types.h>
|
||||
|
||||
int ___ratelimit(struct ratelimit_state * rs,const char * func)
|
||||
{
|
||||
lx_emul_trace_and_stop(__func__);
|
||||
}
|
||||
|
||||
|
||||
#include <linux/skbuff.h>
|
||||
|
||||
struct sk_buff * __alloc_skb(unsigned int size,gfp_t gfp_mask,int flags,int node)
|
||||
|
@ -375,7 +375,14 @@ void intel_vgpu_detect(struct drm_i915_private * dev_priv)
|
||||
|
||||
void call_rcu(struct rcu_head * head, rcu_callback_t func)
|
||||
{
|
||||
enum { KVFREE_RCU_OFFSET = 4096 };
|
||||
|
||||
lx_emul_trace(__func__);
|
||||
|
||||
if (func < (rcu_callback_t)KVFREE_RCU_OFFSET) {
|
||||
kvfree((void*)head - (unsigned long)func);
|
||||
return;
|
||||
}
|
||||
|
||||
func(head);
|
||||
}
|
||||
|
@ -135,7 +135,7 @@ static bool reconfigure(void * data)
|
||||
unsigned err = 0;
|
||||
struct drm_fb_helper_surface_size sizes = {};
|
||||
|
||||
sizes.surface_depth = 32;
|
||||
sizes.surface_depth = 24;
|
||||
sizes.surface_bpp = 32;
|
||||
sizes.fb_width = mode_preferred.hdisplay;
|
||||
sizes.fb_height = mode_preferred.vdisplay;
|
||||
@ -335,6 +335,16 @@ void lx_user_init(void)
|
||||
|
||||
static int genode_fb_client_hotplug(struct drm_client_dev *client)
|
||||
{
|
||||
/*
|
||||
* Set deferred_setup to execute codepath of drm_fb_helper_hotplug_event()
|
||||
* on next connector state change that does not drop modes, which are
|
||||
* above the current framebuffer resolution. It is required if the
|
||||
* connected display at runtime is larger than the ones attached already
|
||||
* during boot. Without this quirk, not all modes are reported on displays
|
||||
* connected after boot.
|
||||
*/
|
||||
i915_fb()->deferred_setup = true;
|
||||
|
||||
lx_emul_i915_hotplug_connector(client);
|
||||
return 0;
|
||||
}
|
||||
@ -353,7 +363,7 @@ void lx_emul_i915_report(void * lx_data, void * genode_data)
|
||||
drm_client_for_each_connector_iter(connector, &conn_iter) {
|
||||
lx_emul_i915_report_connector(connector, genode_data,
|
||||
connector->name,
|
||||
!!connector->encoder /* connected */,
|
||||
connector->status != connector_status_disconnected,
|
||||
get_brightness(connector, INVALID_BRIGHTNESS));
|
||||
}
|
||||
drm_connector_list_iter_end(&conn_iter);
|
||||
|
Loading…
Reference in New Issue
Block a user