mirror of https://github.com/torvalds/linux.git
The patch enables the driver to be used on platforms such as ARM where an
I/O address is a 32-bit memory address.
The patch avoids the following kernel oops:
debian:~# modprobe sisfb
[ 73.070000] sisfb: Video ROM found
[ 73.080000] sisfb: Video RAM at 0x80000000, mapped to 0xe0a00000, size 1024k
[ 73.090000] sisfb: MMIO at 0x84080000, mapped to 0xe0b80000, size 256k
[ 73.090000] sisfb: Memory heap starting at 800K, size 32K
[ 73.360000] Unable to handle kernel paging request at virtual address 6e000844
[ 73.380000] pgd = df230000
[ 73.380000] [6e000844] *pgd=00000000
[ 73.380000] Internal error: Oops: 8f5 [#1]
[ 73.380000] Modules linked in: sisfb(+) fb cfbcopyarea cfbimgblt cfbfillrect
[ 73.380000] CPU: 0 Not tainted (2.6.31-iop32x #1)
[ 73.380000] PC is at SiS_SetRegANDOR+0x10/0x38 [sisfb]
[ 73.380000] LR is at SiS_SetSCLKHigh+0x38/0x94 [sisfb]
[ 73.380000] pc : [<bf01dc00>] lr : [<bf0238f8>] psr: 60000013
[ 73.380000] sp : df38fd00 ip : 6e000000 fp : 00000002
[ 73.380000] r10: 00000108 r9 : 00000000 r8 : 00000108
[ 73.380000] r7 : df064258 r6 : 00000110 r5 : 6e000844 r4 : 0000010a
[ 73.380000] r3 : 00000001 r2 : 0000000e r1 : 00000011 r0 : 00000844
[ 73.380000] Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
[ 73.380000] Control: 0000397f Table: bf230000 DAC: 00000015
[ 73.380000] Process modprobe (pid: 1849, stack limit = 0xdf38e270)
[ 73.380000] Stack: (0xdf38fd00 to 0xdf390000)
[ 73.380000] fd00: 0000010a 00000108 df064258 df064258 df064258 00000000 00000000 bf02c4e0
[ 73.380000] fd20: 00000114 bf02c50c 00000013 00000114 0000010a df064258 00000000 bf02c980
[ 73.380000] fd40: 00009c66 00000004 00000001 df064250 a0010000 a6a2a0a0 df064250 00000003
[ 73.380000] fd60: df064250 00000000 df064258 0000fffd 00000000 00000000 00000000 bf033948
[ 73.380000] fd80: 00000000 00000000 00000000 bf019e2c 00000000
|
||
|---|---|---|
| .. | ||
| aty | ||
| backlight | ||
| console | ||
| display | ||
| geode | ||
| i810 | ||
| intelfb | ||
| kyro | ||
| logo | ||
| matrox | ||
| mb862xx | ||
| mbx | ||
| msm | ||
| nvidia | ||
| omap | ||
| pnx4008 | ||
| riva | ||
| savage | ||
| sis | ||
| vermilion | ||
| via | ||
| 68328fb.c | ||
| Kconfig | ||
| Makefile | ||
| acornfb.c | ||
| acornfb.h | ||
| amba-clcd.c | ||
| amifb.c | ||
| arcfb.c | ||
| arkfb.c | ||
| asiliantfb.c | ||
| atafb.c | ||
| atafb.h | ||
| atafb_iplan2p2.c | ||
| atafb_iplan2p4.c | ||
| atafb_iplan2p8.c | ||
| atafb_mfb.c | ||
| atafb_utils.h | ||
| atmel_lcdfb.c | ||
| au1100fb.c | ||
| au1100fb.h | ||
| au1200fb.c | ||
| au1200fb.h | ||
| bf54x-lq043fb.c | ||
| bfin-t350mcqb-fb.c | ||
| broadsheetfb.c | ||
| bt431.h | ||
| bt455.h | ||
| bw2.c | ||
| c2p.h | ||
| c2p_core.h | ||
| c2p_iplan2.c | ||
| c2p_planar.c | ||
| carminefb.c | ||
| carminefb.h | ||
| carminefb_regs.h | ||
| cfbcopyarea.c | ||
| cfbfillrect.c | ||
| cfbimgblt.c | ||
| cg3.c | ||
| cg6.c | ||
| cg14.c | ||
| chipsfb.c | ||
| cirrusfb.c | ||
| clps711xfb.c | ||
| cobalt_lcdfb.c | ||
| controlfb.c | ||
| controlfb.h | ||
| cyber2000fb.c | ||
| cyber2000fb.h | ||
| da8xx-fb.c | ||
| dnfb.c | ||
| edid.h | ||
| efifb.c | ||
| ep93xx-fb.c | ||
| epson1355fb.c | ||
| fb_ddc.c | ||
| fb_defio.c | ||
| fb_draw.h | ||
| fb_notify.c | ||
| fb_sys_fops.c | ||
| fbcmap.c | ||
| fbcvt.c | ||
| fbmem.c | ||
| fbmon.c | ||
| fbsysfs.c | ||
| ffb.c | ||
| fm2fb.c | ||
| fsl-diu-fb.c | ||
| fsl-diu-fb.h | ||
| g364fb.c | ||
| gbefb.c | ||
| gxt4500.c | ||
| hecubafb.c | ||
| hgafb.c | ||
| hitfb.c | ||
| hpfb.c | ||
| igafb.c | ||
| imsttfb.c | ||
| imxfb.c | ||
| leo.c | ||
| macfb.c | ||
| macmodes.c | ||
| macmodes.h | ||
| maxinefb.c | ||
| metronomefb.c | ||
| modedb.c | ||
| mx3fb.c | ||
| n411.c | ||
| neofb.c | ||
| offb.c | ||
| output.c | ||
| p9100.c | ||
| platinumfb.c | ||
| platinumfb.h | ||
| pm2fb.c | ||
| pm3fb.c | ||
| pmag-aa-fb.c | ||
| pmag-ba-fb.c | ||
| pmagb-b-fb.c | ||
| ps3fb.c | ||
| pvr2fb.c | ||
| pxa168fb.c | ||
| pxa168fb.h | ||
| pxafb.c | ||
| pxafb.h | ||
| q40fb.c | ||
| s1d13xxxfb.c | ||
| s3c-fb.c | ||
| s3c2410fb.c | ||
| s3c2410fb.h | ||
| s3fb.c | ||
| sa1100fb.c | ||
| sa1100fb.h | ||
| sbuslib.c | ||
| sbuslib.h | ||
| sgivwfb.c | ||
| sh7760fb.c | ||
| sh_mobile_lcdcfb.c | ||
| skeletonfb.c | ||
| sm501fb.c | ||
| sstfb.c | ||
| sticore.h | ||
| stifb.c | ||
| sunxvr500.c | ||
| sunxvr2500.c | ||
| svgalib.c | ||
| syscopyarea.c | ||
| sysfillrect.c | ||
| sysimgblt.c | ||
| tcx.c | ||
| tdfxfb.c | ||
| tgafb.c | ||
| tmiofb.c | ||
| tridentfb.c | ||
| uvesafb.c | ||
| valkyriefb.c | ||
| valkyriefb.h | ||
| vesafb.c | ||
| vfb.c | ||
| vga16fb.c | ||
| vgastate.c | ||
| vt8623fb.c | ||
| w100fb.c | ||
| w100fb.h | ||
| xen-fbfront.c | ||
| xilinxfb.c | ||