Rev 3192 | Rev 5078 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3192 | Rev 3764 | ||
---|---|---|---|
Line 833... | Line 833... | ||
833 | struct radeon_framebuffer *rfb, |
833 | struct radeon_framebuffer *rfb, |
834 | struct drm_mode_fb_cmd2 *mode_cmd, |
834 | struct drm_mode_fb_cmd2 *mode_cmd, |
835 | struct drm_gem_object *obj) |
835 | struct drm_gem_object *obj) |
836 | { |
836 | { |
837 | int ret; |
837 | int ret; |
838 | - | ||
839 | ENTER(); |
- | |
840 | - | ||
841 | rfb->obj = obj; |
838 | rfb->obj = obj; |
- | 839 | drm_helper_mode_fill_fb_struct(&rfb->base, mode_cmd); |
|
842 | ret = drm_framebuffer_init(dev, &rfb->base, &radeon_fb_funcs); |
840 | ret = drm_framebuffer_init(dev, &rfb->base, &radeon_fb_funcs); |
843 | if (ret) { |
841 | if (ret) { |
844 | rfb->obj = NULL; |
842 | rfb->obj = NULL; |
845 | return ret; |
843 | return ret; |
846 | } |
844 | } |
847 | drm_helper_mode_fill_fb_struct(&rfb->base, mode_cmd); |
- | |
848 | LEAVE(); |
- | |
849 | return 0; |
845 | return 0; |
850 | } |
846 | } |
Line 1041... | Line 1037... | ||
1041 | int radeon_modeset_init(struct radeon_device *rdev) |
1037 | int radeon_modeset_init(struct radeon_device *rdev) |
1042 | { |
1038 | { |
1043 | int i; |
1039 | int i; |
1044 | int ret; |
1040 | int ret; |
Line 1045... | Line -... | ||
1045 | - | ||
1046 | ENTER(); |
- | |
1047 | 1041 | ||
1048 | drm_mode_config_init(rdev->ddev); |
1042 | drm_mode_config_init(rdev->ddev); |
Line 1049... | Line 1043... | ||
1049 | rdev->mode_info.mode_config_initialized = true; |
1043 | rdev->mode_info.mode_config_initialized = true; |
Line 1072... | Line 1066... | ||
1072 | } |
1066 | } |
Line 1073... | Line 1067... | ||
1073 | 1067 | ||
1074 | /* init i2c buses */ |
1068 | /* init i2c buses */ |
Line 1075... | Line -... | ||
1075 | radeon_i2c_init(rdev); |
- | |
1076 | - | ||
1077 | dbgprintf("i2c init\n"); |
1069 | radeon_i2c_init(rdev); |
1078 | 1070 | ||
1079 | /* check combios for a valid hardcoded EDID - Sun servers */ |
1071 | /* check combios for a valid hardcoded EDID - Sun servers */ |
1080 | if (!rdev->is_atom_bios) { |
1072 | if (!rdev->is_atom_bios) { |
1081 | /* check for hardcoded EDID in BIOS */ |
1073 | /* check for hardcoded EDID in BIOS */ |
Line 1085... | Line 1077... | ||
1085 | /* allocate crtcs */ |
1077 | /* allocate crtcs */ |
1086 | for (i = 0; i < rdev->num_crtc; i++) { |
1078 | for (i = 0; i < rdev->num_crtc; i++) { |
1087 | radeon_crtc_init(rdev->ddev, i); |
1079 | radeon_crtc_init(rdev->ddev, i); |
1088 | } |
1080 | } |
Line 1089... | Line -... | ||
1089 | - | ||
1090 | dbgprintf("crtc init\n"); |
- | |
1091 | 1081 | ||
1092 | /* okay we should have all the bios connectors */ |
1082 | /* okay we should have all the bios connectors */ |
1093 | ret = radeon_setup_enc_conn(rdev->ddev); |
1083 | ret = radeon_setup_enc_conn(rdev->ddev); |
1094 | if (!ret) { |
1084 | if (!ret) { |
1095 | return ret; |
1085 | return ret; |
Line 1111... | Line 1101... | ||
1111 | // radeon_pm_init(rdev); |
1101 | // radeon_pm_init(rdev); |
Line 1112... | Line 1102... | ||
1112 | 1102 | ||
1113 | radeon_fbdev_init(rdev); |
1103 | radeon_fbdev_init(rdev); |
Line 1114... | Line -... | ||
1114 | // drm_kms_helper_poll_init(rdev->ddev); |
- | |
1115 | - | ||
1116 | LEAVE(); |
1104 | // drm_kms_helper_poll_init(rdev->ddev); |
1117 | 1105 | ||
Line 1118... | Line 1106... | ||
1118 | return 0; |
1106 | return 0; |
1119 | } |
1107 | } |
Line 1124... | Line 1112... | ||
1124 | 1112 | ||
1125 | if (rdev->mode_info.mode_config_initialized) { |
1113 | if (rdev->mode_info.mode_config_initialized) { |
1126 | // radeon_afmt_fini(rdev); |
1114 | // radeon_afmt_fini(rdev); |
1127 | // drm_kms_helper_poll_fini(rdev->ddev); |
1115 | // drm_kms_helper_poll_fini(rdev->ddev); |
1128 | // radeon_hpd_fini(rdev); |
1116 | // radeon_hpd_fini(rdev); |
1129 | drm_mode_config_cleanup(rdev->ddev); |
1117 | // drm_mode_config_cleanup(rdev->ddev); |
1130 | rdev->mode_info.mode_config_initialized = false; |
1118 | rdev->mode_info.mode_config_initialized = false; |
1131 | } |
1119 | } |
1132 | /* free i2c buses */ |
1120 | /* free i2c buses */ |
1133 | radeon_i2c_fini(rdev); |
1121 | radeon_i2c_fini(rdev); |
Line 1161... | Line 1149... | ||
1161 | u32 src_h = 1, dst_h = 1; |
1149 | u32 src_h = 1, dst_h = 1; |
Line 1162... | Line 1150... | ||
1162 | 1150 | ||
1163 | radeon_crtc->h_border = 0; |
1151 | radeon_crtc->h_border = 0; |
Line 1164... | Line -... | ||
1164 | radeon_crtc->v_border = 0; |
- | |
1165 | - | ||
1166 | ENTER(); |
1152 | radeon_crtc->v_border = 0; |
1167 | 1153 | ||
1168 | list_for_each_entry(encoder, &dev->mode_config.encoder_list, head) { |
1154 | list_for_each_entry(encoder, &dev->mode_config.encoder_list, head) { |
1169 | if (encoder->crtc != crtc) |
1155 | if (encoder->crtc != crtc) |
1170 | continue; |
1156 | continue; |
1171 | radeon_encoder = to_radeon_encoder(encoder); |
1157 | radeon_encoder = to_radeon_encoder(encoder); |
Line 1172... | Line -... | ||
1172 | connector = radeon_get_connector_for_encoder(encoder); |
- | |
1173 | radeon_connector = to_radeon_connector(connector); |
- | |
1174 | - | ||
1175 | dbgprintf("native_hdisplay %d vdisplay %d\n", |
- | |
1176 | radeon_encoder->native_mode.hdisplay, |
1158 | connector = radeon_get_connector_for_encoder(encoder); |
1177 | radeon_encoder->native_mode.vdisplay); |
1159 | radeon_connector = to_radeon_connector(connector); |
1178 | 1160 | ||
1179 | if (first) { |
1161 | if (first) { |
1180 | /* set scaling */ |
1162 | /* set scaling */ |
Line 1239... | Line 1221... | ||
1239 | radeon_crtc->hsc.full = dfixed_div(a, b); |
1221 | radeon_crtc->hsc.full = dfixed_div(a, b); |
1240 | } else { |
1222 | } else { |
1241 | radeon_crtc->vsc.full = dfixed_const(1); |
1223 | radeon_crtc->vsc.full = dfixed_const(1); |
1242 | radeon_crtc->hsc.full = dfixed_const(1); |
1224 | radeon_crtc->hsc.full = dfixed_const(1); |
1243 | } |
1225 | } |
1244 | - | ||
1245 | LEAVE(); |
- | |
1246 | - | ||
1247 | return true; |
1226 | return true; |
1248 | } |
1227 | } |
Line 1249... | Line 1228... | ||
1249 | 1228 | ||
1250 | /* |
1229 | /* |