wok-tiny annotate hardware-ibm-6272/receipt @ rev 187

Add bootlife (again)
author Pascal Bellard <pascal.bellard@slitaz.org>
date Sun Feb 04 18:58:39 2024 +0000 (4 months ago)
parents 3de5e6325aab
children
rev   line source
pascal@94 1 # SliTaz package receipt.
pascal@94 2
pascal@94 3 PACKAGE="hardware-ibm-6272"
pascal@94 4 VERSION="1.0"
pascal@110 5 CATEGORY="meta"
pascal@120 6 GROUP="system"
pascal@94 7 MAINTAINER="devel@slitaz.org"
pascal@94 8 LICENSE="BSD"
pascal@94 9 SHORT_DESC="IBM 300GL 6272/6282 (P75-233 ISA/PCI/USB/ETH desktop) hardware support"
pascal@94 10 WEB_SITE="http://www.slitaz.org/"
pascal@94 11
pascal@94 12 DEPENDS="isapnptools module-cs89x0"
pascal@146 13 SUGGESTED="module-serial module-lp module-floppy module-ide module-usb-storage module-usblp"
pascal@94 14
pascal@94 15 # Post message when installing.
pascal@94 16 post_install()
pascal@94 17 {
pascal@94 18 [ -s $1/etc/init.d/pnp.sh ] || cat > $1/etc/init.d/pnp.sh <<EOT
pascal@94 19 #!/bin/sh
pascal@94 20
pascal@94 21 . /etc/init.d/rc.functions
pascal@94 22 EOT
pascal@97 23 chmod +x $1/etc/init.d/pnp.sh
pascal@94 24 cat >> $1/etc/init.d/pnp.sh <<EOT
pascal@94 25
pascal@119 26 dmesg | grep -qs CS8920 &&
pascal@110 27 echo -n "Switching on cs89x0 isa pnp ethernet card " &&
pascal@110 28 pnpdump > /etc/isapnp.conf.base
pascal@94 29 for io in \$(seq 360 -10 250); do for irq in IRQ_CS89X0_LIST; do
pascal@110 30 awk "BEGIN {s=0} \\
pascal@94 31 /CONFIGURE CSC6040/ {s=1} { \\
pascal@94 32 if (s==0) print; \\
pascal@94 33 else if (/INT 0/) print \\"(INT 0 (IRQ \$irq (MODE +E)))\\"; \\
pascal@94 34 else if (/IO 0/) print \\"(IO 0 (SIZE 16) (BASE 0x0\$io) (CHECK))\\"; \\
pascal@94 35 else if (/ACT Y/) { s=0; print \\"(ACT Y)\\"} \\
pascal@94 36 else print \\
pascal@110 37 }" < /etc/isapnp.conf.base > /etc/isapnp.conf
pascal@103 38 grep CSC6040 /etc/isapnp.conf || break 2
pascal@103 39 if isapnp /etc/isapnp.conf ; then
pascal@103 40 modprobe cs89x0 io=0x\$io irq=\$irq
pascal@94 41 break 2
pascal@94 42 fi
pascal@110 43 done ; done > /dev/null 2>&1 && rm -f /etc/isapnp.conf.base
pascal@94 44 status
pascal@94 45 EOT
pascal@119 46 grep -q '^# CONFIG_PRINTK is not set' $1/boot/config &&
pascal@135 47 sed -i '/Switching on/d' $1/etc/init.d/pnp.sh
pascal@94 48 grep pnp.sh $1/etc/rcS.conf ||
pascal@94 49 sed -i 's/EARLY_RUN_SCRIPTS="/&pnp.sh /' $1/etc/rcS.conf
pascal@94 50 list=""
pascal@94 51 for i in $IRQ_CS89X0_LIST ; do
pascal@94 52 case " 15 12 11 10 9 7 6 5 4 3 " in
pascal@103 53 *\ $i\ *) list="$list $i"
pascal@94 54 esac
pascal@94 55 done
pascal@104 56 sed -i "s/ IRQ_CS89X0_LIST/${list:- 15 12 11 10}/" $1/etc/init.d/pnp.sh
pascal@94 57 sed -i 's/cs89x0[^ "]* //' $1/etc/rcS.conf
pascal@96 58 sed -i '/rm -f .sbin.*pnp/d' $1/etc/init.d/pnp.sh
pascal@142 59 [ "$CS89X0_WIPEPNP" = "on" ] &&
pascal@97 60 echo 'rm -f /sbin/pnpdump /sbin/isapnp /etc/isapnp.conf' >> $1/etc/init.d/pnp.sh
pascal@94 61 }
pascal@94 62
pascal@94 63 config_form()
pascal@94 64 {
pascal@94 65 cat <<EOT
pascal@94 66 <table>
pascal@94 67 <tr>
pascal@94 68 <td>Allowed IRQ for the Ethernet driver cs89x0</td>
pascal@126 69 <td><input type="text" name="IRQ_CS89X0_LIST" value="${IRQ_CS89X0_LIST:-15 12 11 10 9 7 6 5 4 3}" /></td>
pascal@94 70 </tr>
pascal@94 71 </table>
pascal@126 72 <input type="checkbox" name="CS89X0_WIPEPNP" ${CS89X0_WIPEPNP:+checked="checked" }/>Remove PNP binaries after use<br>
pascal@94 73 EOT
pascal@94 74 }