主题 : tiny4412a spi时钟 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 82901
精华: 0
发帖: 11
金钱: 55 两
威望: 11 点
综合积分: 22 分
注册时间: 2012-11-29
最后登录: 2014-04-11
楼主  发表于: 2014-04-10 17:16

 tiny4412a spi时钟

想问一下spi的时钟怎么修改啊,我自己加的驱动
    struct spi_transfer t = {
        .cs_change = 0,
        .delay_usecs = 0,
        .speed_hz = 24*000*000,
        .tx_buf = tx,
        .rx_buf = rx,
        .len = length,
        .tx_dma = 0,
        .rx_dma = 0,
        .bits_per_word = 0,
    };

我这么设的24M,测出来只有1.5M,怎么改都不变,想知道spi时钟怎么改啊?
级别: 新手上路
UID: 82901
精华: 0
发帖: 11
金钱: 55 两
威望: 11 点
综合积分: 22 分
注册时间: 2012-11-29
最后登录: 2014-04-11
1楼  发表于: 2014-04-10 17:48
有没有人知道为什么啊?给点意见,这个我是这么设的:
static struct spi_board_info spi1_board_info[] __initdata = {
    {
        .modalias = "spidev",
        .platform_data = NULL,
        .max_speed_hz = 32*1000*1000,
        .bus_num = 1,
        .chip_select = 0,
        .mode = SPI_MODE_0,
        .controller_data = &spi1_csi[0],
    }
};
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
2楼  发表于: 2014-04-10 18:12
你有试过在drivers/spi/spi-s3c64xx.c里搜索“max_speed_hz”和"speed_hz"吗?
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
级别: 新手上路
UID: 82901
精华: 0
发帖: 11
金钱: 55 两
威望: 11 点
综合积分: 22 分
注册时间: 2012-11-29
最后登录: 2014-04-11
3楼  发表于: 2014-04-11 11:11
搜了,我先在发现,时钟只能改小,不能改的,我改成500K是可以的,我要改成3M就不行了
级别: 新手上路
UID: 82901
精华: 0
发帖: 11
金钱: 55 两
威望: 11 点
综合积分: 22 分
注册时间: 2012-11-29
最后登录: 2014-04-11
4楼  发表于: 2014-04-11 11:37
我打印的max_speed_hz和speed_hz都是10M,可是实际测试时钟只有1.6M
级别: 新手上路
UID: 20854
精华: 0
发帖: 13
金钱: 65 两
威望: 13 点
综合积分: 26 分
注册时间: 2010-05-08
最后登录: 2014-08-13
5楼  发表于: 2014-07-15 14:15
最后是怎么解决的,我的也是一样的。
级别: 新手上路
UID: 99033
精华: 0
发帖: 5
金钱: 25 两
威望: 5 点
综合积分: 10 分
注册时间: 2013-12-16
最后登录: 2014-07-24
6楼  发表于: 2014-07-24 14:38
默认的时钟源经过分频后最大就只有1.5M,我这边自己尝试修改了下,    
exynos4_setup_clock(&s3c64xx_device_spi0.dev, "mdout_spi","mout_mpll_user", 176 * MHZ);
可以实现时钟频率设置为32M,但是不知道会不会引起其他问题,暂未深究~~~
级别: 新手上路
UID: 20854
精华: 0
发帖: 13
金钱: 65 两
威望: 13 点
综合积分: 26 分
注册时间: 2010-05-08
最后登录: 2014-08-13
7楼  发表于: 2014-08-13 09:19

 回 6楼(summer_dd) 的帖子

可否说的详细一点?多谢了
级别: 新手上路
UID: 107213
精华: 0
发帖: 14
金钱: 70 两
威望: 14 点
综合积分: 28 分
注册时间: 2014-08-18
最后登录: 2015-05-19
8楼  发表于: 2014-08-27 15:08
请问楼主,除了在   mach-tiny4412.c   添加相关的代码之外,是不是还需要在  driver/spi/    目录下自己再写某些C文件,还是只需要用该目录下的   s3c64xx.c   呢,新手,请多指教!
级别: 新手上路
UID: 109585
精华: 0
发帖: 10
金钱: 50 两
威望: 10 点
综合积分: 20 分
注册时间: 2014-10-30
最后登录: 2015-07-22
9楼  发表于: 2014-11-03 22:14
我也在用4412,可是不能写和读,LogCat显示Can't ioctl SPI_IOC_MEWSSAGE,想问下怎么回事,而且也没有设置主从模式的接口函数。