[Suzaku:00589] Re: キャラクタデバイスのドライバーの作成
Yasushi SHOJI
email@hidden
2006年 7月 13日 (木) 16:35:01 JST
At Thu, 13 Jul 2006 16:02:04 +0900,
Abe wrote:
[...]
> ssize_t s_write(struct file *filp, const char *buf, ssize_t count, loff_t
> *f_pos)
> {
> ssize_t retval;
>
> if(copy_from_user(f_pos, buf, count)){
> retval = -EFAULT;
> }else{
> retval = count;
> }
> return retval;
> }
>
> 返り値がcountと同じであることを確認しました。
> しかし、ハードウェア上では、アクセスできていないことを
> オシロスコープで確認しました。
hardwareに accessしていないと思うのですが、どうでしょう?f_posはファイ
ル内のオフセットが入っているだけですので、copy_from_userするとどこか壊
してしまいますよ。
*(volatile unsigned long *)ADDRESS = VALUE;
と書くと ADDRESSで指定した値で address busがドライブされ、data busでは
VALUEの値がドライブされると思います。
--
yashi
suzaku メーリングリストの案内