On 9/20/07, Andrew Morton <akpm@linux-foundation.org> wrote:I'm pretty sure he's not. Correct. The 'tty' bit is misleading. He's not getting any visible text console when he hits ctrl-alt-f1 .. f6. Almost certainly it's the monitor not being able to sync to the output when he's outside of X. Checking his lspci above, he has an intel chipset. Looking at the module loaded list, he does indeed have intelfb loaded. Checking the log from 2.6.23-rc6 to -rc7 shows four patches (at least) against intelfb. Those people implicated are on the to: line now. Patches included below for your reading pleasure, but gmail will almost certainly hork them up; sorry about that. If I had to guess, the one from Krzysztof (third down) seems the most likely culprit, but I'll let others with the big brains decide. (Changesets pulled from mercurial, so they won't match up with git -- sorry. But there aren't that many patches from rc6 to rc7, so it shouldn't be hard to find these.) Ray --- changeset: 65441:2bc53c9ceec9 user: Dave Airlie <airlied@linux.ie> date: Wed Sep 19 11:24:18 2007 -0700 files: drivers/char/agp/agp.h drivers/char/agp/intel-agp.c description: intel-agp: Fix i830 mask variable that changed with G33 support The mask on i830 should be 0x70 always, later chips 0xF0 should be okay. Signed-off-by: Dave Airlie <airlied@linux.ie> Acked-by: Zhenyu Wang <zhenyu.z.wang@intel.com> Cc: Michael Haas <laga@laga.ath.cx> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> committer: Linus Torvalds <torvalds@woody.linux-foundation.org> diff -r 9952a62bbdc8 -r 2bc53c9ceec9 drivers/char/agp/agp.h --- a/drivers/char/agp/agp.h Wed Sep 19 11:24:18 2007 -0700 +++ b/drivers/char/agp/agp.h Wed Sep 19 11:24:18 2007 -0700 @@ -176,7 +176,7 @@ struct agp_bridge_data { #define I830_GMCH_MEM_MASK 0x1 #define I830_GMCH_MEM_64M 0x1 #define I830_GMCH_MEM_128M 0 -#define I830_GMCH_GMS_MASK 0xF0 +#define I830_GMCH_GMS_MASK 0x70 #define I830_GMCH_GMS_DISABLED 0x00 #define I830_GMCH_GMS_LOCAL 0x10 #define I830_GMCH_GMS_STOLEN_512 0x20 @@ -190,6 +190,7 @@ struct agp_bridge_data { #define INTEL_I830_ERRSTS 0x92 /* Intel 855GM/852GM registers */ +#define I855_GMCH_GMS_MASK 0xF0 #define I855_GMCH_GMS_STOLEN_0M 0x0 #define I855_GMCH_GMS_STOLEN_1M (0x1 << 4) #define I855_GMCH_GMS_STOLEN_4M (0x2 << 4) diff -r 9952a62bbdc8 -r 2bc53c9ceec9 drivers/char/agp/intel-agp.c --- a/drivers/char/agp/intel-agp.c Wed Sep 19 11:24:18 2007 -0700 +++ b/drivers/char/agp/intel-agp.c Wed Sep 19 11:24:18 2007 -0700 @@ -511,7 +511,7 @@ static void intel_i830_init_gtt_entries( */ if (IS_G33) size = 0; - switch (gmch_ctrl & I830_GMCH_GMS_MASK) { + switch (gmch_ctrl & I855_GMCH_GMS_MASK) { case I855_GMCH_GMS_STOLEN_1M: gtt_entries = MB(1) - KB(size); break; changeset: 65440:9952a62bbdc8 user: Antonino A. Daplas <adaplas@gmail.com> date: Wed Sep 19 11:24:18 2007 -0700 files: drivers/video/intelfb/intelfbhw.c description: intelfb: Fix bug in DPLL disable Reported in Kernel Bugzilla 9006 Fix an obvious bug in DPLL disable. Signed-off-by: Antonino Daplas <adaplas@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> committer: Linus Torvalds <torvalds@woody.linux-foundation.org> diff -r c5d5d7fd802c -r 9952a62bbdc8 drivers/video/intelfb/intelfbhw.c --- a/drivers/video/intelfb/intelfbhw.c Wed Sep 19 11:24:18 2007 -0700 +++ b/drivers/video/intelfb/intelfbhw.c Wed Sep 19 11:24:18 2007 -0700 @@ -1352,7 +1352,7 @@ intelfbhw_program_mode(struct intelfb_in /* turn off PLL */ tmp = INREG(dpll_reg); - dpll_reg &= ~DPLL_VCO_ENABLE; + tmp &= ~DPLL_VCO_ENABLE; OUTREG(dpll_reg, tmp); /* Set PLL parameters */ changeset: 65288:48c66cb4be45 user: Krzysztof Halasa <khc@pm.waw.pl> date: Tue Sep 11 17:21:27 2007 -0700 files: drivers/video/intelfb/intelfbhw.c description: Subject: [PATCH] Intel FB pixel clock calculation fix Intel framebuffer mis-calculated pixel clocks. The pixel clock (and thus both H and V sync) will be slower than requested, so if you set the minimum allowed the display may not sync. In case of really old CRT display it could theoretically damage it. I'm using it with PAL TV (using RGB input - SCART connector) and the bug prevented it from working at all (TV requirements are more strict and made the bug visible). Signed-off-by: Krzysztof Halasa <khc@pm.waw.pl> Cc: "Antonino A. Daplas" <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> committer: Linus Torvalds <torvalds@woody.linux-foundation.org> diff -r 0b57ff04570b -r 48c66cb4be45 drivers/video/intelfb/intelfbhw.c --- a/drivers/video/intelfb/intelfbhw.c Tue Sep 11 17:21:27 2007 -0700 +++ b/drivers/video/intelfb/intelfbhw.c Tue Sep 11 17:21:27 2007 -0700 @@ -924,10 +924,10 @@ calc_pll_params(int index, int clock, u3 if (m > pll->max_m) m = pll->max_m - 1; for (testm = m - 1; testm <= m; testm++) { - f_out = calc_vclock3(index, m, n, p); + f_out = calc_vclock3(index, testm, n, p); if (splitm(index, testm, &m1, &m2)) { - WRN_MSG("cannot split m = %d\n", m); - n++; + WRN_MSG("cannot split m = %d\n", + testm); continue; } if (clock > f_out) changeset: 65283:3609c66fe931 user: Zhenyu Wang <zhenyu.z.wang@intel.com> date: Tue Sep 11 17:21:20 2007 -0700 files: drivers/char/agp/intel-agp.c description: intel_agp: fix GTT map size on G33 G33 has 1MB GTT table range. Fix GTT mapping in case like 512MB aperture size. Signed-off-by: Zhenyu Wang <zhenyu.z.wang@intel.com> Acked-by: Dave Airlie <airlied@linux.ie> Cc: Dave Jones <davej@codemonkey.org.uk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> committer: Linus Torvalds <torvalds@woody.linux-foundation.org> diff -r 36cd587039f1 -r 3609c66fe931 drivers/char/agp/intel-agp.c --- a/drivers/char/agp/intel-agp.c Tue Sep 11 17:21:20 2007 -0700 +++ b/drivers/char/agp/intel-agp.c Tue Sep 11 17:21:20 2007 -0700 @@ -919,6 +919,7 @@ static int intel_i915_create_gatt_table( struct aper_size_info_fixed *size; int num_entries; u32 temp, temp2; + int gtt_map_size = 256 * 1024; size = agp_bridge->current_size; page_order = size->page_order; @@ -928,7 +929,9 @@ static int intel_i915_create_gatt_table( pci_read_config_dword(intel_private.pcidev, I915_MMADDR, &temp); pci_read_config_dword(intel_private.pcidev, I915_PTEADDR,&temp2); - intel_private.gtt = ioremap(temp2, 256 * 1024); + if (IS_G33) + gtt_map_size = 1024 * 1024; /* 1M on G33 */ + intel_private.gtt = ioremap(temp2, gtt_map_size); if (!intel_private.gtt) return -ENOMEM; -
| Andrew Morton | 2.6.23-rc3-mm1 |
| Tarkan Erimer | Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3 |
| Yinghai Lu | Re: [PATCH RFC] x86: check for and defend against BIOS memory corruption |
| Frederik Deweerdt | [-mm patch] remove tcp header from tcp_v4_check (take #2) |
| David Miller | [GIT]: Networking |
| Jarek Poplawski | Re: [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| Gerrit Renker | [PATCH 27/37] dccp: Integration of dynamic feature activation - part 2 (server side) |
| Herbert Xu | Re: [PATCH 2/3][NET_BATCH] net core use batching |
git: | |
