Changeset 2416
- Timestamp:
- 09/30/13 06:03:04 (10 years ago)
- Files:
-
- trunk/libffado/src/dice/dice_avdevice.cpp (modified) (3 diffs)
- trunk/libffado/src/dice/dice_avdevice.h (modified) (1 diff)
- trunk/libffado/src/motu/motu_avdevice.cpp (modified) (2 diffs)
- trunk/libffado/src/motu/motu_avdevice.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/libffado/src/dice/dice_avdevice.cpp
r2258 r2416 60 60 Device::Device( DeviceManager& d, std::auto_ptr<ConfigRom>( configRom )) 61 61 : FFADODevice( d, configRom ) 62 , m_rate_cache( -1 ) 62 63 , m_eap( NULL ) 63 64 , m_global_reg_offset (0xFFFFFFFFLU) … … 251 252 case DICE_RATE_NONE: samplingFrequency = 0; break; 252 253 default: samplingFrequency = 0; break; 254 } 255 256 if (samplingFrequency != m_rate_cache) { 257 if (m_rate_cache>0 && m_eap) 258 m_eap->update(); 259 m_rate_cache = samplingFrequency; 253 260 } 254 261 … … 423 430 424 431 if (m_eap) { 432 m_rate_cache = samplingFrequency; 425 433 m_eap->update(); 426 434 } trunk/libffado/src/dice/dice_avdevice.h
r2204 r2416 175 175 // EAP stuff 176 176 private: 177 int m_rate_cache; 177 178 EAP* m_eap; 178 179 protected: trunk/libffado/src/motu/motu_avdevice.cpp
r2372 r2416 2575 2575 } 2576 2576 2577 signed int 2578 MotuDevice::readBlock(fb_nodeaddr_t reg, quadlet_t *buf, signed int n_quads) { 2579 // 2580 // Read "n_quads" quadlets from the device starting at register "reg" into 2581 // the buffer pointed to by "buf". "buf" is assumed to have been 2582 // preallocated and be large enough for the requested data. 2583 // 2584 signed int i; 2585 2586 if (get1394Service().read(0xffc0 | getNodeId(), reg, n_quads, buf) <= 0) { 2587 debugError("Error doing motu block read of %d quadlets from register 0x%llx\n", n_quads, reg); 2588 return -1; 2589 } 2590 for (i=0; i<n_quads; i++) { 2591 buf[i] = CondSwapFromBus32(buf[i]); 2592 } 2593 return 0; 2594 } 2595 2577 2596 signed int MotuDevice::WriteRegister(fb_nodeaddr_t reg, quadlet_t data) { 2578 2597 /* … … 2599 2618 } 2600 2619 2601 } 2620 signed int 2621 MotuDevice::writeBlock(fb_nodeaddr_t reg, quadlet_t *data, signed int n_quads) { 2622 // 2623 // Write n_quads quadlets from "data" to the device register "reg". Note that 2624 // any necessary byte swapping is done in place, so the contents of "data" 2625 // may be altered by this function. 2626 // 2627 signed int ret = 0; 2628 signed int i; 2629 for (i=0; i<n_quads; i++) { 2630 data[i] = CondSwapToBus32(data[i]); 2631 } 2632 if (get1394Service().write(0xffc0 | getNodeId(), reg, n_quads, data) <= 0) { 2633 ret = -1; 2634 debugError("Error doing motu block write of %d quadlets to register 0x%llx\n", n_quads, reg); 2635 } 2636 return ret; 2637 } 2638 2639 } trunk/libffado/src/motu/motu_avdevice.h
r2368 r2416 461 461 public: 462 462 unsigned int ReadRegister(fb_nodeaddr_t reg); 463 signed int readBlock(fb_nodeaddr_t reg, quadlet_t *buf, signed int n_quads); 463 464 signed int WriteRegister(fb_nodeaddr_t reg, quadlet_t data); 465 signed int writeBlock(fb_nodeaddr_t reg, quadlet_t *data, signed int n_quads); 464 466 465 467 private: