From: dmc <dm...@in...> - 2000-12-20 11:02:38
|
NOTE: I do not care about developing this driver, just using it. I don't currently, and don't plan on reading the hpoj-devel list, as long as I can print and scan on my PSC500, which I can now do. I'm just posting this info so other people needn't do the same digging around that I did. Despite the release notes that came with 0.7, it appears that 0.7 is not yet compatable with the latest version of 2.4.0-test, namely test12. I had to change 3 things in ieee12844/ieee12844pp.c to get it to compile and work. First I had to add #define PAR_CONTROL_REVERSE_DATA 0x20 This is not the "right" solution, but it works. I went through old versions of linux/include/linux/parport.h (or parport_pc.h) and discovered that PAR_CONTROL_REVERSE_DATA had been removed. However, the parts of the linux code that used to handle it, still have a special case for 0x20, I guess in case 3rd party drivers use it. Thats why I was confident that my solution was adequate for the timebeing. I'm not a kernel hacker, and I have no interest in developing this driver, I just wanted it to work for me, so thats why I didn't investigate into a more proper solution. Second, I changed parport_write_econtrol to parport_write_control because I got an unresolved symbol for parport_write_econtrol during the insmod Again, a guess, that seems to work for me so far. Third, and most fundamental, I changed queue_task (&l->tq, &tq_scheduler); to schedule_task(&l->tq); After a bit of research I discovered that tq_scheduler got nuked by linux-2.4.0-test12-pre7. The changelog yielded - pre7: ... - Andrew Morton: "tq_scheduler" is no more. We have keventd. ... Not knowing much about kernel internals, I diffed pre6 and pre7 and discovered that every instance of queue_task(X, &tq_scheduler); was replaced by either schedule_task(X) or MOD_INC_USE_COUNT; if (schedule_task(X) == 0) MOD_DEC_USE_COUNT; Even though I used the first and it worked, my guess is that the latter is used for kernel modules, and is therefore more correct. I'll probably switch to it if I encounter any problems. Otherwise, I CAN SCAN ON MY PSC500 :). Thanks very much for not making me regret nuking my windows partition a few weeks ago :) And I'll eagerly await 0.8 which will have better fixes than my hacks. -dmc |