~ubuntu-branches/ubuntu/trusty/linux-armadaxp/trusty

« back to all changes in this revision

Viewing changes to Documentation/s390/TAPE

  • Committer: Package Import Robot
  • Author(s): Michael Casadevall, Bryan Wu, Dann Frazier, Michael Casadeall
  • Date: 2012-03-10 15:00:54 UTC
  • mfrom: (1.1.1)
  • Revision ID: package-import@ubuntu.com-20120310150054-flugb39zon8vvgwe
Tags: 3.2.0-1600.1
[ Bryan Wu ]
* UBUNTU: import debian/debian.env and debian.armadaxp

[ Dann Frazier ]
* ARM: Armada XP: remove trailing '/' in dirnames in mvRules.mk

[ Michael Casadeall ]
* tools: add some tools for Marvell Armada XP processor
* kernel: timer tick hacking from Marvell
* kernel: Sheeva Errata: add delay on Sheeva when powering down
* net: add Marvell NFP netfilter
* net: socket and skb modifications made by Marvell
* miscdevice: add minor IDs for some Marvell Armada drivers
* fs: introduce memory pool for splice()
* video: EDID detection updates from Marvell Armada XP patchset
* video: backlight: add Marvell Dove LCD backlight driver
* video: display: add THS8200 display driver
* video: framebuffer: add Marvell Dove and Armada XP processor onchip LCD controller driver
* usbtest: add Interrupt transfer testing by Marvell Armada XP code
* usb: ehci: add support for Marvell EHCI controler
* tty/serial: 8250: add support for Marvell Armada XP processor and DeviceTree work
* rtc: add support for Marvell Armada XP onchip RTC controller
* net: pppoe: add Marvell ethernet NFP hook in PPPoE networking driver
* mtd: nand: add support for Marvell Armada XP Nand Flash Controller
* mtd: maps: add Marvell Armada XP specific map driver
* mmc: add support for Marvell Armada XP MMC/SD host controller
* i2c: add support for Marvell Armada XP onchip i2c bus controller
* hwmon: add Kconfig option for Armada XP onchip thermal sensor driver
* dmaengine: add Net DMA support for splice and update Marvell XOR DMA engine driver
* ata: add support for Marvell Armada XP SATA controller and update some quirks
* ARM: add Marvell Armada XP machine to mach-types
* ARM: oprofile: add support for Marvell PJ4B core
* ARM: mm: more ARMv6 switches for Marvell Armada XP
* ARM: remove static declaration to allow compilation
* ARM: alignment access fault trick
* ARM: mm: skip some fault fixing when run on NONE SMP ARMv6 mode during early abort event
* ARM: mm: add Marvell Sheeva CPU Architecture for PJ4B
* ARM: introduce optimized copy operation for Marvell Armada XP
* ARM: SAUCE: hardware breakpoint trick for Marvell Armada XP
* ARM: big endian and little endian tricks for Marvell Armada XP
* ARM: SAUCE: Add Marvell Armada XP build rules to arch/arm/kernel/Makefile
* ARM: vfp: add special handling for Marvell Armada XP
* ARM: add support for Marvell U-Boot
* ARM: add mv_controller_num for ARM PCI drivers
* ARM: add support for local PMUs, general SMP tweaks and cache flushing
* ARM: add Marvell device identifies in glue-proc.h
* ARM: add IPC driver support for Marvell platforms
* ARM: add DMA mapping for Marvell platforms
* ARM: add Sheeva errata and PJ4B code for booting
* ARM: update Kconfig and Makefile to include Marvell Armada XP platforms
* ARM: Armada XP: import LSP from Marvell for Armada XP 3.2 kernel enablement

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
Channel attached Tape device driver 
2
 
 
3
 
-----------------------------WARNING-----------------------------------------
4
 
This driver is considered to be EXPERIMENTAL. Do NOT use it in 
5
 
production environments. Feel free to test it and report problems back to us. 
6
 
-----------------------------------------------------------------------------
7
 
 
8
 
The LINUX for zSeries tape device driver manages channel attached tape drives 
9
 
which are compatible to IBM 3480 or IBM 3490 magnetic tape subsystems. This 
10
 
includes various models of these devices (for example the 3490E). 
11
 
 
12
 
 
13
 
Tape driver features 
14
 
 
15
 
The device driver supports a maximum of 128 tape devices. 
16
 
No official LINUX device major number is assigned to the zSeries tape device 
17
 
driver. It allocates major numbers dynamically and reports them on system 
18
 
startup. 
19
 
Typically it will get major number 254 for both the character device front-end 
20
 
and the block device front-end. 
21
 
 
22
 
The tape device driver needs no kernel parameters. All supported devices 
23
 
present are detected on driver initialization at system startup or module load.
24
 
The devices detected are ordered by their subchannel numbers. The device with 
25
 
the lowest subchannel number becomes device 0, the next one will be device 1 
26
 
and so on. 
27
 
 
28
 
 
29
 
Tape character device front-end 
30
 
 
31
 
The usual way to read or write to the tape device is through the character 
32
 
device front-end. The zSeries tape device driver provides two character devices
33
 
for each physical device -- the first of these will rewind automatically when 
34
 
it is closed, the second will not rewind automatically. 
35
 
 
36
 
The character device nodes are named /dev/rtibm0 (rewinding) and /dev/ntibm0 
37
 
(non-rewinding) for the first device, /dev/rtibm1 and /dev/ntibm1 for the 
38
 
second, and so on. 
39
 
 
40
 
The character device front-end can be used as any other LINUX tape device. You 
41
 
can write to it and read from it using LINUX facilities such as GNU tar. The 
42
 
tool mt can be used to perform control operations, such as rewinding the tape 
43
 
or skipping a file. 
44
 
 
45
 
Most LINUX tape software should work with either tape character device. 
46
 
 
47
 
 
48
 
Tape block device front-end 
49
 
 
50
 
The tape device may also be accessed as a block device in read-only mode. 
51
 
This could be used for software installation in the same way as it is used with 
52
 
other operation systems on the zSeries platform (and most LINUX 
53
 
distributions are shipped on compact disk using ISO9660 filesystems). 
54
 
 
55
 
One block device node is provided for each physical device. These are named 
56
 
/dev/btibm0 for the first device, /dev/btibm1 for the second and so on. 
57
 
You should only use the ISO9660 filesystem on LINUX for zSeries tapes because 
58
 
the physical tape devices cannot perform fast seeks and the ISO9660 system is 
59
 
optimized for this situation. 
60
 
 
61
 
 
62
 
Tape block device example 
63
 
 
64
 
In this example a tape with an ISO9660 filesystem is created using the first 
65
 
tape device. ISO9660 filesystem support must be built into your system kernel
66
 
for this. 
67
 
The mt command is used to issue tape commands and the mkisofs command to 
68
 
create an ISO9660 filesystem: 
69
 
 
70
 
- create a LINUX directory (somedir) with the contents of the filesystem 
71
 
     mkdir somedir
72
 
     cp contents somedir 
73
 
 
74
 
- insert a tape 
75
 
 
76
 
- ensure the tape is at the beginning 
77
 
     mt -f /dev/ntibm0 rewind 
78
 
 
79
 
- set the blocksize of the character driver. The blocksize 2048 bytes
80
 
  is commonly used on ISO9660 CD-Roms
81
 
     mt -f /dev/ntibm0 setblk 2048 
82
 
 
83
 
- write the filesystem to the character device driver 
84
 
     mkisofs -o /dev/ntibm0 somedir 
85
 
 
86
 
- rewind the tape again 
87
 
     mt -f /dev/ntibm0 rewind 
88
 
 
89
 
- Now you can mount your new filesystem as a block device: 
90
 
     mount -t iso9660 -o ro,block=2048 /dev/btibm0 /mnt 
91
 
 
92
 
TODO List 
93
 
 
94
 
   - Driver has to be stabilized still
95
 
 
96
 
BUGS 
97
 
 
98
 
This driver is considered BETA, which means some weaknesses may still
99
 
be in it.
100
 
If an error occurs which cannot be handled by the code you will get a 
101
 
sense-data dump.In that case please do the following: 
102
 
 
103
 
1. set the tape driver debug level to maximum: 
104
 
     echo 6 >/proc/s390dbf/tape/level 
105
 
 
106
 
2. re-perform the actions which produced the bug. (Hopefully the bug will 
107
 
   reappear.) 
108
 
 
109
 
3. get a snapshot from the debug-feature: 
110
 
     cat /proc/s390dbf/tape/hex_ascii >somefile 
111
 
 
112
 
4. Now put the snapshot together with a detailed description of the situation 
113
 
   that led to the bug: 
114
 
 - Which tool did you use? 
115
 
 - Which hardware do you have? 
116
 
 - Was your tape unit online? 
117
 
 - Is it a shared tape unit? 
118
 
 
119
 
5. Send an email with your bug report to: 
120
 
     mailto:Linux390@de.ibm.com 
121
 
 
122