From sti@zurich.ibm.com Mon Apr 11 18:03:23 EDT 1994 Article: 28737 of comp.os.linux.help Path: bigblue.oit.unc.edu!concert!news.duke.edu!MathWorks.Com!europa.eng.gtefsd.com!howland.reston.ans.net!news.ans.net!newsgate.watson.ibm.com!hawnews.watson.ibm.com!sti From: sti@zurich.ibm.com (Michael Steiner) Newsgroups: comp.os.linux.help Subject: Re: Linux on an IBM 750 Thinkpad Date: 11 Apr 1994 15:22:21 GMT Organization: IBM Zurich Research Laboratory Lines: 128 Message-ID: <2obpvd$nvg@monterosa.zurich.ibm.com> References: <2o8vhe$55j@emory.mathcs.emory.edu> NNTP-Posting-Host: mieserenstock.zurich.ibm.com X-Newsreader: TIN [version 1.2 PL2] For the TP750 there are (at least as i know) the following problems: 1.) problem with PMBIOS (resulting in crashes then all memory is used) 2.) 2.88MB-floppy (not recognized ) 1.) is solved by the following patch (thanx to moriyama@trl.ibm.com) to file /usr/src/linux/mm/memory.c: --- begin patch 1 --------------------------------------------------------------- *** /usr/src/linux/mm/memory.c Fri Apr 8 22:18:46 1994 --- /usr/src/linux/mm/memory.c.orig Wed Feb 23 09:36:51 1994 *************** *** 1069,1078 **** *--p = MAP_PAGE_RESERVED; start_low_mem = PAGE_ALIGN(start_low_mem); start_mem = PAGE_ALIGN(start_mem); - /* thinkpad 750 patch while (start_low_mem < 0xA0000) { - */ - while (start_low_mem < 0x9f000) { mem_map[MAP_NR(start_low_mem)] = 0; start_low_mem += PAGE_SIZE; } --- 1069,1075 ---- --- end patch 1 ----------------------------------------------------------------- the (partial) solution to 2.) what allows you to deal with the floppy as 1.44MB-drive is to apply the following patch (thanx to dan@symcom.math.uiuc.edu) to the file usr/src/linux/drivers/block/floppy.c: --- begin patch 2 --------------------------------------------------------------- *** /usr/src/linux/drivers/block/floppy.c Fri Apr 8 22:19:22 1994 --- /usr/src/linux/drivers/block/floppy.c.orig Tue Mar 1 07:27:32 1994 *************** *** 170,179 **** { 1440, 9,2,80,0,0x2A,0x02,0xDF,0x50,"720k" }, /* 3.5" 720kB diskette */ { 2880,18,2,80,0,0x1B,0x00,0xCF,0x6C,"1.44M" }, /* 1.44MB diskette */ { 1440, 9,2,80,0,0x2A,0x02,0xDF,0x50,"720k/AT" }, /* 3.5" 720kB diskette */ - { 2880,18,2,80,0,0x1B,0x00,0xCF,0x6C,"1.44M" }, /* 1.44MB diskette */ - { 1440, 9,2,80,0,0x2A,0x02,0xDF,0x50,"720k/AT" }, /* 3.5" 720kB diskette */ - { 2880,18,2,80,0,0x1B,0x00,0xCF,0x6C,"1.44M" }, /* 1.44MB diskette */ - { 1440, 9,2,80,0,0x2A,0x02,0xDF,0x50,"720k/AT" }, /* 3.5" 720kB diskette */ }; /* Auto-detection: Disk type used until the next media change occurs. */ --- 170,175 ---- *************** *** 902,908 **** static void shake_done(void) { current_track = NO_TRACK; ! if (!(inb(FD_DIR) & 0x80)) request_done(0); redo_fd_request(); } --- 898,904 ---- static void shake_done(void) { current_track = NO_TRACK; ! if (inb(FD_DIR) & 0x80) request_done(0); redo_fd_request(); } *************** *** 933,939 **** static void floppy_ready(void) { ! if (!(inb(FD_DIR) & 0x80)) { changed_floppies |= 1< 0 && code < 7) { base = &floppy_types[(code-1)*2]; printk("fd%d is %s",drive,base->name); return base; --- 1237,1243 ---- { struct floppy_struct *base; ! if (code > 0 && code < 5) { base = &floppy_types[(code-1)*2]; printk("fd%d is %s",drive,base->name); return base; --- end patch 2 ----------------------------------------------------------------- some (minor) open problems are: - for the 750Cs X seems only to run with black and white. in color-mode you get all twice (no, not interlaced ...) probably because of dual-scan monitor. - apmd doesn't work: it starts up well (it prints: APM install check: v01.00PM flags 3 [ 16 32 idle=stop bios-pm-enabled ] but then you try to suspend (something that normally works ) it writes: set system suspend: Can't enter requested state and doesn't suspend PS: if somebody needs a bootfloppy with this patches applied i can send him a disk-image .... (makes bootstrapping a bit (?!) easier.